<?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:gmx="http://www.isotc211.org/2005/gmx" xmlns:xlink="http://www.w3.org/1999/xlink" targetNamespace="http://www.isotc211.org/2005/gmx" elementFormDefault="qualified" version="0.1" finalDefault="" blockDefault="" attributeFormDefault="unqualified">
    <xs:annotation>
        <xs:documentation>This file was generated from ISO TC/211 UML class diagrams == 04-27-2005 17:16:11 ====== Handcrafted</xs:documentation>
    </xs:annotation>
    <xs:import namespace="http://www.isotc211.org/2005/gmd" schemaLocation="../gmd/gmd.xsd"/>
    <xs:import namespace="http://www.isotc211.org/2005/gco" schemaLocation="../gco/gco.xsd"/>
    <xs:include schemaLocation="../gmx/uomItem.xsd"/>
    <xs:include schemaLocation="../gmx/codelistItem.xsd"/>
    <xs:include schemaLocation="../gmx/crsItem.xsd"/>
    <xs:complexType name="AbstractCT_Catalogue_Type" abstract="true" mixed="false">
        <xs:complexContent>
            <xs:extension base="gco:AbstractObject_Type">
                <xs:sequence minOccurs="1" maxOccurs="1">
                    <xs:element name="name" type="gco:CharacterString_PropertyType" minOccurs="1" maxOccurs="1" nillable="false"/>
                    <xs:element name="scope" type="gco:CharacterString_PropertyType" maxOccurs="unbounded" minOccurs="1" nillable="false"/>
                    <xs:element name="fieldOfApplication" type="gco:CharacterString_PropertyType" minOccurs="0" maxOccurs="unbounded" nillable="false"/>
                    <xs:element name="versionNumber" type="gco:CharacterString_PropertyType" minOccurs="1" maxOccurs="1" nillable="false"/>
                    <xs:element name="versionDate" type="gco:Date_PropertyType" minOccurs="1" maxOccurs="1" nillable="false"/>
                    <xs:element name="language" type="gco:CharacterString_PropertyType" minOccurs="0" maxOccurs="1" nillable="false"/>
                    <xs:element name="characterSet" type="gmd:MD_CharacterSetCode_PropertyType" minOccurs="0" maxOccurs="1" nillable="false"/>
                    <xs:element name="locale" type="gmd:PT_Locale_PropertyType" minOccurs="0" maxOccurs="unbounded" nillable="false"/>
                </xs:sequence>
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>
    <xs:element name="AbstractCT_Catalogue" type="gmx:AbstractCT_Catalogue_Type" abstract="true" nillable="false"/>
    <xs:complexType name="CT_Catalogue_PropertyType" mixed="false" abstract="false">
        <xs:sequence minOccurs="1" maxOccurs="1">
            <xs:element ref="gmx:AbstractCT_Catalogue" 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="CT_CodelistCatalogue_Type" mixed="false" abstract="false">
        <xs:complexContent>
            <xs:extension base="gmx:AbstractCT_Catalogue_Type">
                <xs:sequence minOccurs="1" maxOccurs="1">
                    <xs:element name="codelistItem" type="gmx:CT_Codelist_PropertyType" maxOccurs="unbounded" minOccurs="1" nillable="false"/>
                </xs:sequence>
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>
    <xs:element name="CT_CodelistCatalogue" type="gmx:CT_CodelistCatalogue_Type" substitutionGroup="gmx:AbstractCT_Catalogue" nillable="false" abstract="false"/>
    <xs:complexType name="CT_CodelistCatalogue_PropertyType" mixed="false" abstract="false">
        <xs:sequence minOccurs="1" maxOccurs="1">
            <xs:element ref="gmx:CT_CodelistCatalogue" 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="CT_CrsCatalogue_Type" mixed="false" abstract="false">
        <xs:complexContent>
            <xs:extension base="gmx:AbstractCT_Catalogue_Type">
                <xs:sequence minOccurs="1" maxOccurs="1">
                    <xs:element name="crs" type="gmx:CT_CRS_PropertyType" maxOccurs="unbounded" minOccurs="1" nillable="false"/>
                    <xs:element name="coordinateSystem" type="gmx:CT_CoordinateSystem_PropertyType" minOccurs="0" maxOccurs="unbounded" nillable="false"/>
                    <xs:element name="axis" type="gmx:CT_CoordinateSystemAxis_PropertyType" minOccurs="0" maxOccurs="unbounded" nillable="false"/>
                    <xs:element name="datum" type="gmx:CT_Datum_PropertyType" minOccurs="0" maxOccurs="unbounded" nillable="false"/>
                    <xs:element name="ellipsoid" type="gmx:CT_Ellipsoid_PropertyType" minOccurs="0" maxOccurs="unbounded" nillable="false"/>
                    <xs:element name="primeMeridian" type="gmx:CT_PrimeMeridian_PropertyType" minOccurs="0" maxOccurs="unbounded" nillable="false"/>
                    <xs:element name="operation" type="gmx:CT_Operation_PropertyType" minOccurs="0" maxOccurs="unbounded" nillable="false"/>
                    <xs:element name="operationMethod" type="gmx:CT_OperationMethod_PropertyType" minOccurs="0" maxOccurs="unbounded" nillable="false"/>
                    <xs:element name="parameters" type="gmx:CT_OperationParameters_PropertyType" minOccurs="0" maxOccurs="unbounded" nillable="false"/>
                </xs:sequence>
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>
    <xs:element name="CT_CrsCatalogue" type="gmx:CT_CrsCatalogue_Type" substitutionGroup="gmx:AbstractCT_Catalogue" nillable="false" abstract="false"/>
    <xs:complexType name="CT_CrsCatalogue_PropertyType" mixed="false" abstract="false">
        <xs:sequence minOccurs="1" maxOccurs="1">
            <xs:element ref="gmx:CT_CrsCatalogue" 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="CT_UomCatalogue_Type" mixed="false" abstract="false">
        <xs:complexContent>
            <xs:extension base="gmx:AbstractCT_Catalogue_Type">
                <xs:sequence minOccurs="1" maxOccurs="1">
                    <xs:element name="uomItem" type="gmx:UnitDefinition_PropertyType" maxOccurs="unbounded" minOccurs="1" nillable="false"/>
                </xs:sequence>
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>
    <xs:element name="CT_UomCatalogue" type="gmx:CT_UomCatalogue_Type" substitutionGroup="gmx:AbstractCT_Catalogue" nillable="false" abstract="false"/>
    <xs:complexType name="CT_UomCatalogue_PropertyType" mixed="false" abstract="false">
        <xs:sequence minOccurs="1" maxOccurs="1">
            <xs:element ref="gmx:CT_UomCatalogue" minOccurs="0" maxOccurs="1" nillable="false"/>
        </xs:sequence>
        <xs:attributeGroup ref="gco:ObjectReference"/>
        <xs:attribute ref="gco:nilReason" use="optional"/>
    </xs:complexType>
</xs:schema>