<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:gml="http://www.opengis.net/gml/3.2" xmlns:ows="http://www.opengis.net/ows/2.0" xmlns:sar="http://www.opengis.net/sar/2.0" xmlns:eop="http://www.opengis.net/eop/2.0" targetNamespace="http://www.opengis.net/sar/2.0" elementFormDefault="qualified" attributeFormDefault="unqualified" version="2.0.0">
    <annotation>
        <documentation>Synthetic Aperture Radar applicatiion schema.
        
        Earth Observation Metadata profile of Observations and Measurements is an OGC Standard.
        Copyright (c) 2013 Open Geospatial Consortium. 
        To obtain additional rights of use, visit http://www.opengeospatial.org/legal/ .
        </documentation>
    </annotation>
    <import namespace="http://www.opengis.net/gml/3.2" schemaLocation="http://schemas.opengis.net/gml/3.2.1/gml.xsd"/>
    <import namespace="http://www.opengis.net/eop/2.0" schemaLocation="eop.xsd"/>
    <import namespace="http://www.opengis.net/ows/2.0" schemaLocation="http://schemas.opengis.net/ows/2.0/owsAll.xsd"/>
    <element name="EarthObservation" substitutionGroup="eop:EarthObservation" type="sar:EarthObservationType">
        <annotation>
            <documentation>eop root element for SAR Earth Observation Product </documentation>
        </annotation>
    </element>
    <complexType name="EarthObservationType">
        <complexContent>
            <extension base="eop:EarthObservationType"/>
        </complexContent>
    </complexType>
    <complexType name="EarthObservationPropertyType">
        <sequence minOccurs="0">
            <element ref="sar:EarthObservation"/>
        </sequence>
        <attributeGroup ref="gml:AssociationAttributeGroup"/>
        <attributeGroup ref="gml:OwnershipAttributeGroup"/>
    </complexType>
    <element name="Acquisition" substitutionGroup="eop:Acquisition" type="sar:AcquisitionType">
        <annotation>
            <documentation>Extends eop Acquisition for SAR products</documentation>
        </annotation>
    </element>
    <complexType name="AcquisitionType">
        <complexContent>
            <extension base="eop:AcquisitionType">
                <sequence>
                    <element maxOccurs="1" minOccurs="0" name="polarisationMode" type="sar:PolarisationModeValueType">
                        <annotation>
                            <documentation>single S, dual D, twin T, quad Q, UNDEFINED</documentation>
                        </annotation>
                    </element>
                    <element maxOccurs="1" minOccurs="0" name="polarisationChannels" type="sar:PolarisationChannelsValueType">
                        <annotation>
                            <documentation>Polarisation channel transmit/receive configuration: horizontal, vertical.</documentation>
                        </annotation>
                    </element>
                    <element maxOccurs="1" minOccurs="0" name="antennaLookDirection" type="sar:AntennaLookDirectionValueType">
                        <annotation>
                            <documentation>Polarisation channel transmit/receive configuration: horizontal, vertical.</documentation>
                        </annotation>
                    </element>
                    <element maxOccurs="1" minOccurs="0" name="minimumIncidenceAngle" type="gml:AngleType">
                        <annotation>
                            <documentation>Minimum Incidence angle.</documentation>
                        </annotation>
                    </element>
                    <element maxOccurs="1" minOccurs="0" name="maximumIncidenceAngle" type="gml:AngleType">
                        <annotation>
                            <documentation>Maximum Incidence angle.</documentation>
                        </annotation>
                    </element>
                    <element maxOccurs="1" minOccurs="0" name="incidenceAngleVariation" type="gml:AngleType">
                        <annotation>
                            <documentation>Incidence angle variation</documentation>
                        </annotation>
                    </element>
                    <element maxOccurs="1" minOccurs="0" name="dopplerFrequency" type="gml:MeasureType">
                        <annotation>
                            <documentation>Doppler Frequency of acquisition.</documentation>
                        </annotation>
                    </element>
                </sequence>
            </extension>
        </complexContent>
    </complexType>
    <complexType name="AcquisitionPropertyType">
        <sequence>
            <element ref="sar:Acquisition"/>
        </sequence>
        <attributeGroup ref="gml:OwnershipAttributeGroup"/>
    </complexType>
    <simpleType name="PolarisationChannelsValueType">
        <union memberTypes="sar:PolarisationChannelsValueEnumerationType sar:PolarisationChannelsValueOtherType"/>
    </simpleType>
    <simpleType name="PolarisationChannelsValueEnumerationType">
        <restriction base="string">
            <enumeration value="HH"/>
            <enumeration value="HV"/>
            <enumeration value="UNDEFINED"/>
            <enumeration value="HV, VH"/>
            <enumeration value="VV, VH"/>
            <enumeration value="VV, HV"/>
            <enumeration value="VH, HV"/>
            <enumeration value="VH, VV"/>
            <enumeration value="HH, HV"/>
            <enumeration value="HH, VH"/>
            <enumeration value="HH, VV"/>
            <enumeration value="VH"/>
            <enumeration value="VV"/>
        </restriction>
    </simpleType>
    <simpleType name="PolarisationChannelsValueOtherType">
        <restriction base="string">
            <pattern value="other: \w{2,}"/>
        </restriction>
    </simpleType>
    <simpleType name="PolarisationModeValueType">
        <union memberTypes="sar:PolarisationModeValueEnumerationType sar:PolarisationModeValueOtherType"/>
    </simpleType>
    <simpleType name="PolarisationModeValueEnumerationType">
        <restriction base="string">
            <enumeration value="UNDEFINED">
                <annotation>
                    <documentation>Mode undefined </documentation>
                </annotation>
            </enumeration>
            <enumeration value="T">
                <annotation>
                    <documentation>Twin mode</documentation>
                </annotation>
            </enumeration>
            <enumeration value="S">
                <annotation>
                    <documentation>Single mode</documentation>
                </annotation>
            </enumeration>
            <enumeration value="D">
                <annotation>
                    <documentation>Dual mode</documentation>
                </annotation>
            </enumeration>
            <enumeration value="Q">
                <annotation>
                    <documentation>Quad mode</documentation>
                </annotation>
            </enumeration>
        </restriction>
    </simpleType>
    <simpleType name="PolarisationModeValueOtherType">
        <restriction base="string">
            <pattern value="other: \w{2,}"/>
        </restriction>
    </simpleType>
    <simpleType name="AntennaLookDirectionValueType">
        <union memberTypes="sar:AntennaLookDirectionValueEnumerationType sar:AntennaLookDirectionValueOtherType"/>
    </simpleType>
    <simpleType name="AntennaLookDirectionValueEnumerationType">
        <restriction base="string">
            <enumeration value="LEFT">
                <annotation>
                    <documentation>Antenna Look Direction Left</documentation>
                </annotation>
            </enumeration>
            <enumeration value="RIGHT">
                <annotation>
                    <documentation>Antenna Look Direction Right</documentation>
                </annotation>
            </enumeration>
        </restriction>
    </simpleType>
    <simpleType name="AntennaLookDirectionValueOtherType">
        <restriction base="string">
            <pattern value="other: \w{2,}"/>
        </restriction>
    </simpleType>
</schema>
