<?xml version="1.0" encoding="UTF-8"?>
<schema xmlns="http://www.w3.org/2001/XMLSchema" 
    targetNamespace="http://wis.wmo.int/2006/metadata" version="1.0"
    xmlns:wmo="http://wis.wmo.int/2006/metadata"
    xmlns:gmd="http://www.isotc211.org/2005/gmd"
    xmlns:gco="http://www.isotc211.org/2005/gco"
    xmlns:gts="http://www.isotc211.org/2005/gts"
    elementFormDefault="qualified">
    <import namespace="http://www.isotc211.org/2005/gco" schemaLocation="http://www.isotc211.org/2005/gco/gco.xsd"/>
    <import namespace="http://www.isotc211.org/2005/gts" schemaLocation="http://www.isotc211.org/2005/gts/gts.xsd"/>
    <import namespace="http://www.isotc211.org/2005/gmd" schemaLocation="http://www.isotc211.org/2005/gmd/identification.xsd"/>
    <import namespace="http://www.isotc211.org/2005/gmd" schemaLocation="http://www.isotc211.org/2005/gmd/constraints.xsd"/>
    <annotation>
        <documentation>
            Describes the WMO Core Metadata Profile. The primary purpose for this
            metadata profile is to support the DISCOVERY of information resources (datasets)
        </documentation>
    </annotation>
 
    <!-- WMO_DelimitedString -->
    <element name="WMO_DelimitedString" substitutionGroup="gco:CharacterString" type="wmo:WMO_DelimitedString_Type"/>
    <!-- ........................................................................  -->
    <complexType name="WMO_DelimitedString_Type">
        <annotation>
            <documentation>
                WMO_DelimitedString enables a keyword from a hierarchical taxonomy - such
                as NASA's GCMD Science Keywords [http://gcmd.nasa.gov/Resources/valids//gcmd_parameters.html] - to be expressed. 
                The delimiter (token) [default value = "|"] is inserted between 'levels' in the hierarchy.
            </documentation>
        </annotation>
        <simpleContent>
            <extension base="string">
                <attribute name="delimiter" type="token" default="|"/>
                <attribute name="isoType" type="string" use="required" fixed="CharacterString"/>
            </extension>
        </simpleContent>
    </complexType>
    <!-- ........................................................................  -->
    <complexType name="WMO_DelimitedString_PropertyType">
        <sequence>
            <element ref="wmo:WMO_DelimitedString" minOccurs="0"/>
        </sequence>
        <attribute ref="gco:nilReason"/>
    </complexType>
    <!-- ........................................................................  -->
    
    <!-- WMO_SimulationDataIdentification -->
    <element name="WMO_SimulationDataIdentification" substitutionGroup="gmd:MD_DataIdentification" type="wmo:WMO_SimulationDataIdentification_Type"/>
    <!-- ........................................................................  -->
    <complexType name="WMO_SimulationDataIdentification_Type">
        <annotation>
            <documentation>
                Allows differentiation between datasets from numerical simulations based
                on the analysis time of each simulation.
            </documentation>
        </annotation>
        <complexContent>
            <extension base="gmd:MD_DataIdentification_Type">
                <sequence>
                    <element name="analysisTime" type="gco:DateTime_PropertyType"/>
                </sequence>
                <attribute name="isoType" type="string" use="required" fixed="MD_DataIdentification"/>
            </extension>
        </complexContent>
    </complexType>
    <!-- ........................................................................  -->
    <complexType name="WMO_SimulationDataIdentification_PropertyType">
        <sequence>
            <element ref="wmo:WMO_SimulationDataIdentification" minOccurs="0"/>
        </sequence>
        <attributeGroup ref="gco:ObjectReference"/>
        <attribute ref="gco:nilReason"/>
    </complexType>
    <!-- ........................................................................  -->
    
    <!-- WMO_UsagePeriodConstraints -->
    <element name="WMO_UsagePeriodConstraints" substitutionGroup="gmd:MD_Constraints" type="wmo:WMO_UsagePeriodConstraints_Type"/>
    <!-- ........................................................................  -->
    <complexType name="WMO_UsagePeriodConstraints_Type">
        <annotation>
            <documentation>
                This extension enables one to specify the time period during which the
                dataset is valid. Outside this time period, the dataset must not be used for
                operational purposes. 
            </documentation>
        </annotation>
        <complexContent>
            <extension base="gmd:MD_Constraints_Type">
                <sequence>
                    <element name="validTime" type="gts:TM_Primitive_PropertyType"/>
                </sequence>
                <attribute name="isoType" type="string" use="required" fixed="MD_Constraints"/>
            </extension>
        </complexContent>
    </complexType>
    <!-- ........................................................................  -->
    <complexType name="WMO_UsagePeriodConstraints_PropertyType">
        <sequence minOccurs="0">
            <element ref="wmo:WMO_UsagePeriodConstraints"/>
        </sequence>
        <attributeGroup ref="gco:ObjectReference"/>
        <attribute ref="gco:nilReason"/>
    </complexType>
    <!-- ........................................................................  -->
    
</schema>

