<?xml version="1.0" encoding="UTF-8"?>
<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:gco="http://standards.iso.org/iso/19115/-3/gco/1.0" xmlns:gmw="http://standards.iso.org/iso/19115/-3/gmw/1.0" xmlns:mac="http://standards.iso.org/iso/19115/-3/mac/2.0" xmlns:mcc="http://standards.iso.org/iso/19115/-3/mcc/1.0" elementFormDefault="qualified" targetNamespace="http://standards.iso.org/iso/19115/-3/mac/2.0" version="1.0">
  <import namespace="http://standards.iso.org/iso/19115/-3/gco/1.0" schemaLocation="../../../../19115/-3/gco/1.0/gco.xsd"/>
  <import namespace="http://standards.iso.org/iso/19115/-3/gmw/1.0" schemaLocation="../../../../19115/-3/gmw/1.0/gmw.xsd"/>
  <import namespace="http://standards.iso.org/iso/19115/-3/mcc/1.0" schemaLocation="../../../../19115/-3/mcc/1.0/mcc.xsd"/>
  <include schemaLocation="event.xsd"/>
  <element name="MI_AcquisitionInformation" substitutionGroup="mcc:Abstract_AcquisitionInformation" type="mac:MI_AcquisitionInformation_Type">
    <annotation>
      <documentation>Description: Designations for the measuring instruments and their bands, the platform carrying them, and the mission to which the data contributes FGDC: Platform_and_Instrument_Identification, Mission_Information shortName: PltfrmInstId</documentation>
    </annotation>
  </element>
  <complexType name="MI_AcquisitionInformation_Type">
    <complexContent>
      <extension base="mcc:Abstract_AcquisitionInformation_Type">
        <sequence>
          <element name="scope" type="mcc:MD_Scope_PropertyType">
            <annotation>
              <documentation>the specific data to which the acquisition information applies</documentation>
            </annotation>
          </element>
          <element maxOccurs="unbounded" minOccurs="0" name="instrument" type="mac:MI_Instrument_PropertyType"/>
          <element maxOccurs="unbounded" minOccurs="0" name="operation" type="mac:MI_Operation_PropertyType"/>
          <element maxOccurs="unbounded" minOccurs="0" name="platform" type="mac:MI_Platform_PropertyType"/>
          <element maxOccurs="unbounded" minOccurs="0" name="acquisitionPlan" type="mac:MI_Plan_PropertyType"/>
          <element maxOccurs="unbounded" minOccurs="0" name="objective" type="mac:MI_Objective_PropertyType"/>
          <element maxOccurs="unbounded" minOccurs="0" name="acquisitionRequirement" type="mac:MI_Requirement_PropertyType"/>
          <element minOccurs="0" name="environmentalConditions" type="mac:MI_EnvironmentalRecord_PropertyType"/>
        </sequence>
      </extension>
    </complexContent>
  </complexType>
  <complexType name="MI_AcquisitionInformation_PropertyType">
    <sequence minOccurs="0">
      <element ref="mac:MI_AcquisitionInformation"/>
    </sequence>
    <attributeGroup ref="gco:ObjectReference"/>
    <attribute ref="gco:nilReason"/>
  </complexType>
  <element name="MI_ContextCode" substitutionGroup="gco:CharacterString" type="gco:CodeListValue_Type">
    <annotation>
      <documentation>Description: context of activation shortName: CntxtCode</documentation>
    </annotation>
  </element>
  <complexType name="MI_ContextCode_PropertyType">
    <sequence minOccurs="0">
      <element ref="mac:MI_ContextCode"/>
    </sequence>
    <attribute ref="gco:nilReason"/>
  </complexType>
  <element name="MI_EnvironmentalRecord" substitutionGroup="gco:AbstractObject" type="mac:MI_EnvironmentalRecord_Type"/>
  <complexType name="MI_EnvironmentalRecord_Type">
    <complexContent>
      <extension base="gco:AbstractObject_Type">
        <sequence>
          <element name="averageAirTemperature" type="gco:Real_PropertyType"/>
          <element name="maxRelativeHumidity" type="gco:Real_PropertyType"/>
          <element name="maxAltitude" type="gco:Real_PropertyType"/>
          <element name="meterologicalConditions" type="gco:CharacterString_PropertyType"/>
          <element name="solarAzimuth" type="gco:Real_PropertyType"/>
          <element name="solarElevation" type="gco:Real_PropertyType"/>          
        </sequence>
      </extension>
    </complexContent>
  </complexType>
  <complexType name="MI_EnvironmentalRecord_PropertyType">
    <sequence minOccurs="0">
      <element ref="mac:MI_EnvironmentalRecord"/>
    </sequence>
    <attributeGroup ref="gco:ObjectReference"/>
    <attribute ref="gco:nilReason"/>
  </complexType>
  <element name="MI_Event" substitutionGroup="gco:AbstractObject" type="mac:MI_Event_Type">
    <annotation>
      <documentation>Description: identification of a significant collection point within an operation shortName: Event</documentation>
    </annotation>
  </element>
  <complexType name="MI_Event_Type">
    <complexContent>
      <extension base="gco:AbstractObject_Type">
        <sequence>
          <element name="identifier" type="mcc:MD_Identifier_PropertyType">
            <annotation>
              <documentation>Description: Event name or number shortName: evtId</documentation>
            </annotation>
          </element>
          <element name="trigger" type="mac:MI_TriggerCode_PropertyType">
            <annotation>
              <documentation>Description: Initiator of the event shortName: evtTrig</documentation>
            </annotation>
          </element>
          <element name="context" type="mac:MI_ContextCode_PropertyType">
            <annotation>
              <documentation>Description: Meaning of the event shortName: evtCntxt</documentation>
            </annotation>
          </element>
          <element name="sequence" type="mac:MI_SequenceCode_PropertyType">
            <annotation>
              <documentation>Description: Relative time ordering of the event shortName: evtSeq</documentation>
            </annotation>
          </element>
          <element name="time" type="gco:DateTime_PropertyType">
            <annotation>
              <documentation>Description: Time the event occured shortName: evtTime</documentation>
            </annotation>
          </element>
          <element minOccurs="0" name="relatedPass" type="mac:MI_PlatformPass_PropertyType"/>
          <element maxOccurs="unbounded" minOccurs="0" name="relatedSensor" type="mac:MI_Instrument_PropertyType"/>
          <element maxOccurs="unbounded" minOccurs="0" name="expectedObjective" type="mac:MI_Objective_PropertyType"/>
        </sequence>
      </extension>
    </complexContent>
  </complexType>
  <complexType name="MI_Event_PropertyType">
    <sequence minOccurs="0">
      <element ref="mac:MI_Event"/>
    </sequence>
    <attributeGroup ref="gco:ObjectReference"/>
    <attribute ref="gco:nilReason"/>
  </complexType>
  <element name="MI_GeometryTypeCode" substitutionGroup="gco:CharacterString" type="gco:CodeListValue_Type">
    <annotation>
      <documentation>Description: geometric description of collection shortName: GeoTypeCode</documentation>
    </annotation>
  </element>
  <complexType name="MI_GeometryTypeCode_PropertyType">
    <sequence minOccurs="0">
      <element ref="mac:MI_GeometryTypeCode"/>
    </sequence>
    <attribute ref="gco:nilReason"/>
  </complexType>
  <element name="MI_Instrument" substitutionGroup="gco:AbstractObject" type="mac:MI_Instrument_Type">
    <annotation>
      <documentation>Description: Designations for the measuring instruments FGDC: Platform_and_Instrument_Identification shortName: PltfrmInstId</documentation>
    </annotation>
  </element>
  <complexType name="MI_Instrument_Type">
    <complexContent>
      <extension base="gco:AbstractObject_Type">
        <sequence>
          <element maxOccurs="unbounded" minOccurs="0" name="citation" type="mcc:Abstract_Citation_PropertyType">
            <annotation>
              <documentation>Description: complete citation of the instrument FGDC: Instrument_Full_Name Position: 1 shortName: instNam Conditional: if shortName not specified</documentation>
            </annotation>
          </element>
          <element name="identifier" type="mcc:MD_Identifier_PropertyType">
            <annotation>
              <documentation>Description: complete citation of the instrument FGDC: Instrument_Full_Name Position: 1 shortName: instNam Conditional: if shortName not specified</documentation>
            </annotation>
          </element>
          <element name="type" type="gco:CharacterString_PropertyType">
            <annotation>
              <documentation>Description: Code describing the type of instrument shortName: instType</documentation>
            </annotation>
          </element>
          <element minOccurs="0" name="description" type="gco:CharacterString_PropertyType">
            <annotation>
              <documentation>Description: Textual description of the instrument shortName: instDesc</documentation>
            </annotation>
          </element>
          <element minOccurs="0" name="mountedOn" type="mac:MI_Platform_PropertyType"/>
          <element name="otherPropertyType" type="gco:RecordType_PropertyType" minOccurs="0" maxOccurs="1">
            <annotation>
              <documentation>type of other property description (i.e. netcdf/variable in ncml.xsd or AdditionalAttribute in ECHO)</documentation>
            </annotation>
          </element>
          <element name="otherProperty" type="gco:Record_PropertyType" minOccurs="0" maxOccurs="1">
            <annotation>
              <documentation>instance of otherPropertyType that defines attributes not explicitly included in MI_Platform</documentation>
            </annotation>
          </element>
          <element name="content" type="mcc:Abstract_ContentInformation_PropertyType" maxOccurs="1" minOccurs="0"/>
          <element name="sensor" type="mac:MI_Sensor_PropertyType" minOccurs="0" maxOccurs="unbounded"/>
          <element name="history" type="mac:MI_InstrumentationEventList_PropertyType" minOccurs="0" maxOccurs="unbounded"/>
        </sequence>
      </extension>
    </complexContent>
  </complexType>
  <complexType name="MI_Instrument_PropertyType">
    <sequence minOccurs="0">
      <element ref="mac:MI_Instrument"/>
    </sequence>
    <attributeGroup ref="gco:ObjectReference"/>
    <attribute ref="gco:nilReason"/>
  </complexType>
  <!-- =========================================================================== -->
  <complexType name="MI_Sensor_Type">
    <annotation>
      <documentation>Sensor Description</documentation>
    </annotation>
    <complexContent>
      <extension base="mac:MI_Instrument_Type">
        <sequence>
          <element maxOccurs="unbounded" minOccurs="0" name="hosted" type="mac:MI_Instrument_PropertyType"/>
        </sequence>
      </extension>
    </complexContent>
  </complexType>
  <!-- ........................................................................ -->
  <element name="MI_Sensor" substitutionGroup="mac:MI_Instrument" type="mac:MI_Sensor_Type"/>
  <!-- ........................................................................ -->
  <complexType name="MI_Sensor_PropertyType">
    <sequence>
      <element ref="mac:MI_Sensor" minOccurs="0"/>
    </sequence>
    <attributeGroup ref="gco:ObjectReference"/>
    <attribute ref="gco:nilReason"/>
  </complexType>
  <element name="MI_Objective" substitutionGroup="gco:AbstractObject" type="mac:MI_Objective_Type">
    <annotation>
      <documentation>Description: Describes the characteristics, spatial and temportal extent of the intended object to be observed shortName: TargetId</documentation>
    </annotation>
  </element>
  <complexType name="MI_Objective_Type">
    <complexContent>
      <extension base="gco:AbstractObject_Type">
        <sequence>
          <element maxOccurs="unbounded" name="identifier" type="mcc:MD_Identifier_PropertyType">
            <annotation>
              <documentation>Description: Registered code used to identify the objective Postion: 1 shortName: targetId</documentation>
            </annotation>
          </element>
          <element minOccurs="0" name="priority" type="gco:CharacterString_PropertyType">
            <annotation>
              <documentation>Description: priority applied to the target Position: 3 shortName: trgtPriority</documentation>
            </annotation>
          </element>
          <element maxOccurs="unbounded" minOccurs="0" name="type" type="mac:MI_ObjectiveTypeCode_PropertyType">
            <annotation>
              <documentation>Description: collection technique for the objective Position: 4 shortName: trgtType</documentation>
            </annotation>
          </element>
          <element maxOccurs="unbounded" minOccurs="0" name="function" type="gco:CharacterString_PropertyType">
            <annotation>
              <documentation>Description: function performed by or at the objective Position: 5 shortName: trgtFunct</documentation>
            </annotation>
          </element>
          <element maxOccurs="unbounded" minOccurs="0" name="extent" type="mcc:Abstract_Extent_PropertyType">
            <annotation>
              <documentation>Description: extent information including the bounding box, bounding polygon, vertical and temporal extent of the objective Position: 6 shortName: trgtExtent</documentation>
            </annotation>
          </element>
          <element maxOccurs="unbounded" minOccurs="0" name="sensingInstrument" type="mac:MI_Instrument_PropertyType"/>
          <element maxOccurs="unbounded" minOccurs="0" name="pass" type="mac:MI_PlatformPass_PropertyType"/>
          <element maxOccurs="unbounded" name="objectiveOccurence" type="mac:MI_Event_PropertyType"/>
        </sequence>
      </extension>
    </complexContent>
  </complexType>
  <complexType name="MI_Objective_PropertyType">
    <sequence minOccurs="0">
      <element ref="mac:MI_Objective"/>
    </sequence>
    <attributeGroup ref="gco:ObjectReference"/>
    <attribute ref="gco:nilReason"/>
  </complexType>
  <element name="MI_ObjectiveTypeCode" substitutionGroup="gco:CharacterString" type="gco:CodeListValue_Type">
    <annotation>
      <documentation>Description: temporal persistence of collection objective shortName: ObjTypeCode</documentation>
    </annotation>
  </element>
  <complexType name="MI_ObjectiveTypeCode_PropertyType">
    <sequence minOccurs="0">
      <element ref="mac:MI_ObjectiveTypeCode"/>
    </sequence>
    <attribute ref="gco:nilReason"/>
  </complexType>
  <element name="MI_Operation" substitutionGroup="gco:AbstractObject" type="mac:MI_Operation_Type">
    <annotation>
      <documentation>Description: Designations for the operation used to acquire the dataset shortName: MssnId</documentation>
    </annotation>
  </element>
  <complexType name="MI_Operation_Type">
    <complexContent>
      <extension base="gco:AbstractObject_Type">
        <sequence>
          <element minOccurs="0" name="description" type="gco:CharacterString_PropertyType">
            <annotation>
              <documentation>Description: Description of the mission on which the platform observations are part and the objectives of that mission FGDC: Mission_Description Position: 3 shortName: mssnDesc</documentation>
            </annotation>
          </element>
          <element minOccurs="0" name="citation" type="mcc:Abstract_Citation_PropertyType">
            <annotation>
              <documentation>Description: character string by which the mission is known FGDC: Mission_Name Position: 1 shortName: pltMssnNam NITF_ACFTA:AC_MSN_ID</documentation>
            </annotation>
          </element>
          <element minOccurs="0" name="identifier" type="mcc:MD_Identifier_PropertyType">
            <annotation>
              <documentation>Description: character string by which the mission is known FGDC: Mission_Name Position: 1 shortName: pltMssnNam NITF_ACFTA:AC_MSN_ID</documentation>
            </annotation>
          </element>
          <element name="status" type="mcc:MD_ProgressCode_PropertyType">
            <annotation>
              <documentation>Description: status of the data acquisition FGDC: Mission_Start_Date Position: 4 shortName: mssnStatus</documentation>
            </annotation>
          </element>
          <element minOccurs="0" name="type" type="mac:MI_OperationTypeCode_PropertyType">
            <annotation>
              <documentation>Description: status of the data acquisition FGDC: Mission_Start_Date Position: 4 shortName: mssnStatus</documentation>
            </annotation>
          </element>
          <element name="parentOperation" type="mac:MI_Operation_PropertyType" minOccurs="0"/>
          <element maxOccurs="unbounded" minOccurs="0" name="childOperation" type="mac:MI_Operation_PropertyType"/>
          <element maxOccurs="unbounded" minOccurs="0" name="platform" type="mac:MI_Platform_PropertyType">
            <annotation>
              <documentation>Description: Platform (or platforms) used in the operation.</documentation>
            </annotation>
          </element>
          <element maxOccurs="unbounded" minOccurs="0" name="objective" type="mac:MI_Objective_PropertyType"/>
          <element minOccurs="0" name="plan" type="mac:MI_Plan_PropertyType"/>
          <element maxOccurs="unbounded" minOccurs="0" name="significantEvent" type="mac:MI_Event_PropertyType"/>
          <element name="otherPropertyType" type="gco:RecordType_PropertyType" minOccurs="0" maxOccurs="1">
            <annotation>
              <documentation>type of other property description (i.e. netcdf/variable in ncml.xsd or AdditionalAttribute in ECHO)</documentation>
            </annotation>
          </element>
          <element name="otherProperty" type="gco:Record_PropertyType" minOccurs="0" maxOccurs="1">
            <annotation>
              <documentation>instance of otherPropertyType that defines attributes not explicitly included in MI_Operation</documentation>
            </annotation>
          </element>
          
        </sequence>
      </extension>
    </complexContent>
  </complexType>
  <complexType name="MI_Operation_PropertyType">
    <sequence minOccurs="0">
      <element ref="mac:MI_Operation"/>
    </sequence>
    <attributeGroup ref="gco:ObjectReference"/>
    <attribute ref="gco:nilReason"/>
  </complexType>
  <element name="MI_OperationTypeCode" substitutionGroup="gco:CharacterString" type="gco:CodeListValue_Type"/>
  <complexType name="MI_OperationTypeCode_PropertyType">
    <sequence minOccurs="0">
      <element ref="mac:MI_OperationTypeCode"/>
    </sequence>
    <attribute ref="gco:nilReason"/>
  </complexType>
  <element name="MI_Plan" substitutionGroup="gco:AbstractObject" type="mac:MI_Plan_Type">
    <annotation>
      <documentation>Description: Designations for the planning information related to meeting requirements shortName: PlanId</documentation>
    </annotation>
  </element>
  <complexType name="MI_Plan_Type">
    <complexContent>
      <extension base="gco:AbstractObject_Type">
        <sequence>
          <element minOccurs="0" name="type" type="mac:MI_GeometryTypeCode_PropertyType">
            <annotation>
              <documentation>Description: manner of sampling geometry the planner expects for collection of the objective data Postion: 2 shortName: planType</documentation>
            </annotation>
          </element>
          <element name="status" type="mcc:MD_ProgressCode_PropertyType">
            <annotation>
              <documentation>Description: current status of the plan (pending, completed, etc.) shortName: planStatus</documentation>
            </annotation>
          </element>
          <element name="citation" type="mcc:Abstract_Citation_PropertyType">
            <annotation>
              <documentation>Description: Identification of authority requesting target collection Postion: 1 shortName: planReqId</documentation>
            </annotation>
          </element>
          <element maxOccurs="unbounded" minOccurs="0" name="operation" type="mac:MI_Operation_PropertyType"/>
          <element maxOccurs="unbounded" minOccurs="0" name="satisfiedRequirement" type="mac:MI_Requirement_PropertyType"/>
        </sequence>
      </extension>
    </complexContent>
  </complexType>
  <complexType name="MI_Plan_PropertyType">
    <sequence minOccurs="0">
      <element ref="mac:MI_Plan"/>
    </sequence>
    <attributeGroup ref="gco:ObjectReference"/>
    <attribute ref="gco:nilReason"/>
  </complexType>
  <element name="MI_Platform" substitutionGroup="mcc:Abstract_Platform" type="mac:MI_Platform_Type">
    <annotation>
      <documentation>Description: Designations for the platform used to acquire the dataset shortName: PltfrmId</documentation>
    </annotation>
  </element>
  <complexType name="MI_Platform_Type">
    <complexContent>
      <extension base="mcc:Abstract_Platform_Type">
        <sequence>
          <element name="citation" type="mcc:Abstract_Citation_PropertyType" minOccurs="0" maxOccurs="unbounded">
            <annotation>
              <documentation>Description: complete citation of the platform FGDC: Platform_Full_Name Position: 3 shortName: pltNam Conditional: if shortName not specified</documentation>
            </annotation>
          </element>
          <element name="identifier" type="mcc:MD_Identifier_PropertyType">
            <annotation>
              <documentation>Unique identification of the platform</documentation>
            </annotation>
          </element>
          <element name="description" type="gco:CharacterString_PropertyType">
            <annotation>
              <documentation>Description: Narrative description of the platform supporting the instrument FGDC: Platform_Description Position: 2 shortName: pltfrmDesc</documentation>
            </annotation>
          </element>
          <element maxOccurs="unbounded" minOccurs="0" name="sponsor" type="mcc:Abstract_Responsibility_PropertyType">
            <annotation>
              <documentation>Description: organization responsible for building, launch, or operation of the platform FGDC: Platform_Sponsor Position: 6 shortName: pltfrmSpnsr</documentation>
            </annotation>
          </element>
          <element maxOccurs="unbounded" name="instrument" type="mac:MI_Instrument_PropertyType"/>
          <element name="otherPropertyType" type="gco:RecordType_PropertyType" minOccurs="0" maxOccurs="1">
            <annotation>
              <documentation>type of other property description (i.e. netcdf/variable in ncml.xsd or AdditionalAttribute in ECHO)</documentation>
            </annotation>
          </element>
          <element name="otherProperty" type="gco:Record_PropertyType" minOccurs="0" maxOccurs="1">
            <annotation>
              <documentation>instance of otherPropertyType that defines attributes not explicitly included in MI_Platform</documentation>
            </annotation>
          </element>
          <element name="history" type="mac:MI_InstrumentationEventList_PropertyType" minOccurs="0" maxOccurs="unbounded"/>
        </sequence>
      </extension>
    </complexContent>
  </complexType>
  <complexType name="MI_Platform_PropertyType">
    <sequence minOccurs="0">
      <element ref="mac:MI_Platform"/>
    </sequence>
    <attributeGroup ref="gco:ObjectReference"/>
    <attribute ref="gco:nilReason"/>
  </complexType>
  <element name="MI_PlatformPass" substitutionGroup="gco:AbstractObject" type="mac:MI_PlatformPass_Type">
    <annotation>
      <documentation>Description: identification of collection coverage shortName: PlatformPass</documentation>
    </annotation>
  </element>
  <complexType name="MI_PlatformPass_Type">
    <complexContent>
      <extension base="gco:AbstractObject_Type">
        <sequence>
          <element name="identifier" type="mcc:MD_Identifier_PropertyType">
            <annotation>
              <documentation>Description: unique name of the pass shortName: passId</documentation>
            </annotation>
          </element>
          <element minOccurs="0" name="extent" type="gmw:GM_Object_PropertyType">
            <annotation>
              <documentation>Description: Area covered by the pass shortName: passExt</documentation>
            </annotation>
          </element>
          <element maxOccurs="unbounded" minOccurs="0" name="relatedEvent" type="mac:MI_Event_PropertyType"/>
        </sequence>
      </extension>
    </complexContent>
  </complexType>
  <complexType name="MI_PlatformPass_PropertyType">
    <sequence minOccurs="0">
      <element ref="mac:MI_PlatformPass"/>
    </sequence>
    <attributeGroup ref="gco:ObjectReference"/>
    <attribute ref="gco:nilReason"/>
  </complexType>
  <element name="MI_PriorityCode" substitutionGroup="gco:CharacterString" type="gco:CodeListValue_Type">
    <annotation>
      <documentation>Description: ordered list of priorities shortName: PriCode</documentation>
    </annotation>
  </element>
  <complexType name="MI_PriorityCode_PropertyType">
    <sequence minOccurs="0">
      <element ref="mac:MI_PriorityCode"/>
    </sequence>
    <attribute ref="gco:nilReason"/>
  </complexType>
  <element name="MI_RequestedDate" substitutionGroup="gco:AbstractObject" type="mac:MI_RequestedDate_Type">
    <annotation>
      <documentation>Description: range of date validity shortName: ReqstDate</documentation>
    </annotation>
  </element>
  <complexType name="MI_RequestedDate_Type">
    <complexContent>
      <extension base="gco:AbstractObject_Type">
        <sequence>
          <element name="requestedDateOfCollection" type="gco:DateTime_PropertyType">
            <annotation>
              <documentation>Description: preferred date and time of collection shortName: collectDate</documentation>
            </annotation>
          </element>
          <element name="latestAcceptableDate" type="gco:DateTime_PropertyType">
            <annotation>
              <documentation>Description: latest date and time collection must be completed shortName: latestDate</documentation>
            </annotation>
          </element>
        </sequence>
      </extension>
    </complexContent>
  </complexType>
  <complexType name="MI_RequestedDate_PropertyType">
    <sequence minOccurs="0">
      <element ref="mac:MI_RequestedDate"/>
    </sequence>
    <attributeGroup ref="gco:ObjectReference"/>
    <attribute ref="gco:nilReason"/>
  </complexType>
  <element name="MI_Requirement" substitutionGroup="gco:AbstractObject" type="mac:MI_Requirement_Type">
    <annotation>
      <documentation>Description: requirement to be satisfied by the planned data acquisition shortName: Requirement</documentation>
    </annotation>
  </element>
  <complexType name="MI_Requirement_Type">
    <complexContent>
      <extension base="gco:AbstractObject_Type">
        <sequence>
          <element minOccurs="0" name="citation" type="mcc:Abstract_Citation_PropertyType">
            <annotation>
              <documentation>Description: identification of reference or guidance material for the requirement shortName: reqRef</documentation>
            </annotation>
          </element>
          <element name="identifier" type="mcc:MD_Identifier_PropertyType">
            <annotation>
              <documentation>Description: unique name, or code, for the requirement shortName: reqId</documentation>
            </annotation>
          </element>
          <element maxOccurs="unbounded" name="requestor" type="mcc:Abstract_Responsibility_PropertyType">
            <annotation>
              <documentation>Description: origin of requirement shortName: requestor</documentation>
            </annotation>
          </element>
          <element maxOccurs="unbounded" name="recipient" type="mcc:Abstract_Responsibility_PropertyType">
            <annotation>
              <documentation>Description: person(s), or body(ies), to recieve results of requirement shortName: recipient</documentation>
            </annotation>
          </element>
          <element name="priority" type="mac:MI_PriorityCode_PropertyType">
            <annotation>
              <documentation>Description: relative ordered importance, or urgency, of the requirement shortName: reqPri</documentation>
            </annotation>
          </element>
          <element name="requestedDate" type="mac:MI_RequestedDate_PropertyType">
            <annotation>
              <documentation>Description: required or preferred acquisition date and time shortName: reqDate</documentation>
            </annotation>
          </element>
          <element name="expiryDate" type="gco:DateTime_PropertyType">
            <annotation>
              <documentation>Description: date and time after which collection is no longer valid shortName: reqExpire</documentation>
            </annotation>
          </element>
          <element maxOccurs="unbounded" minOccurs="0" name="satisifiedPlan" type="mac:MI_Plan_PropertyType"/>
        </sequence>
      </extension>
    </complexContent>
  </complexType>
  <complexType name="MI_Requirement_PropertyType">
    <sequence minOccurs="0">
      <element ref="mac:MI_Requirement"/>
    </sequence>
    <attributeGroup ref="gco:ObjectReference"/>
    <attribute ref="gco:nilReason"/>
  </complexType>
  <element name="MI_SensorTypeCode" substitutionGroup="gco:CharacterString" type="gco:CodeListValue_Type">
    <annotation>
      <documentation>&lt;UsedBy&gt; &lt;NameSpace&gt;ISO 19115-2 Metadata - Imagery&lt;/NameSpace&gt; &lt;Class&gt;MI_Instrument&lt;/Class&gt; &lt;Package&gt;Acquisition information - Imagery&lt;/Package&gt; &lt;Attribute&gt;type&lt;/Attribute&gt; &lt;Type&gt;MI_SensorTypeCode&lt;/Type&gt; &lt;UsedBy&gt;</documentation>
    </annotation>
  </element>
  <complexType name="MI_SensorTypeCode_PropertyType">
    <sequence minOccurs="0">
      <element ref="mac:MI_SensorTypeCode"/>
    </sequence>
    <attribute ref="gco:nilReason"/>
  </complexType>
  <element name="MI_SequenceCode" substitutionGroup="gco:CharacterString" type="gco:CodeListValue_Type">
    <annotation>
      <documentation>Description: temporal relation of activation shortName: SeqCode</documentation>
    </annotation>
  </element>
  <complexType name="MI_SequenceCode_PropertyType">
    <sequence minOccurs="0">
      <element ref="mac:MI_SequenceCode"/>
    </sequence>
    <attribute ref="gco:nilReason"/>
  </complexType>
  <element name="MI_TriggerCode" substitutionGroup="gco:CharacterString" type="gco:CodeListValue_Type">
    <annotation>
      <documentation>Description: mechanism of activation shortName: TriggerCode</documentation>
    </annotation>
  </element>
  <complexType name="MI_TriggerCode_PropertyType">
    <sequence minOccurs="0">
      <element ref="mac:MI_TriggerCode"/>
    </sequence>
    <attribute ref="gco:nilReason"/>
  </complexType>
</schema>
