<?xml version="1.0" encoding="UTF-8"?>
<xs:schema 
    xmlns:xs="http://www.w3.org/2001/XMLSchema" 
    xmlns:overheid="http://standaarden.overheid.nl/owms/terms/"> 
   
    <!-- File: overheid-schemes.xsd
          Function: this XML-scheme declares all encoding schemes that are used to define range for properties that are part of the metadata standard 
          for Dutch government information: the Overheid.nl Web Metadata Standaard (OWMS).
          More information: see standaarden.overheid.nl. 
         Changes: 2013-06-24 version 3.5.2
            Added  <xs:enumeration value="overheid:Dienst"/> -->

    <xs:include schemaLocation="owms-types.xsd"/>

    <!-- Datatypes om de juiste subklasse/cv (type) aan te geven van de waarde in de content. 
        Waarde uit content moet voorkomen in respectieve cv. Te testen met Schematron. -->

    <xs:simpleType name="OverheidAgentScheme">
        <xs:restriction base="xs:QName">
            <xs:enumeration value="overheid:Adviescollege"/>
            <xs:enumeration value="overheid:Deelgemeente"/>
            <xs:enumeration value="overheid:EersteOfTweedeKamer"/>
            <xs:enumeration value="overheid:Dienst"/>
            <xs:enumeration value="overheid:DienstAgentschapInstellingOfProject"/>
            <xs:enumeration value="overheid:Gemeente"/>
            <xs:enumeration value="overheid:HoogCollegeVanStaat"/>
            <xs:enumeration value="overheid:Koepelorganisatie"/>
            <xs:enumeration value="overheid:KoninklijkHuis"/>
            <xs:enumeration value="overheid:Ministerie"/>
            <xs:enumeration value="overheid:OpenbaarLichaamVoorBedrijfEnBeroep"/>
            <xs:enumeration value="overheid:Politiekorps"/>
            <xs:enumeration value="overheid:Provincie"/>
            <xs:enumeration value="overheid:RechterlijkeMacht"/>
            <xs:enumeration value="overheid:Regering"/>
            <xs:enumeration value="overheid:RegionaalSamenwerkingsorgaan"/>
            <xs:enumeration value="overheid:Waterschap"/>
            <xs:enumeration value="overheid:ZelfstandigBestuursorgaan"/>
        </xs:restriction>
    </xs:simpleType>
    <xs:simpleType name="AgentScheme">
        <xs:union memberTypes="OverheidAgentScheme">
            <xs:simpleType>
                <xs:restriction base="SchemeName"/>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>
    
    <xs:simpleType name="OverheidAgentClassScheme">
        <xs:restriction base="xs:QName">
            <xs:enumeration value="overheid:Doelgroep"/>
        </xs:restriction>
    </xs:simpleType>
    <xs:simpleType name="AgentClassScheme">
        <xs:union memberTypes="OverheidAgentClassScheme">
            <xs:simpleType>
                <xs:restriction base="SchemeName"/>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>
   
    <xs:simpleType name="OverheidLocationScheme">
        <xs:restriction base="xs:QName">
            <xs:enumeration value="overheid:PostcodeHuisnummer"/>
            <xs:enumeration value="overheid:Gemeente"/>
            <xs:enumeration value="overheid:Provincie"/>
            <xs:enumeration value="overheid:Waterschap"/>
        </xs:restriction>
    </xs:simpleType>
    <xs:simpleType name="LocationScheme">
        <xs:union memberTypes="OverheidLocationScheme">
            <xs:simpleType>
                <xs:restriction base="SchemeName"/>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>
    
    <xs:simpleType name="OverheidBestuursOrgaanScheme">
        <xs:restriction base="xs:QName">
            <xs:enumeration value="overheid:BestuursorgaanDeelgemeente"/>
            <xs:enumeration value="overheid:BestuursorgaanGemeente"/>
            <xs:enumeration value="overheid:BestuursorgaanMinisterie"/>
            <xs:enumeration value="overheid:BestuursorgaanProvincie"/>
            <xs:enumeration value="overheid:BestuursorgaanRegionaalSamenwerkingsorgaan"/>
            <xs:enumeration value="overheid:BestuursorgaanWaterschap"/>
        </xs:restriction>
    </xs:simpleType>
    <xs:simpleType name="BeslissendOrgaanScheme">
        <xs:union memberTypes="OverheidBestuursOrgaanScheme">
            <xs:simpleType>
                <xs:restriction base="SchemeName"/>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="OverheidInformationTypeScheme">
        <xs:restriction base="xs:QName">
            <xs:enumeration value="overheid:Informatietype"/>
        </xs:restriction>
    </xs:simpleType>
    <xs:simpleType name="InformationTypeScheme">
        <xs:union memberTypes="OverheidInformationTypeScheme">
            <xs:simpleType>
                <xs:restriction base="SchemeName"/>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

</xs:schema>
