<?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:gmd="http://www.isotc211.org/2005/gmd" targetNamespace="http://www.isotc211.org/2005/gmd" elementFormDefault="qualified" version="2012-07-13">
	<!-- ================================= Annotation ================================ -->
	<xs:annotation>
		<xs:documentation>Geographic MetaData (GMD) extensible markup language is a component of the XML Schema Implementation of Geographic Information Metadata documented in ISO/TS 19139:2007. GMD includes all the definitions of http://www.isotc211.org/2005/gmd namespace. The root document of this namespace is the file gmd.xsd. This identification.xsd schema implements the UML conceptual schema defined in A.2.2 of ISO 19115:2003. It contains the implementation of the following classes: MD_Identification, MD_BrowseGraphic, MD_DataIdentification, MD_ServiceIdentification, MD_RepresentativeFraction, MD_Usage, MD_Keywords, DS_Association, MD_AggregateInformation, MD_CharacterSetCode, MD_SpatialRepresentationTypeCode, MD_TopicCategoryCode, MD_ProgressCode, MD_KeywordTypeCode, DS_AssociationTypeCode, DS_InitiativeTypeCode, MD_ResolutionType.</xs:documentation>
	</xs:annotation>
	<!-- ================================== Imports ================================== -->
	<xs:import namespace="http://www.isotc211.org/2005/gco" schemaLocation="../gco/gco.xsd"/>
	<xs:include schemaLocation="gmd.xsd"/>
	<xs:include schemaLocation="constraints.xsd"/>
	<xs:include schemaLocation="distribution.xsd"/>
	<xs:include schemaLocation="maintenance.xsd"/>
	<!-- ########################################################################### -->
	<!-- ########################################################################### -->
	<!-- ================================== Classes ================================= -->
	<xs:complexType name="AbstractMD_Identification_Type" abstract="true">
		<xs:annotation>
			<xs:documentation>Basic information about data</xs:documentation>
		</xs:annotation>
		<xs:complexContent>
			<xs:extension base="gco:AbstractObject_Type">
				<xs:sequence>
					<xs:element name="citation" type="gmd:CI_Citation_PropertyType"/>
					<xs:element name="abstract" type="gco:CharacterString_PropertyType"/>
					<xs:element name="purpose" type="gco:CharacterString_PropertyType" minOccurs="0"/>
					<xs:element name="credit" type="gco:CharacterString_PropertyType" minOccurs="0" maxOccurs="unbounded"/>
					<xs:element name="status" type="gmd:MD_ProgressCode_PropertyType" minOccurs="0" maxOccurs="unbounded"/>
					<xs:element name="pointOfContact" type="gmd:CI_ResponsibleParty_PropertyType" minOccurs="0" maxOccurs="unbounded"/>
					<xs:element name="resourceMaintenance" type="gmd:MD_MaintenanceInformation_PropertyType" minOccurs="0" maxOccurs="unbounded"/>
					<xs:element name="graphicOverview" type="gmd:MD_BrowseGraphic_PropertyType" minOccurs="0" maxOccurs="unbounded"/>
					<xs:element name="resourceFormat" type="gmd:MD_Format_PropertyType" minOccurs="0" maxOccurs="unbounded"/>
					<xs:element name="descriptiveKeywords" type="gmd:MD_Keywords_PropertyType" minOccurs="0" maxOccurs="unbounded"/>
					<xs:element name="resourceSpecificUsage" type="gmd:MD_Usage_PropertyType" minOccurs="0" maxOccurs="unbounded"/>
					<xs:element name="resourceConstraints" type="gmd:MD_Constraints_PropertyType" minOccurs="0" maxOccurs="unbounded"/>
					<xs:element name="aggregationInfo" type="gmd:MD_AggregateInformation_PropertyType" minOccurs="0" maxOccurs="unbounded"/>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<!-- ........................................................................ -->
	<xs:element name="AbstractMD_Identification" type="gmd:AbstractMD_Identification_Type" abstract="true"/>
	<!-- ........................................................................ -->
	<xs:complexType name="MD_Identification_PropertyType">
		<xs:sequence minOccurs="0">
			<xs:element ref="gmd:AbstractMD_Identification"/>
		</xs:sequence>
		<xs:attributeGroup ref="gco:ObjectReference"/>
		<xs:attribute ref="gco:nilReason"/>
	</xs:complexType>
	<!-- =========================================================================== -->
	<xs:complexType name="MD_BrowseGraphic_Type">
		<xs:annotation>
			<xs:documentation>Graphic that provides an illustration of the dataset (should include a legend for the graphic)</xs:documentation>
		</xs:annotation>
		<xs:complexContent>
			<xs:extension base="gco:AbstractObject_Type">
				<xs:sequence>
					<xs:element name="fileName" type="gco:CharacterString_PropertyType"/>
					<xs:element name="fileDescription" type="gco:CharacterString_PropertyType" minOccurs="0"/>
					<xs:element name="fileType" type="gco:CharacterString_PropertyType" minOccurs="0"/>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<!-- ........................................................................ -->
	<xs:element name="MD_BrowseGraphic" type="gmd:MD_BrowseGraphic_Type"/>
	<!-- ........................................................................ -->
	<xs:complexType name="MD_BrowseGraphic_PropertyType">
		<xs:sequence minOccurs="0">
			<xs:element ref="gmd:MD_BrowseGraphic"/>
		</xs:sequence>
		<xs:attributeGroup ref="gco:ObjectReference"/>
		<xs:attribute ref="gco:nilReason"/>
	</xs:complexType>
	<!-- =========================================================================== -->
	<xs:complexType name="MD_DataIdentification_Type">
		<xs:complexContent>
			<xs:extension base="gmd:AbstractMD_Identification_Type">
				<xs:sequence>
					<xs:element name="spatialRepresentationType" type="gmd:MD_SpatialRepresentationTypeCode_PropertyType" minOccurs="0" maxOccurs="unbounded"/>
					<xs:element name="spatialResolution" type="gmd:MD_Resolution_PropertyType" minOccurs="0" maxOccurs="unbounded"/>
					<xs:element name="language" type="gco:CharacterString_PropertyType" maxOccurs="unbounded"/>
					<xs:element name="characterSet" type="gmd:MD_CharacterSetCode_PropertyType" minOccurs="0" maxOccurs="unbounded"/>
					<xs:element name="topicCategory" type="gmd:MD_TopicCategoryCode_PropertyType" minOccurs="0" maxOccurs="unbounded"/>
					<xs:element name="environmentDescription" type="gco:CharacterString_PropertyType" minOccurs="0"/>
					<xs:element name="extent" type="gmd:EX_Extent_PropertyType" minOccurs="0" maxOccurs="unbounded"/>
					<xs:element name="supplementalInformation" type="gco:CharacterString_PropertyType" minOccurs="0"/>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<!-- ........................................................................ -->
	<xs:element name="MD_DataIdentification" type="gmd:MD_DataIdentification_Type" substitutionGroup="gmd:AbstractMD_Identification"/>
	<!-- ........................................................................ -->
	<xs:complexType name="MD_DataIdentification_PropertyType">
		<xs:sequence minOccurs="0">
			<xs:element ref="gmd:MD_DataIdentification"/>
		</xs:sequence>
		<xs:attributeGroup ref="gco:ObjectReference"/>
		<xs:attribute ref="gco:nilReason"/>
	</xs:complexType>
	<!-- =========================================================================== -->
	<xs:complexType name="MD_ServiceIdentification_Type">
		<xs:annotation>
			<xs:documentation>See 19119 for further info</xs:documentation>
		</xs:annotation>
		<xs:complexContent>
			<xs:extension base="gmd:AbstractMD_Identification_Type"/>
		</xs:complexContent>
	</xs:complexType>
	<!-- ........................................................................ -->
	<xs:element name="MD_ServiceIdentification" type="gmd:MD_ServiceIdentification_Type" substitutionGroup="gmd:AbstractMD_Identification"/>
	<!-- ........................................................................ -->
	<xs:complexType name="MD_ServiceIdentification_PropertyType">
		<xs:sequence minOccurs="0">
			<xs:element ref="gmd:MD_ServiceIdentification"/>
		</xs:sequence>
		<xs:attributeGroup ref="gco:ObjectReference"/>
		<xs:attribute ref="gco:nilReason"/>
	</xs:complexType>
	<!-- =========================================================================== -->
	<xs:complexType name="MD_RepresentativeFraction_Type">
		<xs:complexContent>
			<xs:extension base="gco:AbstractObject_Type">
				<xs:sequence>
					<xs:element name="denominator" type="gco:Integer_PropertyType"/>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<!-- ........................................................................ -->
	<xs:element name="MD_RepresentativeFraction" type="gmd:MD_RepresentativeFraction_Type"/>
	<!-- ........................................................................ -->
	<xs:complexType name="MD_RepresentativeFraction_PropertyType">
		<xs:sequence minOccurs="0">
			<xs:element ref="gmd:MD_RepresentativeFraction"/>
		</xs:sequence>
		<xs:attributeGroup ref="gco:ObjectReference"/>
		<xs:attribute ref="gco:nilReason"/>
	</xs:complexType>
	<!-- =========================================================================== -->
	<xs:complexType name="MD_Usage_Type">
		<xs:annotation>
			<xs:documentation>Brief description of ways in which the dataset is currently used.</xs:documentation>
		</xs:annotation>
		<xs:complexContent>
			<xs:extension base="gco:AbstractObject_Type">
				<xs:sequence>
					<xs:element name="specificUsage" type="gco:CharacterString_PropertyType"/>
					<xs:element name="usageDateTime" type="gco:DateTime_PropertyType" minOccurs="0"/>
					<xs:element name="userDeterminedLimitations" type="gco:CharacterString_PropertyType" minOccurs="0"/>
					<xs:element name="userContactInfo" type="gmd:CI_ResponsibleParty_PropertyType" maxOccurs="unbounded"/>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<!-- ........................................................................ -->
	<xs:element name="MD_Usage" type="gmd:MD_Usage_Type"/>
	<!-- ........................................................................ -->
	<xs:complexType name="MD_Usage_PropertyType">
		<xs:sequence minOccurs="0">
			<xs:element ref="gmd:MD_Usage"/>
		</xs:sequence>
		<xs:attributeGroup ref="gco:ObjectReference"/>
		<xs:attribute ref="gco:nilReason"/>
	</xs:complexType>
	<!-- =========================================================================== -->
	<xs:complexType name="MD_Keywords_Type">
		<xs:annotation>
			<xs:documentation>Keywords, their type and reference source</xs:documentation>
		</xs:annotation>
		<xs:complexContent>
			<xs:extension base="gco:AbstractObject_Type">
				<xs:sequence>
					<xs:element name="keyword" type="gco:CharacterString_PropertyType" maxOccurs="unbounded"/>
					<xs:element name="type" type="gmd:MD_KeywordTypeCode_PropertyType" minOccurs="0"/>
					<xs:element name="thesaurusName" type="gmd:CI_Citation_PropertyType" minOccurs="0"/>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<!-- ........................................................................ -->
	<xs:element name="MD_Keywords" type="gmd:MD_Keywords_Type"/>
	<!-- ........................................................................ -->
	<xs:complexType name="MD_Keywords_PropertyType">
		<xs:sequence minOccurs="0">
			<xs:element ref="gmd:MD_Keywords"/>
		</xs:sequence>
		<xs:attributeGroup ref="gco:ObjectReference"/>
		<xs:attribute ref="gco:nilReason"/>
	</xs:complexType>
	<!-- =========================================================================== -->
	<xs:complexType name="DS_Association_Type">
		<xs:complexContent>
			<xs:extension base="gco:AbstractObject_Type">
				<xs:sequence/>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<!-- ........................................................................ -->
	<xs:element name="DS_Association" type="gmd:DS_Association_Type"/>
	<!-- ........................................................................ -->
	<xs:complexType name="DS_Association_PropertyType">
		<xs:sequence minOccurs="0">
			<xs:element ref="gmd:DS_Association"/>
		</xs:sequence>
		<xs:attributeGroup ref="gco:ObjectReference"/>
		<xs:attribute ref="gco:nilReason"/>
	</xs:complexType>
	<!-- =========================================================================== -->
	<xs:complexType name="MD_AggregateInformation_Type">
		<xs:annotation>
			<xs:documentation>Encapsulates the dataset aggregation information</xs:documentation>
		</xs:annotation>
		<xs:complexContent>
			<xs:extension base="gco:AbstractObject_Type">
				<xs:sequence>
					<xs:element name="aggregateDataSetName" type="gmd:CI_Citation_PropertyType" minOccurs="0"/>
					<xs:element name="aggregateDataSetIdentifier" type="gmd:MD_Identifier_PropertyType" minOccurs="0"/>
					<xs:element name="associationType" type="gmd:DS_AssociationTypeCode_PropertyType"/>
					<xs:element name="initiativeType" type="gmd:DS_InitiativeTypeCode_PropertyType" minOccurs="0"/>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<!-- ........................................................................ -->
	<xs:element name="MD_AggregateInformation" type="gmd:MD_AggregateInformation_Type"/>
	<!-- ........................................................................ -->
	<xs:complexType name="MD_AggregateInformation_PropertyType">
		<xs:sequence minOccurs="0">
			<xs:element ref="gmd:MD_AggregateInformation"/>
		</xs:sequence>
		<xs:attributeGroup ref="gco:ObjectReference"/>
		<xs:attribute ref="gco:nilReason"/>
	</xs:complexType>
	<!-- =========================================================================== -->
	<xs:complexType name="MD_Resolution_Type">
		<xs:choice>
			<xs:element name="equivalentScale" type="gmd:MD_RepresentativeFraction_PropertyType"/>
			<xs:element name="distance" type="gco:Distance_PropertyType"/>
		</xs:choice>
	</xs:complexType>
	<!-- ........................................................................ -->
	<xs:element name="MD_Resolution" type="gmd:MD_Resolution_Type"/>
	<!-- ........................................................................ -->
	<xs:complexType name="MD_Resolution_PropertyType">
		<xs:sequence minOccurs="0">
			<xs:element ref="gmd:MD_Resolution"/>
		</xs:sequence>
		<xs:attribute ref="gco:nilReason"/>
	</xs:complexType>
	<!-- =========================================================================== -->
	<xs:simpleType name="MD_TopicCategoryCode_Type">
		<xs:annotation>
			<xs:documentation>High-level geospatial data thematic classification to assist in the grouping and search of available geospatial datasets</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:enumeration value="farming"/>
			<xs:enumeration value="biota"/>
			<xs:enumeration value="boundaries"/>
			<xs:enumeration value="climatologyMeteorologyAtmosphere"/>
			<xs:enumeration value="economy"/>
			<xs:enumeration value="elevation"/>
			<xs:enumeration value="environment"/>
			<xs:enumeration value="geoscientificInformation"/>
			<xs:enumeration value="health"/>
			<xs:enumeration value="imageryBaseMapsEarthCover"/>
			<xs:enumeration value="intelligenceMilitary"/>
			<xs:enumeration value="inlandWaters"/>
			<xs:enumeration value="location"/>
			<xs:enumeration value="oceans"/>
			<xs:enumeration value="planningCadastre"/>
			<xs:enumeration value="society"/>
			<xs:enumeration value="structure"/>
			<xs:enumeration value="transportation"/>
			<xs:enumeration value="utilitiesCommunication"/>
		</xs:restriction>
	</xs:simpleType>
	<!-- ........................................................................ -->
	<xs:element name="MD_TopicCategoryCode" type="gmd:MD_TopicCategoryCode_Type" substitutionGroup="gco:CharacterString"/>
	<!-- ........................................................................ -->
	<xs:complexType name="MD_TopicCategoryCode_PropertyType">
		<xs:sequence minOccurs="0">
			<xs:element ref="gmd:MD_TopicCategoryCode"/>
		</xs:sequence>
		<xs:attribute ref="gco:nilReason"/>
	</xs:complexType>
	<!-- =========================================================================== -->
	<!-- ........................................................................ -->
	<xs:element name="MD_CharacterSetCode" type="gco:CodeListValue_Type" substitutionGroup="gco:CharacterString"/>
	<!-- ........................................................................ -->
	<xs:complexType name="MD_CharacterSetCode_PropertyType">
		<xs:sequence minOccurs="0">
			<xs:element ref="gmd:MD_CharacterSetCode"/>
		</xs:sequence>
		<xs:attribute ref="gco:nilReason"/>
	</xs:complexType>
	<!-- =========================================================================== -->
	<!-- ........................................................................ -->
	<xs:element name="MD_SpatialRepresentationTypeCode" type="gco:CodeListValue_Type" substitutionGroup="gco:CharacterString"/>
	<!-- ........................................................................ -->
	<xs:complexType name="MD_SpatialRepresentationTypeCode_PropertyType">
		<xs:sequence minOccurs="0">
			<xs:element ref="gmd:MD_SpatialRepresentationTypeCode"/>
		</xs:sequence>
		<xs:attribute ref="gco:nilReason"/>
	</xs:complexType>
	<!-- =========================================================================== -->
	<!-- ........................................................................ -->
	<xs:element name="MD_ProgressCode" type="gco:CodeListValue_Type" substitutionGroup="gco:CharacterString"/>
	<!-- ........................................................................ -->
	<xs:complexType name="MD_ProgressCode_PropertyType">
		<xs:sequence minOccurs="0">
			<xs:element ref="gmd:MD_ProgressCode"/>
		</xs:sequence>
		<xs:attribute ref="gco:nilReason"/>
	</xs:complexType>
	<!-- =========================================================================== -->
	<!-- ........................................................................ -->
	<xs:element name="MD_KeywordTypeCode" type="gco:CodeListValue_Type" substitutionGroup="gco:CharacterString"/>
	<!-- ........................................................................ -->
	<xs:complexType name="MD_KeywordTypeCode_PropertyType">
		<xs:sequence minOccurs="0">
			<xs:element ref="gmd:MD_KeywordTypeCode"/>
		</xs:sequence>
		<xs:attribute ref="gco:nilReason"/>
	</xs:complexType>
	<!-- =========================================================================== -->
	<!-- ........................................................................ -->
	<xs:element name="DS_AssociationTypeCode" type="gco:CodeListValue_Type" substitutionGroup="gco:CharacterString"/>
	<!-- ........................................................................ -->
	<xs:complexType name="DS_AssociationTypeCode_PropertyType">
		<xs:sequence minOccurs="0">
			<xs:element ref="gmd:DS_AssociationTypeCode"/>
		</xs:sequence>
		<xs:attribute ref="gco:nilReason"/>
	</xs:complexType>
	<!-- =========================================================================== -->
	<!-- ........................................................................ -->
	<xs:element name="DS_InitiativeTypeCode" type="gco:CodeListValue_Type" substitutionGroup="gco:CharacterString"/>
	<!-- ........................................................................ -->
	<xs:complexType name="DS_InitiativeTypeCode_PropertyType">
		<xs:sequence minOccurs="0">
			<xs:element ref="gmd:DS_InitiativeTypeCode"/>
		</xs:sequence>
		<xs:attribute ref="gco:nilReason"/>
	</xs:complexType>
	<!-- =========================================================================== -->
</xs:schema>
