<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" 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="0.1">
  <!-- ================================= Annotation ================================ -->
  <xs:annotation>
    <xs:documentation>This file was generated from ISO TC/211 UML class diagrams == 01-26-2005
      12:40:03 ======
    </xs:documentation>
  </xs:annotation>
  <!-- ================================== Imports ================================== -->
  <xs:import namespace="http://www.isotc211.org/2005/gco" schemaLocation="../gco/gco.xsd"/>
  <xs:include schemaLocation="../gmd/citation.xsd"/>
  <!-- ########################################################################### -->
  <!-- ########################################################################### -->
  <!-- ================================== Classes ================================= -->
  <xs:complexType name="MD_FeatureCatalogueDescription_Type">
    <xs:annotation>
      <xs:documentation>Information identifing the feature catalogue</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="gmd:AbstractMD_ContentInformation_Type">
        <xs:sequence>
          <xs:element name="complianceCode" type="gco:Boolean_PropertyType" minOccurs="0"/>
          <xs:element name="language" type="gco:CharacterString_PropertyType" minOccurs="0"
                      maxOccurs="unbounded"/>
          <xs:element name="includedWithDataset" type="gco:Boolean_PropertyType"/>
          <xs:element name="featureTypes" type="gco:GenericName_PropertyType" minOccurs="0"
                      maxOccurs="unbounded"/>
          <xs:element name="featureCatalogueCitation" type="gmd:CI_Citation_PropertyType"
                      maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <!-- ........................................................................ -->
  <xs:element name="MD_FeatureCatalogueDescription" type="gmd:MD_FeatureCatalogueDescription_Type"
              substitutionGroup="gmd:AbstractMD_ContentInformation"/>
  <!-- ........................................................................ -->
  <xs:complexType name="MD_FeatureCatalogueDescription_PropertyType">
    <xs:sequence minOccurs="0">
      <xs:element ref="gmd:MD_FeatureCatalogueDescription"/>
    </xs:sequence>
    <xs:attributeGroup ref="gco:ObjectReference"/>
    <xs:attribute ref="gco:nilReason"/>
  </xs:complexType>
  <!-- =========================================================================== -->
  <xs:complexType name="MD_CoverageDescription_Type">
    <xs:annotation>
      <xs:documentation>Information about the domain of the raster cell</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="gmd:AbstractMD_ContentInformation_Type">
        <xs:sequence>
          <xs:element name="attributeDescription" type="gco:RecordType_PropertyType"/>
          <xs:element name="contentType" type="gmd:MD_CoverageContentTypeCode_PropertyType"/>
          <xs:element name="dimension" type="gmd:MD_RangeDimension_PropertyType" minOccurs="0"
                      maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <!-- ........................................................................ -->
  <xs:element name="MD_CoverageDescription" type="gmd:MD_CoverageDescription_Type"
              substitutionGroup="gmd:AbstractMD_ContentInformation"/>
  <!-- ........................................................................ -->
  <xs:complexType name="MD_CoverageDescription_PropertyType">
    <xs:sequence minOccurs="0">
      <xs:element ref="gmd:MD_CoverageDescription"/>
    </xs:sequence>
    <xs:attributeGroup ref="gco:ObjectReference"/>
    <xs:attribute ref="gco:nilReason"/>
  </xs:complexType>
  <!-- =========================================================================== -->
  <xs:complexType name="MD_ImageDescription_Type">
    <xs:annotation>
      <xs:documentation>Information about an image's suitability for use</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="gmd:MD_CoverageDescription_Type">
        <xs:sequence>
          <xs:element name="illuminationElevationAngle" type="gco:Real_PropertyType" minOccurs="0"/>
          <xs:element name="illuminationAzimuthAngle" type="gco:Real_PropertyType" minOccurs="0"/>
          <xs:element name="imagingCondition" type="gmd:MD_ImagingConditionCode_PropertyType"
                      minOccurs="0"/>
          <xs:element name="imageQualityCode" type="gmd:MD_Identifier_PropertyType" minOccurs="0"/>
          <xs:element name="cloudCoverPercentage" type="gco:Real_PropertyType" minOccurs="0"/>
          <xs:element name="processingLevelCode" type="gmd:MD_Identifier_PropertyType"
                      minOccurs="0"/>
          <xs:element name="compressionGenerationQuantity" type="gco:Integer_PropertyType"
                      minOccurs="0"/>
          <xs:element name="triangulationIndicator" type="gco:Boolean_PropertyType" minOccurs="0"/>
          <xs:element name="radiometricCalibrationDataAvailability" type="gco:Boolean_PropertyType"
                      minOccurs="0"/>
          <xs:element name="cameraCalibrationInformationAvailability"
                      type="gco:Boolean_PropertyType" minOccurs="0"/>
          <xs:element name="filmDistortionInformationAvailability" type="gco:Boolean_PropertyType"
                      minOccurs="0"/>
          <xs:element name="lensDistortionInformationAvailability" type="gco:Boolean_PropertyType"
                      minOccurs="0"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <!-- ........................................................................ -->
  <xs:element name="MD_ImageDescription" type="gmd:MD_ImageDescription_Type"
              substitutionGroup="gmd:MD_CoverageDescription"/>
  <!-- ........................................................................ -->
  <xs:complexType name="MD_ImageDescription_PropertyType">
    <xs:sequence minOccurs="0">
      <xs:element ref="gmd:MD_ImageDescription"/>
    </xs:sequence>
    <xs:attributeGroup ref="gco:ObjectReference"/>
    <xs:attribute ref="gco:nilReason"/>
  </xs:complexType>
  <!-- =========================================================================== -->
  <xs:complexType name="AbstractMD_ContentInformation_Type" abstract="true">
    <xs:complexContent>
      <xs:extension base="gco:AbstractObject_Type">
        <xs:sequence/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <!-- ........................................................................ -->
  <xs:element name="AbstractMD_ContentInformation" type="gmd:AbstractMD_ContentInformation_Type"
              abstract="true"/>
  <!-- ........................................................................ -->
  <xs:complexType name="MD_ContentInformation_PropertyType">
    <xs:sequence minOccurs="0">
      <xs:element ref="gmd:AbstractMD_ContentInformation"/>
    </xs:sequence>
    <xs:attributeGroup ref="gco:ObjectReference"/>
    <xs:attribute ref="gco:nilReason"/>
  </xs:complexType>
  <!-- =========================================================================== -->
  <xs:complexType name="MD_RangeDimension_Type">
    <xs:annotation>
      <xs:documentation>Set of adjacent wavelengths in the electro-magnetic spectrum with a common
        characteristic, such as the visible band
      </xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="gco:AbstractObject_Type">
        <xs:sequence>
          <xs:element name="sequenceIdentifier" type="gco:MemberName_PropertyType" minOccurs="0"/>
          <xs:element name="descriptor" type="gco:CharacterString_PropertyType" minOccurs="0"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <!-- ........................................................................ -->
  <xs:element name="MD_RangeDimension" type="gmd:MD_RangeDimension_Type"/>
  <!-- ........................................................................ -->
  <xs:complexType name="MD_RangeDimension_PropertyType">
    <xs:sequence minOccurs="0">
      <xs:element ref="gmd:MD_RangeDimension"/>
    </xs:sequence>
    <xs:attributeGroup ref="gco:ObjectReference"/>
    <xs:attribute ref="gco:nilReason"/>
  </xs:complexType>
  <!-- =========================================================================== -->
  <xs:complexType name="MD_Band_Type">
    <xs:complexContent>
      <xs:extension base="gmd:MD_RangeDimension_Type">
        <xs:sequence>
          <xs:element name="maxValue" type="gco:Real_PropertyType" minOccurs="0"/>
          <xs:element name="minValue" type="gco:Real_PropertyType" minOccurs="0"/>
          <xs:element name="units" type="gco:UomLength_PropertyType" minOccurs="0"/>
          <xs:element name="peakResponse" type="gco:Real_PropertyType" minOccurs="0"/>
          <xs:element name="bitsPerValue" type="gco:Integer_PropertyType" minOccurs="0"/>
          <xs:element name="toneGradation" type="gco:Integer_PropertyType" minOccurs="0"/>
          <xs:element name="scaleFactor" type="gco:Real_PropertyType" minOccurs="0"/>
          <xs:element name="offset" type="gco:Real_PropertyType" minOccurs="0"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <!-- ........................................................................ -->
  <xs:element name="MD_Band" type="gmd:MD_Band_Type" substitutionGroup="gmd:MD_RangeDimension"/>
  <!-- ........................................................................ -->
  <xs:complexType name="MD_Band_PropertyType">
    <xs:sequence minOccurs="0">
      <xs:element ref="gmd:MD_Band"/>
    </xs:sequence>
    <xs:attributeGroup ref="gco:ObjectReference"/>
    <xs:attribute ref="gco:nilReason"/>
  </xs:complexType>
  <!-- =========================================================================== -->
  <!-- ........................................................................ -->
  <xs:element name="MD_CoverageContentTypeCode" type="gco:CodeListValue_Type"
              substitutionGroup="gco:CharacterString"/>
  <!-- ........................................................................ -->
  <xs:complexType name="MD_CoverageContentTypeCode_PropertyType">
    <xs:sequence minOccurs="0">
      <xs:element ref="gmd:MD_CoverageContentTypeCode"/>
    </xs:sequence>
    <xs:attribute ref="gco:nilReason"/>
  </xs:complexType>
  <!-- =========================================================================== -->
  <!-- ........................................................................ -->
  <xs:element name="MD_ImagingConditionCode" type="gco:CodeListValue_Type"
              substitutionGroup="gco:CharacterString"/>
  <!-- ........................................................................ -->
  <xs:complexType name="MD_ImagingConditionCode_PropertyType">
    <xs:sequence minOccurs="0">
      <xs:element ref="gmd:MD_ImagingConditionCode"/>
    </xs:sequence>
    <xs:attribute ref="gco:nilReason"/>
  </xs:complexType>
  <!-- =========================================================================== -->
</xs:schema>
