<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:gco="http://www.isotc211.org/2005/gco" xmlns:gmx="http://www.isotc211.org/2005/gmx" targetNamespace="http://www.isotc211.org/2005/gmx" elementFormDefault="qualified" version="2012-07-13">
    <!-- ================================= Annotation ================================ -->
    <xs:annotation>
        <xs:documentation>Geographic Metadata XML (GMX) Schema is a component of the XML Schema Implementation of Geographic Information Metadata documented in ISO/TS 19139:2007. GMX includes all the definitions of http://www.isotc211.org/2005/gmx namespace. The root document of this namespace is the file gmx.xsd. This extendedTypes.xsd schema contains the XML definitions of FileName, Anchor and MimeFileType classes. These classes are fully described in 7.2 of ISO/TS 19139:2007.</xs:documentation>
    </xs:annotation>
    <!-- ================================== Imports ================================== -->
    <xs:import namespace="http://www.isotc211.org/2005/gco" schemaLocation="../gco/gco.xsd"/>
    <xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="../../../../w3/1999/xlink/xlink.xsd"/>
    <xs:include schemaLocation="gmx.xsd"/>
    <!-- ########################################################################### -->
    <!-- ########################################################################### -->
    <!-- ================================== Classes ================================= -->
    <!-- ======================== Handcrafted types =================================== -->
    <!-- ========================================================================== -->
    <!-- ====================== The FileName prototype ================================ -->
    <!--It is used to point to a source file and is substitutable for CharacterString-->
    <!--================= Type ==================-->
    <xs:complexType name="FileName_Type">
        <xs:simpleContent>
            <xs:extension base="xs:string">
                <xs:attribute name="src" type="xs:anyURI"/>
            </xs:extension>
        </xs:simpleContent>
    </xs:complexType>
    <!-- ........................................................................ -->
    <xs:element name="FileName" type="gmx:FileName_Type" substitutionGroup="gco:CharacterString"/>
    <!-- ........................................................................ -->
    <xs:complexType name="FileName_PropertyType">
        <xs:sequence minOccurs="0">
            <xs:element ref="gmx:FileName"/>
        </xs:sequence>
        <xs:attribute ref="gco:nilReason"/>
    </xs:complexType>
    <!-- ========================================================================== -->
    <!-- ====================== The MimeFileType prototype ============================= -->
    <!--It is used to provide information on file types and is substitutable for CharacterString-->
    <!--================= Type ==================-->
    <xs:complexType name="MimeFileType_Type">
        <xs:simpleContent>
            <xs:extension base="xs:string">
                <xs:attribute name="type" type="xs:string" use="required"/>
            </xs:extension>
        </xs:simpleContent>
    </xs:complexType>
    <!-- ........................................................................ -->
    <xs:element name="MimeFileType" type="gmx:MimeFileType_Type" substitutionGroup="gco:CharacterString"/>
    <!-- ........................................................................ -->
    <xs:complexType name="MimeFileType_PropertyType">
        <xs:sequence minOccurs="0">
            <xs:element ref="gmx:MimeFileType"/>
        </xs:sequence>
        <xs:attribute ref="gco:nilReason"/>
    </xs:complexType>
    <!-- ========================================================================== -->
    <!-- ======================= The Anchor prototype ================================ -->
    <!--It is used to point to a registred definition-->
    <!--================= Type ==================-->
    <xs:complexType name="Anchor_Type">
        <xs:simpleContent>
            <xs:extension base="xs:string">
                <xs:attributeGroup ref="xlink:simpleAttrs"/>
            </xs:extension>
        </xs:simpleContent>
    </xs:complexType>
    <!-- ........................................................................ -->
    <xs:element name="Anchor" type="gmx:Anchor_Type" substitutionGroup="gco:CharacterString"/>
    <!-- ........................................................................ -->
    <xs:complexType name="Anchor_PropertyType">
        <xs:sequence minOccurs="0">
            <xs:element ref="gmx:Anchor"/>
        </xs:sequence>
        <xs:attribute ref="gco:nilReason"/>
    </xs:complexType>
    <!--======= End of Schema ======-->
</xs:schema>
