<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:gmd="http://www.isotc211.org/2005/gmd" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:gco="http://www.isotc211.org/2005/gco" xmlns:xlink="http://www.w3.org/1999/xlink" targetNamespace="http://www.isotc211.org/2005/gmd" elementFormDefault="qualified" version="0.1" finalDefault="" blockDefault="" attributeFormDefault="unqualified">
    <xs:annotation>
        <xs:documentation>This file was generated from ISO TC/211 UML class diagrams == 01-26-2005 12:40:04 ======</xs:documentation>
    </xs:annotation>
    <xs:import namespace="http://www.isotc211.org/2005/gco" schemaLocation="../gco/gco.xsd"/>
    <xs:include schemaLocation="../gmd/referenceSystem.xsd"/>
    <xs:complexType name="CI_ResponsibleParty_Type" mixed="false" abstract="false">
        <xs:annotation>
            <xs:documentation>Identification of, and means of communication with, person(s) and organisations associated with the dataset</xs:documentation>
        </xs:annotation>
        <xs:complexContent>
            <xs:extension base="gco:AbstractObject_Type">
                <xs:sequence minOccurs="1" maxOccurs="1">
                    <xs:element name="individualName" type="gco:CharacterString_PropertyType" minOccurs="0" maxOccurs="1" nillable="false"/>
                    <xs:element name="organisationName" type="gco:CharacterString_PropertyType" minOccurs="0" maxOccurs="1" nillable="false"/>
                    <xs:element name="positionName" type="gco:CharacterString_PropertyType" minOccurs="0" maxOccurs="1" nillable="false"/>
                    <xs:element name="contactInfo" type="gmd:CI_Contact_PropertyType" minOccurs="0" maxOccurs="1" nillable="false"/>
                    <xs:element name="role" type="gmd:CI_RoleCode_PropertyType" minOccurs="1" maxOccurs="1" nillable="false"/>
                </xs:sequence>
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>
    <xs:element name="CI_ResponsibleParty" type="gmd:CI_ResponsibleParty_Type" nillable="false" abstract="false"/>
    <xs:complexType name="CI_ResponsibleParty_PropertyType" mixed="false" abstract="false">
        <xs:sequence minOccurs="1" maxOccurs="1">
            <xs:element ref="gmd:CI_ResponsibleParty" minOccurs="0" maxOccurs="1" nillable="false"/>
        </xs:sequence>
        <xs:attributeGroup ref="gco:ObjectReference"/>
        <xs:attribute ref="gco:nilReason" use="optional"/>
    </xs:complexType>
    <xs:complexType name="CI_Citation_Type" mixed="false" abstract="false">
        <xs:annotation>
            <xs:documentation>Standardized resource reference</xs:documentation>
        </xs:annotation>
        <xs:complexContent>
            <xs:extension base="gco:AbstractObject_Type">
                <xs:sequence minOccurs="1" maxOccurs="1">
                    <xs:element name="title" type="gco:CharacterString_PropertyType" minOccurs="1" maxOccurs="1" nillable="false"/>
                    <xs:element name="alternateTitle" type="gco:CharacterString_PropertyType" minOccurs="0" maxOccurs="unbounded" nillable="false"/>
                    <xs:element name="date" type="gmd:CI_Date_PropertyType" maxOccurs="unbounded" minOccurs="1" nillable="false"/>
                    <xs:element name="edition" type="gco:CharacterString_PropertyType" minOccurs="0" maxOccurs="1" nillable="false"/>
                    <xs:element name="editionDate" type="gco:Date_PropertyType" minOccurs="0" maxOccurs="1" nillable="false"/>
                    <xs:element name="identifier" type="gmd:MD_Identifier_PropertyType" minOccurs="0" maxOccurs="unbounded" nillable="false"/>
                    <xs:element name="citedResponsibleParty" type="gmd:CI_ResponsibleParty_PropertyType" minOccurs="0" maxOccurs="unbounded" nillable="false"/>
                    <xs:element name="presentationForm" type="gmd:CI_PresentationFormCode_PropertyType" minOccurs="0" maxOccurs="unbounded" nillable="false"/>
                    <xs:element name="series" type="gmd:CI_Series_PropertyType" minOccurs="0" maxOccurs="1" nillable="false"/>
                    <xs:element name="otherCitationDetails" type="gco:CharacterString_PropertyType" minOccurs="0" maxOccurs="1" nillable="false"/>
                    <xs:element name="collectiveTitle" type="gco:CharacterString_PropertyType" minOccurs="0" maxOccurs="1" nillable="false"/>
                    <xs:element name="ISBN" type="gco:CharacterString_PropertyType" minOccurs="0" maxOccurs="1" nillable="false"/>
                    <xs:element name="ISSN" type="gco:CharacterString_PropertyType" minOccurs="0" maxOccurs="1" nillable="false"/>
                </xs:sequence>
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>
    <xs:element name="CI_Citation" type="gmd:CI_Citation_Type" nillable="false" abstract="false"/>
    <xs:complexType name="CI_Citation_PropertyType" mixed="false" abstract="false">
        <xs:sequence minOccurs="1" maxOccurs="1">
            <xs:element ref="gmd:CI_Citation" minOccurs="0" maxOccurs="1" nillable="false"/>
        </xs:sequence>
        <xs:attributeGroup ref="gco:ObjectReference"/>
        <xs:attribute ref="gco:nilReason" use="optional"/>
    </xs:complexType>
    <xs:complexType name="CI_Address_Type" mixed="false" abstract="false">
        <xs:annotation>
            <xs:documentation>Location of the responsible individual or organisation</xs:documentation>
        </xs:annotation>
        <xs:complexContent>
            <xs:extension base="gco:AbstractObject_Type">
                <xs:sequence minOccurs="1" maxOccurs="1">
                    <xs:element name="deliveryPoint" type="gco:CharacterString_PropertyType" minOccurs="0" maxOccurs="unbounded" nillable="false"/>
                    <xs:element name="city" type="gco:CharacterString_PropertyType" minOccurs="0" maxOccurs="1" nillable="false"/>
                    <xs:element name="administrativeArea" type="gco:CharacterString_PropertyType" minOccurs="0" maxOccurs="1" nillable="false"/>
                    <xs:element name="postalCode" type="gco:CharacterString_PropertyType" minOccurs="0" maxOccurs="1" nillable="false"/>
                    <xs:element name="country" type="gco:CharacterString_PropertyType" minOccurs="0" maxOccurs="1" nillable="false"/>
                    <xs:element name="electronicMailAddress" type="gco:CharacterString_PropertyType" minOccurs="0" maxOccurs="unbounded" nillable="false"/>
                </xs:sequence>
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>
    <xs:element name="CI_Address" type="gmd:CI_Address_Type" nillable="false" abstract="false"/>
    <xs:complexType name="CI_Address_PropertyType" mixed="false" abstract="false">
        <xs:sequence minOccurs="1" maxOccurs="1">
            <xs:element ref="gmd:CI_Address" minOccurs="0" maxOccurs="1" nillable="false"/>
        </xs:sequence>
        <xs:attributeGroup ref="gco:ObjectReference"/>
        <xs:attribute ref="gco:nilReason" use="optional"/>
    </xs:complexType>
    <xs:complexType name="CI_OnlineResource_Type" mixed="false" abstract="false">
        <xs:annotation>
            <xs:documentation>Information about online sources from which the dataset, specification, or community profile name and extended metadata elements can be obtained.</xs:documentation>
        </xs:annotation>
        <xs:complexContent>
            <xs:extension base="gco:AbstractObject_Type">
                <xs:sequence minOccurs="1" maxOccurs="1">
                    <xs:element name="linkage" type="gmd:URL_PropertyType" minOccurs="1" maxOccurs="1" nillable="false"/>
                    <xs:element name="protocol" type="gco:CharacterString_PropertyType" minOccurs="0" maxOccurs="1" nillable="false"/>
                    <xs:element name="applicationProfile" type="gco:CharacterString_PropertyType" minOccurs="0" maxOccurs="1" nillable="false"/>
                    <xs:element name="name" type="gco:CharacterString_PropertyType" minOccurs="0" maxOccurs="1" nillable="false"/>
                    <xs:element name="description" type="gco:CharacterString_PropertyType" minOccurs="0" maxOccurs="1" nillable="false"/>
                    <xs:element name="function" type="gmd:CI_OnLineFunctionCode_PropertyType" minOccurs="0" maxOccurs="1" nillable="false"/>
                </xs:sequence>
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>
    <xs:element name="CI_OnlineResource" type="gmd:CI_OnlineResource_Type" nillable="false" abstract="false"/>
    <xs:complexType name="CI_OnlineResource_PropertyType" mixed="false" abstract="false">
        <xs:sequence minOccurs="1" maxOccurs="1">
            <xs:element ref="gmd:CI_OnlineResource" minOccurs="0" maxOccurs="1" nillable="false"/>
        </xs:sequence>
        <xs:attributeGroup ref="gco:ObjectReference"/>
        <xs:attribute ref="gco:nilReason" use="optional"/>
    </xs:complexType>
    <xs:complexType name="CI_Contact_Type" mixed="false" abstract="false">
        <xs:annotation>
            <xs:documentation>Information required enabling contact with the  responsible person and/or organisation</xs:documentation>
        </xs:annotation>
        <xs:complexContent>
            <xs:extension base="gco:AbstractObject_Type">
                <xs:sequence minOccurs="1" maxOccurs="1">
                    <xs:element name="phone" type="gmd:CI_Telephone_PropertyType" minOccurs="0" maxOccurs="1" nillable="false"/>
                    <xs:element name="address" type="gmd:CI_Address_PropertyType" minOccurs="0" maxOccurs="1" nillable="false"/>
                    <xs:element name="onlineResource" type="gmd:CI_OnlineResource_PropertyType" minOccurs="0" maxOccurs="1" nillable="false"/>
                    <xs:element name="hoursOfService" type="gco:CharacterString_PropertyType" minOccurs="0" maxOccurs="1" nillable="false"/>
                    <xs:element name="contactInstructions" type="gco:CharacterString_PropertyType" minOccurs="0" maxOccurs="1" nillable="false"/>
                </xs:sequence>
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>
    <xs:element name="CI_Contact" type="gmd:CI_Contact_Type" nillable="false" abstract="false"/>
    <xs:complexType name="CI_Contact_PropertyType" mixed="false" abstract="false">
        <xs:sequence minOccurs="1" maxOccurs="1">
            <xs:element ref="gmd:CI_Contact" minOccurs="0" maxOccurs="1" nillable="false"/>
        </xs:sequence>
        <xs:attributeGroup ref="gco:ObjectReference"/>
        <xs:attribute ref="gco:nilReason" use="optional"/>
    </xs:complexType>
    <xs:complexType name="CI_Telephone_Type" mixed="false" abstract="false">
        <xs:annotation>
            <xs:documentation>Telephone numbers for contacting the responsible individual or organisation</xs:documentation>
        </xs:annotation>
        <xs:complexContent>
            <xs:extension base="gco:AbstractObject_Type">
                <xs:sequence minOccurs="1" maxOccurs="1">
                    <xs:element name="voice" type="gco:CharacterString_PropertyType" minOccurs="0" maxOccurs="unbounded" nillable="false"/>
                    <xs:element name="facsimile" type="gco:CharacterString_PropertyType" minOccurs="0" maxOccurs="unbounded" nillable="false"/>
                </xs:sequence>
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>
    <xs:element name="CI_Telephone" type="gmd:CI_Telephone_Type" nillable="false" abstract="false"/>
    <xs:complexType name="CI_Telephone_PropertyType" mixed="false" abstract="false">
        <xs:sequence minOccurs="1" maxOccurs="1">
            <xs:element ref="gmd:CI_Telephone" minOccurs="0" maxOccurs="1" nillable="false"/>
        </xs:sequence>
        <xs:attributeGroup ref="gco:ObjectReference"/>
        <xs:attribute ref="gco:nilReason" use="optional"/>
    </xs:complexType>
    <xs:complexType name="CI_Date_Type" mixed="false" abstract="false">
        <xs:complexContent>
            <xs:extension base="gco:AbstractObject_Type">
                <xs:sequence minOccurs="1" maxOccurs="1">
                    <xs:element name="date" type="gco:Date_PropertyType" minOccurs="1" maxOccurs="1" nillable="false"/>
                    <xs:element name="dateType" type="gmd:CI_DateTypeCode_PropertyType" minOccurs="1" maxOccurs="1" nillable="false"/>
                </xs:sequence>
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>
    <xs:element name="CI_Date" type="gmd:CI_Date_Type" nillable="false" abstract="false"/>
    <xs:complexType name="CI_Date_PropertyType" mixed="false" abstract="false">
        <xs:sequence minOccurs="1" maxOccurs="1">
            <xs:element ref="gmd:CI_Date" minOccurs="0" maxOccurs="1" nillable="false"/>
        </xs:sequence>
        <xs:attributeGroup ref="gco:ObjectReference"/>
        <xs:attribute ref="gco:nilReason" use="optional"/>
    </xs:complexType>
    <xs:complexType name="CI_Series_Type" mixed="false" abstract="false">
        <xs:complexContent>
            <xs:extension base="gco:AbstractObject_Type">
                <xs:sequence minOccurs="1" maxOccurs="1">
                    <xs:element name="name" type="gco:CharacterString_PropertyType" minOccurs="0" maxOccurs="1" nillable="false"/>
                    <xs:element name="issueIdentification" type="gco:CharacterString_PropertyType" minOccurs="0" maxOccurs="1" nillable="false"/>
                    <xs:element name="page" type="gco:CharacterString_PropertyType" minOccurs="0" maxOccurs="1" nillable="false"/>
                </xs:sequence>
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>
    <xs:element name="CI_Series" type="gmd:CI_Series_Type" nillable="false" abstract="false"/>
    <xs:complexType name="CI_Series_PropertyType" mixed="false" abstract="false">
        <xs:sequence minOccurs="1" maxOccurs="1">
            <xs:element ref="gmd:CI_Series" minOccurs="0" maxOccurs="1" nillable="false"/>
        </xs:sequence>
        <xs:attributeGroup ref="gco:ObjectReference"/>
        <xs:attribute ref="gco:nilReason" use="optional"/>
    </xs:complexType>
    <xs:element name="URL" type="xs:anyURI" nillable="false" abstract="false"/>
    <xs:complexType name="URL_PropertyType" mixed="false" abstract="false">
        <xs:sequence minOccurs="1" maxOccurs="1">
            <xs:element ref="gmd:URL" minOccurs="0" maxOccurs="1" nillable="false"/>
        </xs:sequence>
        <xs:attribute ref="gco:nilReason" use="optional"/>
    </xs:complexType>
    <xs:element name="CI_RoleCode" type="gco:CodeListValue_Type" substitutionGroup="gco:CharacterString" nillable="false" abstract="false"/>
    <xs:complexType name="CI_RoleCode_PropertyType" mixed="false" abstract="false">
        <xs:sequence minOccurs="1" maxOccurs="1">
            <xs:element ref="gmd:CI_RoleCode" minOccurs="0" maxOccurs="1" nillable="false"/>
        </xs:sequence>
        <xs:attribute ref="gco:nilReason" use="optional"/>
    </xs:complexType>
    <xs:element name="CI_PresentationFormCode" type="gco:CodeListValue_Type" substitutionGroup="gco:CharacterString" nillable="false" abstract="false"/>
    <xs:complexType name="CI_PresentationFormCode_PropertyType" mixed="false" abstract="false">
        <xs:sequence minOccurs="1" maxOccurs="1">
            <xs:element ref="gmd:CI_PresentationFormCode" minOccurs="0" maxOccurs="1" nillable="false"/>
        </xs:sequence>
        <xs:attribute ref="gco:nilReason" use="optional"/>
    </xs:complexType>
    <xs:element name="CI_OnLineFunctionCode" type="gco:CodeListValue_Type" substitutionGroup="gco:CharacterString" nillable="false" abstract="false"/>
    <xs:complexType name="CI_OnLineFunctionCode_PropertyType" mixed="false" abstract="false">
        <xs:sequence minOccurs="1" maxOccurs="1">
            <xs:element ref="gmd:CI_OnLineFunctionCode" minOccurs="0" maxOccurs="1" nillable="false"/>
        </xs:sequence>
        <xs:attribute ref="gco:nilReason" use="optional"/>
    </xs:complexType>
    <xs:element name="CI_DateTypeCode" type="gco:CodeListValue_Type" substitutionGroup="gco:CharacterString" nillable="false" abstract="false"/>
    <xs:complexType name="CI_DateTypeCode_PropertyType" mixed="false" abstract="false">
        <xs:sequence minOccurs="1" maxOccurs="1">
            <xs:element ref="gmd:CI_DateTypeCode" minOccurs="0" maxOccurs="1" nillable="false"/>
        </xs:sequence>
        <xs:attribute ref="gco:nilReason" use="optional"/>
    </xs:complexType>
</xs:schema>