<?xml version="1.0" encoding="utf-8"?>
<wsdl:definitions xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:tns="ivo://voservices.net/footprint" xmlns:s1="http://www.ivoa.net/xml/STC/stc-v1.30.xsd" xmlns:s2="http://www.w3.org/1999/xlink" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" targetNamespace="ivo://voservices.net/footprint" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
  <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
By programming against the following web services, you can create 
and manage your own collection of footprints. For more information,
please go to www.voservices.net/footprint.
&lt;br /&gt;&lt;br /&gt;&lt;i&gt;Conforms to WS-I Basic Profile 1.1&lt;/i&gt;</wsdl:documentation>
  <wsdl:types>
    <s:schema elementFormDefault="qualified" targetNamespace="ivo://voservices.net/footprint">
      <s:import namespace="http://www.ivoa.net/xml/STC/stc-v1.30.xsd" />
      <s:element name="Create">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="userGuid" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="footprint" type="tns:Footprint" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="Footprint">
        <s:complexContent mixed="false">
          <s:extension base="tns:RegionGroup">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="STCRegion" type="s1:STCRegion" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="RegionGroup">
        <s:complexContent mixed="false">
          <s:extension base="tns:BaseObject">
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="Id" type="s:long" />
              <s:element minOccurs="1" maxOccurs="1" name="Type" type="tns:GroupType" />
              <s:element minOccurs="1" maxOccurs="1" name="RegionId" type="s:long" />
              <s:element minOccurs="1" maxOccurs="1" name="Public" type="s:int" />
              <s:element minOccurs="0" maxOccurs="1" name="Description" type="s:string" />
              <s:element minOccurs="0" maxOccurs="1" name="Comment" type="s:string" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="BaseObject" />
      <s:simpleType name="GroupType">
        <s:restriction base="s:string">
          <s:enumeration value="Any" />
          <s:enumeration value="Unknown" />
          <s:enumeration value="Union" />
          <s:enumeration value="Intersection" />
        </s:restriction>
      </s:simpleType>
      <s:element name="CreateResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="1" maxOccurs="1" name="CreateResult" type="s:long" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="Delete">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="userGuid" type="s:string" />
            <s:element minOccurs="1" maxOccurs="1" name="Id" type="s:long" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="DeleteResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="DeleteResult" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="Download">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="userGuid" type="s:string" />
            <s:element minOccurs="1" maxOccurs="1" name="Id" type="s:long" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="DownloadResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="DownloadResult" type="tns:Footprint" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="FindByPosition">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="userGuid" type="s:string" />
            <s:element minOccurs="1" maxOccurs="1" name="ra" type="s:double" />
            <s:element minOccurs="1" maxOccurs="1" name="dec" type="s:double" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="FindByPositionResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="FindByPositionResult" type="tns:ArrayOfFootprint" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="ArrayOfFootprint">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="Footprint" nillable="true" type="tns:Footprint" />
        </s:sequence>
      </s:complexType>
      <s:element name="FindByPositions">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="userGuid" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="pos" type="tns:ArrayOfRaDecPair" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="ArrayOfRaDecPair">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="RaDecPair" type="tns:RaDecPair" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="RaDecPair">
        <s:sequence>
          <s:element minOccurs="1" maxOccurs="1" name="Ra" type="s:double" />
          <s:element minOccurs="1" maxOccurs="1" name="Dec" type="s:double" />
        </s:sequence>
      </s:complexType>
      <s:element name="FindByPositionsResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="FindByPositionsResult" type="tns:ArrayOfFootprint" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="FindByKeyword">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="userGuid" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="keyword" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="FindByKeywordResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="FindByKeywordResult" type="tns:ArrayOfFootprint" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="string" nillable="true" type="s:string" />
      <s:element name="Footprint" nillable="true" type="tns:Footprint" />
      <s:element name="ArrayOfFootprint" nillable="true" type="tns:ArrayOfFootprint" />
    </s:schema>
    <s:schema elementFormDefault="qualified" targetNamespace="http://www.ivoa.net/xml/STC/stc-v1.30.xsd">
      <s:import namespace="http://www.w3.org/1999/xlink" />
      <s:complexType name="STCRegion">
        <s:complexContent mixed="false">
          <s:extension base="s1:stcMetadataType">
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="AstroCoordSystem" nillable="true" type="s1:astroCoordSystemType" />
              <s:choice minOccurs="1" maxOccurs="1">
                <s:element minOccurs="1" maxOccurs="1" name="AllSky" nillable="true" type="s1:allSkyType" />
                <s:element minOccurs="1" maxOccurs="1" name="Polygon" nillable="true" type="s1:polygonType" />
                <s:element minOccurs="1" maxOccurs="1" name="Sector" nillable="true" type="s1:sectorType" />
                <s:element minOccurs="1" maxOccurs="1" name="SkyIndex" nillable="true" type="s1:skyIndexType" />
                <s:element minOccurs="1" maxOccurs="1" name="Union" nillable="true" type="s1:unionType" />
                <s:element minOccurs="1" maxOccurs="1" name="Box" nillable="true" type="s1:boxType" />
                <s:element minOccurs="1" maxOccurs="1" name="Circle" nillable="true" type="s1:circleType" />
                <s:element minOccurs="1" maxOccurs="1" name="Convex" nillable="true" type="s1:convexType" />
                <s:element minOccurs="1" maxOccurs="1" name="ConvexHull" nillable="true" type="s1:convexHullType" />
                <s:element minOccurs="1" maxOccurs="1" name="Difference" nillable="true" type="s1:diffType" />
                <s:element minOccurs="1" maxOccurs="1" name="Ellipse" nillable="true" type="s1:ellipseType" />
                <s:element minOccurs="1" maxOccurs="1" name="Intersection" nillable="true" type="s1:intersectionType" />
                <s:element minOccurs="1" maxOccurs="1" name="Negation" nillable="true" type="s1:negationType" />
              </s:choice>
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="stcMetadataType" abstract="true">
        <s:complexContent mixed="false">
          <s:extension base="s1:stcBaseType" />
        </s:complexContent>
      </s:complexType>
      <s:complexType name="stcBaseType" abstract="true">
        <s:attribute name="id" type="s:ID" />
        <s:attribute name="idref" type="s:IDREF" />
        <s:attribute name="ucd" type="s:string" />
        <s:attribute ref="s2:type" />
        <s:attribute ref="s2:href" />
      </s:complexType>
      <s:complexType name="coordAreaType">
        <s:complexContent mixed="false">
          <s:extension base="s1:stcBaseType">
            <s:sequence>
              <s:choice minOccurs="0" maxOccurs="unbounded">
                <s:element minOccurs="1" maxOccurs="1" name="CoordScalarInterval" nillable="true" type="s1:uCoordScalarIntervalType" />
                <s:element minOccurs="1" maxOccurs="1" name="Coord3VecInterval" nillable="true" type="s1:uCoord3VecIntervalType" />
                <s:element minOccurs="1" maxOccurs="1" name="Coord2VecInterval" nillable="true" type="s1:uCoord2VecIntervalType" />
              </s:choice>
            </s:sequence>
            <s:attribute name="coord_system_id" type="s:IDREF" />
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="uCoordScalarIntervalType">
        <s:complexContent mixed="false">
          <s:extension base="s1:coordIntervalType">
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="LoLimit" nillable="true" type="s1:double1Type" />
              <s:element minOccurs="1" maxOccurs="1" name="HiLimit" nillable="true" type="s1:double1Type" />
            </s:sequence>
            <s:attribute name="unit" type="s:string" />
            <s:attribute name="frame_id" type="s:IDREF" />
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="coordIntervalType" abstract="true">
        <s:complexContent mixed="false">
          <s:extension base="s1:stcBaseType">
            <s:attribute default="true" name="lo_include" type="s:boolean" />
            <s:attribute default="true" name="hi_include" type="s:boolean" />
            <s:attribute default="1" name="fill_factor" type="s:float" />
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="spatialIntervalType" abstract="true">
        <s:complexContent mixed="false">
          <s:extension base="s1:coordIntervalType">
            <s:attribute name="epoch" type="s:decimal" />
            <s:attribute name="unit" type="s1:posUnitType" />
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:simpleType name="posUnitType">
        <s:restriction base="s:string">
          <s:enumeration value="deg" />
          <s:enumeration value="deg deg m" />
          <s:enumeration value="deg deg Mpc" />
          <s:enumeration value="rad" />
          <s:enumeration value="h" />
          <s:enumeration value="arcmin" />
          <s:enumeration value="arcsec" />
          <s:enumeration value="m" />
          <s:enumeration value="km" />
          <s:enumeration value="mm" />
          <s:enumeration value="AU" />
          <s:enumeration value="pc" />
          <s:enumeration value="kpc" />
          <s:enumeration value="Mpc" />
          <s:enumeration value="lyr" />
          <s:enumeration value="" />
        </s:restriction>
      </s:simpleType>
      <s:complexType name="sphereType">
        <s:complexContent mixed="false">
          <s:extension base="s1:spatialIntervalType">
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="Radius" nillable="true" type="s1:double1Type" />
              <s:element minOccurs="0" maxOccurs="1" name="Center" type="s1:double3Type" />
            </s:sequence>
            <s:attribute default="deg" name="radius_unit" type="s1:posUnitType" />
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="double1Type">
        <s:simpleContent>
          <s:extension base="s:double">
            <s:attribute name="id" type="s:ID" />
            <s:attribute name="idref" type="s:IDREF" />
            <s:attribute name="ucd" type="s:string" />
            <s:attribute ref="s2:type" />
            <s:attribute ref="s2:href" />
            <s:attribute name="time_unit" type="s1:timeUnitType" />
            <s:attribute name="pos_unit" type="s1:posUnitType" />
            <s:attribute name="pos_angle_unit" type="s1:angleUnitType" />
            <s:attribute name="vel_time_unit" type="s1:velTimeUnitType" />
            <s:attribute name="spectral_unit" type="s1:spectralUnitType" />
            <s:attribute name="gen_unit" type="s:string" />
          </s:extension>
        </s:simpleContent>
      </s:complexType>
      <s:simpleType name="timeUnitType">
        <s:restriction base="s:string">
          <s:enumeration value="s" />
          <s:enumeration value="h" />
          <s:enumeration value="d" />
          <s:enumeration value="a" />
          <s:enumeration value="yr" />
          <s:enumeration value="cy" />
          <s:enumeration value="" />
        </s:restriction>
      </s:simpleType>
      <s:simpleType name="angleUnitType">
        <s:restriction base="s:string">
          <s:enumeration value="deg" />
          <s:enumeration value="rad" />
          <s:enumeration value="h" />
          <s:enumeration value="arcmin" />
          <s:enumeration value="arcsec" />
        </s:restriction>
      </s:simpleType>
      <s:simpleType name="velTimeUnitType">
        <s:restriction base="s:string">
          <s:enumeration value="s" />
          <s:enumeration value="h" />
          <s:enumeration value="d" />
          <s:enumeration value="a" />
          <s:enumeration value="yr" />
          <s:enumeration value="cy" />
        </s:restriction>
      </s:simpleType>
      <s:simpleType name="spectralUnitType">
        <s:restriction base="s:string">
          <s:enumeration value="Hz" />
          <s:enumeration value="kHz" />
          <s:enumeration value="MHz" />
          <s:enumeration value="GHz" />
          <s:enumeration value="m" />
          <s:enumeration value="mm" />
          <s:enumeration value="um" />
          <s:enumeration value="nm" />
          <s:enumeration value="Angstrom" />
          <s:enumeration value="eV" />
          <s:enumeration value="keV" />
          <s:enumeration value="MeV" />
          <s:enumeration value="GeV" />
          <s:enumeration value="TeV" />
        </s:restriction>
      </s:simpleType>
      <s:complexType name="double3Type">
        <s:complexContent mixed="false">
          <s:extension base="s1:stcBaseType">
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="C1" nillable="true" type="s1:double1Type" />
              <s:element minOccurs="1" maxOccurs="1" name="C2" nillable="true" type="s1:double1Type" />
              <s:element minOccurs="1" maxOccurs="1" name="C3" nillable="true" type="s1:double1Type" />
            </s:sequence>
            <s:attribute name="unit" type="s1:posUnitType" />
            <s:attribute name="vel_time_unit" type="s1:velTimeUnitType" />
            <s:attribute name="gen_unit" type="s:string" />
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="size3Type">
        <s:complexContent mixed="false">
          <s:extension base="s1:double3Type">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="PosAngle1" type="s1:posAngleType" />
              <s:element minOccurs="0" maxOccurs="1" name="PosAngle2" type="s1:posAngleType" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="posAngleType">
        <s:simpleContent>
          <s:extension base="s:double">
            <s:attribute default="deg" name="unit" type="s1:angleUnitType" />
            <s:attribute default="X" name="reference" type="s1:posAngleReferenceType" />
            <s:attribute name="id" type="s:ID" />
            <s:attribute name="idref" type="s:IDREF" />
            <s:attribute name="ucd" type="s:string" />
            <s:attribute ref="s2:type" />
            <s:attribute ref="s2:href" />
          </s:extension>
        </s:simpleContent>
      </s:complexType>
      <s:simpleType name="posAngleReferenceType">
        <s:restriction base="s:string">
          <s:enumeration value="North" />
          <s:enumeration value="X" />
          <s:enumeration value="Y" />
        </s:restriction>
      </s:simpleType>
      <s:complexType name="regionFileType">
        <s:complexContent mixed="false">
          <s:extension base="s1:spatialIntervalType">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="File" type="s:anyURI" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="posScalarIntervalType">
        <s:complexContent mixed="false">
          <s:extension base="s1:spatialIntervalType">
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="LoLimit" nillable="true" type="s1:double1Type" />
              <s:element minOccurs="1" maxOccurs="1" name="HiLimit" nillable="true" type="s1:double1Type" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="pos2VecIntervalType">
        <s:complexContent mixed="false">
          <s:extension base="s1:spatialIntervalType">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="LoLimit2Vec" type="s1:double2Type" />
              <s:element minOccurs="0" maxOccurs="1" name="HiLimit2Vec" type="s1:double2Type" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="double2Type">
        <s:complexContent mixed="false">
          <s:extension base="s1:stcBaseType">
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="C1" nillable="true" type="s1:double1Type" />
              <s:element minOccurs="1" maxOccurs="1" name="C2" nillable="true" type="s1:double1Type" />
            </s:sequence>
            <s:attribute name="unit" type="s1:posUnitType" />
            <s:attribute name="vel_time_unit" type="s1:velTimeUnitType" />
            <s:attribute name="gen_unit" type="s:string" />
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="size2Type">
        <s:complexContent mixed="false">
          <s:extension base="s1:double2Type">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="PosAngle" type="s1:posAngleType" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="pos3VecIntervalType">
        <s:complexContent mixed="false">
          <s:extension base="s1:spatialIntervalType">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="LoLimit3Vec" type="s1:double3Type" />
              <s:element minOccurs="0" maxOccurs="1" name="HiLimit3Vec" type="s1:double3Type" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="velocityIntervalType" abstract="true">
        <s:complexContent mixed="false">
          <s:extension base="s1:spatialIntervalType">
            <s:attribute name="vel_time_unit" type="s1:velTimeUnitType" use="required" />
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="vel3VecIntervalType">
        <s:complexContent mixed="false">
          <s:extension base="s1:velocityIntervalType">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="LoLimit3Vec" type="s1:double3Type" />
              <s:element minOccurs="0" maxOccurs="1" name="HiLimit3Vec" type="s1:double3Type" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="velocitySphereType">
        <s:complexContent mixed="false">
          <s:extension base="s1:velocityIntervalType">
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="Radius" nillable="true" type="s1:double1Type" />
              <s:element minOccurs="0" maxOccurs="1" name="Center" type="s1:double3Type" />
            </s:sequence>
            <s:attribute default="deg" name="radius_unit" type="s1:posUnitType" />
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="velScalarIntervalType">
        <s:complexContent mixed="false">
          <s:extension base="s1:velocityIntervalType">
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="LoLimit" nillable="true" type="s1:double1Type" />
              <s:element minOccurs="1" maxOccurs="1" name="HiLimit" nillable="true" type="s1:double1Type" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="vel2VecIntervalType">
        <s:complexContent mixed="false">
          <s:extension base="s1:velocityIntervalType">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="LoLimit2Vec" type="s1:double2Type" />
              <s:element minOccurs="0" maxOccurs="1" name="HiLimit2Vec" type="s1:double2Type" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="regionType" abstract="true">
        <s:complexContent mixed="false">
          <s:extension base="s1:spatialIntervalType">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="Area" type="s1:regionAreaType" />
            </s:sequence>
            <s:attribute name="note" type="s:string" />
            <s:attribute name="coord_system_id" type="s:IDREF" />
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="regionAreaType">
        <s:simpleContent>
          <s:extension base="s:double">
            <s:attribute name="linearAreaUnit" type="s1:posUnitType" use="required" />
            <s:attribute name="validArea" type="s:boolean" use="required" />
          </s:extension>
        </s:simpleContent>
      </s:complexType>
      <s:complexType name="shapeType" abstract="true">
        <s:complexContent mixed="false">
          <s:extension base="s1:regionType" />
        </s:complexContent>
      </s:complexType>
      <s:complexType name="convexHullType">
        <s:complexContent mixed="false">
          <s:extension base="s1:shapeType">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="unbounded" name="Point" type="s1:double3Type" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="boxType">
        <s:complexContent mixed="false">
          <s:extension base="s1:shapeType">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="Center" type="s1:double2Type" />
              <s:element minOccurs="0" maxOccurs="1" name="Size" type="s1:double2Type" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="ellipseType">
        <s:complexContent mixed="false">
          <s:extension base="s1:shapeType">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="Center" type="s1:double2Type" />
              <s:element minOccurs="1" maxOccurs="1" name="SemiMajorAxis" nillable="true" type="s1:double1Type" />
              <s:element minOccurs="1" maxOccurs="1" name="SemiMinorAxis" nillable="true" type="s1:double1Type" />
              <s:element minOccurs="0" maxOccurs="1" name="PosAngle" type="s1:posAngleType" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="circleType">
        <s:complexContent mixed="false">
          <s:extension base="s1:shapeType">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="Center" type="s1:double2Type" />
              <s:element minOccurs="1" maxOccurs="1" name="Radius" nillable="true" type="s1:double1Type" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="skyIndexType" abstract="true">
        <s:complexContent mixed="false">
          <s:extension base="s1:shapeType" />
        </s:complexContent>
      </s:complexType>
      <s:complexType name="sectorType">
        <s:complexContent mixed="false">
          <s:extension base="s1:shapeType">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="Position" type="s1:double2Type" />
              <s:element minOccurs="0" maxOccurs="1" name="PosAngle1" type="s1:posAngleType" />
              <s:element minOccurs="0" maxOccurs="1" name="PosAngle2" type="s1:posAngleType" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="allSkyType">
        <s:complexContent mixed="false">
          <s:extension base="s1:shapeType" />
        </s:complexContent>
      </s:complexType>
      <s:complexType name="polygonType">
        <s:complexContent mixed="false">
          <s:extension base="s1:shapeType">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="unbounded" name="Vertex" type="s1:vertexType" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="vertexType">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="Position" type="s1:double2Type" />
          <s:element minOccurs="1" maxOccurs="1" name="SmallCircle" nillable="true" type="s1:smallCircleType" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="smallCircleType">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="Pole" type="s1:double2Type" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="convexType">
        <s:complexContent mixed="false">
          <s:extension base="s1:shapeType">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="unbounded" name="Halfspace" type="s1:halfspaceType" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="halfspaceType">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="Vector" type="s1:double3Type" />
          <s:element minOccurs="1" maxOccurs="1" name="Offset" type="s:double" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="intersectionType">
        <s:complexContent mixed="false">
          <s:extension base="s1:regionType">
            <s:sequence>
              <s:choice minOccurs="0" maxOccurs="unbounded">
                <s:element minOccurs="1" maxOccurs="1" name="ConvexHull" nillable="true" type="s1:convexHullType" />
                <s:element minOccurs="1" maxOccurs="1" name="Union" nillable="true" type="s1:unionType" />
                <s:element minOccurs="1" maxOccurs="1" name="Polygon" nillable="true" type="s1:polygonType" />
                <s:element minOccurs="1" maxOccurs="1" name="Circle" nillable="true" type="s1:circleType" />
                <s:element minOccurs="1" maxOccurs="1" name="Difference" nillable="true" type="s1:diffType" />
                <s:element minOccurs="1" maxOccurs="1" name="Ellipse" nillable="true" type="s1:ellipseType" />
                <s:element minOccurs="1" maxOccurs="1" name="Convex" nillable="true" type="s1:convexType" />
                <s:element minOccurs="1" maxOccurs="1" name="Sector" nillable="true" type="s1:sectorType" />
                <s:element minOccurs="1" maxOccurs="1" name="SkyIndex" nillable="true" type="s1:skyIndexType" />
                <s:element minOccurs="1" maxOccurs="1" name="Intersection" nillable="true" type="s1:intersectionType" />
                <s:element minOccurs="1" maxOccurs="1" name="AllSky" nillable="true" type="s1:allSkyType" />
                <s:element minOccurs="1" maxOccurs="1" name="Negation" nillable="true" type="s1:negationType" />
                <s:element minOccurs="1" maxOccurs="1" name="Box" nillable="true" type="s1:boxType" />
              </s:choice>
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="unionType">
        <s:complexContent mixed="false">
          <s:extension base="s1:regionType">
            <s:sequence>
              <s:choice minOccurs="0" maxOccurs="unbounded">
                <s:element minOccurs="1" maxOccurs="1" name="Circle" nillable="true" type="s1:circleType" />
                <s:element minOccurs="1" maxOccurs="1" name="Negation" nillable="true" type="s1:negationType" />
                <s:element minOccurs="1" maxOccurs="1" name="Union" nillable="true" type="s1:unionType" />
                <s:element minOccurs="1" maxOccurs="1" name="Polygon" nillable="true" type="s1:polygonType" />
                <s:element minOccurs="1" maxOccurs="1" name="AllSky" nillable="true" type="s1:allSkyType" />
                <s:element minOccurs="1" maxOccurs="1" name="Box" nillable="true" type="s1:boxType" />
                <s:element minOccurs="1" maxOccurs="1" name="Convex" nillable="true" type="s1:convexType" />
                <s:element minOccurs="1" maxOccurs="1" name="ConvexHull" nillable="true" type="s1:convexHullType" />
                <s:element minOccurs="1" maxOccurs="1" name="Sector" nillable="true" type="s1:sectorType" />
                <s:element minOccurs="1" maxOccurs="1" name="SkyIndex" nillable="true" type="s1:skyIndexType" />
                <s:element minOccurs="1" maxOccurs="1" name="Difference" nillable="true" type="s1:diffType" />
                <s:element minOccurs="1" maxOccurs="1" name="Ellipse" nillable="true" type="s1:ellipseType" />
                <s:element minOccurs="1" maxOccurs="1" name="Intersection" nillable="true" type="s1:intersectionType" />
              </s:choice>
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="negationType">
        <s:complexContent mixed="false">
          <s:extension base="s1:regionType">
            <s:sequence>
              <s:choice minOccurs="1" maxOccurs="1">
                <s:element minOccurs="1" maxOccurs="1" name="AllSky" nillable="true" type="s1:allSkyType" />
                <s:element minOccurs="1" maxOccurs="1" name="Polygon" nillable="true" type="s1:polygonType" />
                <s:element minOccurs="1" maxOccurs="1" name="Union" nillable="true" type="s1:unionType" />
                <s:element minOccurs="1" maxOccurs="1" name="SkyIndex" nillable="true" type="s1:skyIndexType" />
                <s:element minOccurs="1" maxOccurs="1" name="Intersection" nillable="true" type="s1:intersectionType" />
                <s:element minOccurs="1" maxOccurs="1" name="Negation" nillable="true" type="s1:negationType" />
                <s:element minOccurs="1" maxOccurs="1" name="Sector" nillable="true" type="s1:sectorType" />
                <s:element minOccurs="1" maxOccurs="1" name="Box" nillable="true" type="s1:boxType" />
                <s:element minOccurs="1" maxOccurs="1" name="Circle" nillable="true" type="s1:circleType" />
                <s:element minOccurs="1" maxOccurs="1" name="Convex" nillable="true" type="s1:convexType" />
                <s:element minOccurs="1" maxOccurs="1" name="ConvexHull" nillable="true" type="s1:convexHullType" />
                <s:element minOccurs="1" maxOccurs="1" name="Difference" nillable="true" type="s1:diffType" />
                <s:element minOccurs="1" maxOccurs="1" name="Ellipse" nillable="true" type="s1:ellipseType" />
              </s:choice>
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="diffType">
        <s:complexContent mixed="false">
          <s:extension base="s1:regionType">
            <s:sequence>
              <s:choice minOccurs="1" maxOccurs="1">
                <s:element minOccurs="1" maxOccurs="1" name="Polygon" nillable="true" type="s1:polygonType" />
                <s:element minOccurs="1" maxOccurs="1" name="AllSky" nillable="true" type="s1:allSkyType" />
                <s:element minOccurs="1" maxOccurs="1" name="Sector" nillable="true" type="s1:sectorType" />
                <s:element minOccurs="1" maxOccurs="1" name="SkyIndex" nillable="true" type="s1:skyIndexType" />
                <s:element minOccurs="1" maxOccurs="1" name="Union" nillable="true" type="s1:unionType" />
                <s:element minOccurs="1" maxOccurs="1" name="Box" nillable="true" type="s1:boxType" />
                <s:element minOccurs="1" maxOccurs="1" name="Circle" nillable="true" type="s1:circleType" />
                <s:element minOccurs="1" maxOccurs="1" name="Convex" nillable="true" type="s1:convexType" />
                <s:element minOccurs="1" maxOccurs="1" name="ConvexHull" nillable="true" type="s1:convexHullType" />
                <s:element minOccurs="1" maxOccurs="1" name="Difference" nillable="true" type="s1:diffType" />
                <s:element minOccurs="1" maxOccurs="1" name="Ellipse" nillable="true" type="s1:ellipseType" />
                <s:element minOccurs="1" maxOccurs="1" name="Intersection" nillable="true" type="s1:intersectionType" />
                <s:element minOccurs="1" maxOccurs="1" name="Negation" nillable="true" type="s1:negationType" />
              </s:choice>
              <s:choice minOccurs="1" maxOccurs="1">
                <s:element minOccurs="1" maxOccurs="1" name="Convex2" nillable="true" type="s1:convexType" />
                <s:element minOccurs="1" maxOccurs="1" name="Ellipse2" nillable="true" type="s1:ellipseType" />
                <s:element minOccurs="1" maxOccurs="1" name="Intersection2" nillable="true" type="s1:intersectionType" />
                <s:element minOccurs="1" maxOccurs="1" name="Difference2" nillable="true" type="s1:diffType" />
                <s:element minOccurs="1" maxOccurs="1" name="Negation2" nillable="true" type="s1:negationType" />
                <s:element minOccurs="1" maxOccurs="1" name="ConvexHull2" nillable="true" type="s1:convexHullType" />
                <s:element minOccurs="1" maxOccurs="1" name="Union2" nillable="true" type="s1:unionType" />
                <s:element minOccurs="1" maxOccurs="1" name="Box2" nillable="true" type="s1:boxType" />
                <s:element minOccurs="1" maxOccurs="1" name="Circle2" nillable="true" type="s1:circleType" />
                <s:element minOccurs="1" maxOccurs="1" name="AllSky2" nillable="true" type="s1:allSkyType" />
                <s:element minOccurs="1" maxOccurs="1" name="Polygon2" nillable="true" type="s1:polygonType" />
                <s:element minOccurs="1" maxOccurs="1" name="Sector2" nillable="true" type="s1:sectorType" />
                <s:element minOccurs="1" maxOccurs="1" name="SkyIndex2" nillable="true" type="s1:skyIndexType" />
              </s:choice>
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="timeIntervalType">
        <s:complexContent mixed="false">
          <s:extension base="s1:coordIntervalType">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="StartTime" type="s1:astronTimeType" />
              <s:element minOccurs="0" maxOccurs="1" name="StopTime" type="s1:astronTimeType" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="astronTimeType">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="Timescale" type="s1:timeScaleType" />
          <s:element minOccurs="1" maxOccurs="1" name="TimeOffset" nillable="true" type="s1:timeOffsetType" />
          <s:choice minOccurs="1" maxOccurs="1">
            <s:element minOccurs="1" maxOccurs="1" name="JDTime" nillable="true" type="s1:jdTimeType" />
            <s:element minOccurs="1" maxOccurs="1" name="ISOTime" nillable="true" type="s1:isoTimeType" />
            <s:element minOccurs="1" maxOccurs="1" name="MJDTime" nillable="true" type="s1:jdTimeType" />
            <s:element minOccurs="1" maxOccurs="1" name="TimeOrigin" type="s1:relocatableOriginType" />
          </s:choice>
        </s:sequence>
      </s:complexType>
      <s:simpleType name="timeScaleType">
        <s:restriction base="s:string">
          <s:enumeration value="TT" />
          <s:enumeration value="TDT" />
          <s:enumeration value="ET" />
          <s:enumeration value="TDB" />
          <s:enumeration value="TEB" />
          <s:enumeration value="TCG" />
          <s:enumeration value="TCB" />
          <s:enumeration value="TAI" />
          <s:enumeration value="IAT" />
          <s:enumeration value="UTC" />
          <s:enumeration value="LST" />
          <s:enumeration value="GMST" />
          <s:enumeration value="LOCAL" />
        </s:restriction>
      </s:simpleType>
      <s:complexType name="timeOffsetType">
        <s:simpleContent>
          <s:extension base="s:decimal">
            <s:attribute name="id" type="s:ID" />
            <s:attribute name="idref" type="s:IDREF" />
            <s:attribute name="ucd" type="s:string" />
            <s:attribute ref="s2:type" />
            <s:attribute ref="s2:href" />
            <s:attribute default="s" name="unit" type="s1:timeUnitType" />
          </s:extension>
        </s:simpleContent>
      </s:complexType>
      <s:complexType name="jdTimeType">
        <s:simpleContent>
          <s:extension base="s:decimal">
            <s:attribute name="id" type="s:ID" />
            <s:attribute name="idref" type="s:IDREF" />
            <s:attribute name="ucd" type="s:string" />
            <s:attribute ref="s2:type" />
            <s:attribute ref="s2:href" />
          </s:extension>
        </s:simpleContent>
      </s:complexType>
      <s:complexType name="isoTimeType">
        <s:simpleContent>
          <s:extension base="s:dateTime">
            <s:attribute name="id" type="s:ID" />
            <s:attribute name="idref" type="s:IDREF" />
            <s:attribute name="ucd" type="s:string" />
            <s:attribute ref="s2:type" />
            <s:attribute ref="s2:href" />
          </s:extension>
        </s:simpleContent>
      </s:complexType>
      <s:simpleType name="relocatableOriginType">
        <s:restriction base="s:string">
          <s:enumeration value="RELOCATABLE" />
        </s:restriction>
      </s:simpleType>
      <s:complexType name="coordScalarIntervalType">
        <s:complexContent mixed="false">
          <s:extension base="s1:coordIntervalType">
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="LoLimit" nillable="true" type="s1:double1Type" />
              <s:element minOccurs="1" maxOccurs="1" name="HiLimit" nillable="true" type="s1:double1Type" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="redshiftIntervalType">
        <s:complexContent mixed="false">
          <s:extension base="s1:coordScalarIntervalType">
            <s:attribute name="unit" type="s1:posUnitType" />
            <s:attribute name="vel_time_unit" type="s1:velTimeUnitType" />
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="spectralIntervalType">
        <s:complexContent mixed="false">
          <s:extension base="s1:coordScalarIntervalType">
            <s:attribute name="unit" type="s1:spectralUnitType" use="required" />
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="coord2VecIntervalType">
        <s:complexContent mixed="false">
          <s:extension base="s1:coordIntervalType">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="LoLimit2Vec" type="s1:double2Type" />
              <s:element minOccurs="0" maxOccurs="1" name="HiLimit2Vec" type="s1:double2Type" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="coord3VecIntervalType">
        <s:complexContent mixed="false">
          <s:extension base="s1:coordIntervalType">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="LoLimit3Vec" type="s1:double3Type" />
              <s:element minOccurs="0" maxOccurs="1" name="HiLimit3Vec" type="s1:double3Type" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="uCoord2VecIntervalType">
        <s:complexContent mixed="false">
          <s:extension base="s1:coordIntervalType">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="LoLimit2Vec" type="s1:double2Type" />
              <s:element minOccurs="0" maxOccurs="1" name="HiLimit2Vec" type="s1:double2Type" />
            </s:sequence>
            <s:attribute name="unit" type="s:string" />
            <s:attribute name="frame_id" type="s:IDREF" />
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="uCoord3VecIntervalType">
        <s:complexContent mixed="false">
          <s:extension base="s1:coordIntervalType">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="LoLimit3Vec" type="s1:double3Type" />
              <s:element minOccurs="0" maxOccurs="1" name="HiLimit3Vec" type="s1:double3Type" />
            </s:sequence>
            <s:attribute name="unit" type="s:string" />
            <s:attribute name="frame_id" type="s:IDREF" />
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="astroCoordAreaType">
        <s:complexContent mixed="false">
          <s:extension base="s1:coordAreaType">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="unbounded" name="TimeInterval" type="s1:timeIntervalType" />
              <s:choice minOccurs="1" maxOccurs="1">
                <s:element minOccurs="1" maxOccurs="1" name="Position3VecInterval" nillable="true" type="s1:pos3VecIntervalType" />
                <s:element minOccurs="1" maxOccurs="1" name="RegionFile" nillable="true" type="s1:regionFileType" />
                <s:element minOccurs="1" maxOccurs="1" name="Sphere" nillable="true" type="s1:sphereType" />
                <s:element minOccurs="1" maxOccurs="1" name="Position2VecInterval" nillable="true" type="s1:pos2VecIntervalType" />
                <s:element minOccurs="1" maxOccurs="1" name="PositionScalarInterval" nillable="true" type="s1:posScalarIntervalType" />
              </s:choice>
              <s:choice minOccurs="0" maxOccurs="unbounded">
                <s:element minOccurs="1" maxOccurs="1" name="VelocitySphere" nillable="true" type="s1:velocitySphereType" />
                <s:element minOccurs="1" maxOccurs="1" name="Velocity2VecInterval" nillable="true" type="s1:vel2VecIntervalType" />
                <s:element minOccurs="1" maxOccurs="1" name="Velocity3VecInterval" nillable="true" type="s1:vel3VecIntervalType" />
                <s:element minOccurs="1" maxOccurs="1" name="VelocityScalarInterval" nillable="true" type="s1:velScalarIntervalType" />
              </s:choice>
              <s:element minOccurs="0" maxOccurs="unbounded" name="SpectralInterval" type="s1:spectralIntervalType" />
              <s:element minOccurs="0" maxOccurs="unbounded" name="RedshiftInterval" type="s1:redshiftIntervalType" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="pixelCoordAreaType">
        <s:complexContent mixed="false">
          <s:extension base="s1:coordAreaType">
            <s:sequence>
              <s:choice minOccurs="0" maxOccurs="unbounded">
                <s:element minOccurs="1" maxOccurs="1" name="PixelCoord3VecInterval" nillable="true" type="s1:coord3VecIntervalType" />
                <s:element minOccurs="1" maxOccurs="1" name="PixelCoord2VecInterval" nillable="true" type="s1:coord2VecIntervalType" />
                <s:element minOccurs="1" maxOccurs="1" name="PixelCoordScalarInterval" nillable="true" type="s1:coordScalarIntervalType" />
              </s:choice>
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="coordsType">
        <s:complexContent mixed="false">
          <s:extension base="s1:stcBaseType">
            <s:sequence>
              <s:choice minOccurs="0" maxOccurs="unbounded">
                <s:element minOccurs="1" maxOccurs="1" name="Vector2DCoordinate" nillable="true" type="s1:genVector2CoordinateType" />
                <s:element minOccurs="1" maxOccurs="1" name="StringCoordinate" nillable="true" type="s1:stringCoordinateType" />
                <s:element minOccurs="1" maxOccurs="1" name="ScalarCoordinate" nillable="true" type="s1:scalarCoordinateType" />
                <s:element minOccurs="1" maxOccurs="1" name="Vector3DCoordinate" nillable="true" type="s1:genVector3CoordinateType" />
              </s:choice>
            </s:sequence>
            <s:attribute name="coord_system_id" type="s:IDREF" />
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="genVector2CoordinateType">
        <s:complexContent mixed="false">
          <s:extension base="s1:vector2CoordinateType">
            <s:attribute name="unit" type="s:string" />
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="vector2CoordinateType">
        <s:complexContent mixed="false">
          <s:extension base="s1:coordinateType">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="Name1" type="s:string" />
              <s:element minOccurs="0" maxOccurs="1" name="Name2" type="s:string" />
              <s:choice minOccurs="1" maxOccurs="1">
                <s:element minOccurs="1" maxOccurs="1" name="Value2" nillable="true" type="s1:double2Type" />
                <s:element minOccurs="0" maxOccurs="1" name="Curve2" type="s1:curve2Type" />
              </s:choice>
              <s:choice minOccurs="0" maxOccurs="unbounded">
                <s:element minOccurs="1" maxOccurs="1" name="Error2Radius" nillable="true" type="s1:double1Type" />
                <s:element minOccurs="1" maxOccurs="1" name="Error2" nillable="true" type="s1:size2Type" />
                <s:element minOccurs="1" maxOccurs="1" name="Error2Matrix" nillable="true" type="s1:double4Type" />
              </s:choice>
              <s:choice minOccurs="0" maxOccurs="unbounded">
                <s:element minOccurs="1" maxOccurs="1" name="Resolution2" nillable="true" type="s1:size2Type" />
                <s:element minOccurs="1" maxOccurs="1" name="Resolution2Radius" nillable="true" type="s1:double1Type" />
                <s:element minOccurs="1" maxOccurs="1" name="Resolution2Matrix" nillable="true" type="s1:double4Type" />
              </s:choice>
              <s:choice minOccurs="0" maxOccurs="unbounded">
                <s:element minOccurs="1" maxOccurs="1" name="Size2Matrix" nillable="true" type="s1:double4Type" />
                <s:element minOccurs="1" maxOccurs="1" name="Size2Radius" nillable="true" type="s1:double1Type" />
                <s:element minOccurs="1" maxOccurs="1" name="Size2" nillable="true" type="s1:size2Type" />
              </s:choice>
              <s:choice minOccurs="0" maxOccurs="unbounded">
                <s:element minOccurs="1" maxOccurs="1" name="PixSize2" nillable="true" type="s1:size2Type" />
                <s:element minOccurs="1" maxOccurs="1" name="PixSize2Matrix" nillable="true" type="s1:double4Type" />
              </s:choice>
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="coordinateType" abstract="true">
        <s:complexContent mixed="false">
          <s:extension base="s1:stcBaseType">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="Name" type="s:string" />
            </s:sequence>
            <s:attribute name="frame_id" type="s:IDREF" />
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="vector3CoordinateType">
        <s:complexContent mixed="false">
          <s:extension base="s1:coordinateType">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="Name1" type="s:string" />
              <s:element minOccurs="0" maxOccurs="1" name="Name2" type="s:string" />
              <s:element minOccurs="0" maxOccurs="1" name="Name3" type="s:string" />
              <s:choice minOccurs="1" maxOccurs="1">
                <s:element minOccurs="0" maxOccurs="1" name="Curve3" type="s1:curve3Type" />
                <s:element minOccurs="1" maxOccurs="1" name="Value3" nillable="true" type="s1:double3Type" />
              </s:choice>
              <s:choice minOccurs="0" maxOccurs="unbounded">
                <s:element minOccurs="1" maxOccurs="1" name="Error3Radius" nillable="true" type="s1:double1Type" />
                <s:element minOccurs="1" maxOccurs="1" name="Error3" nillable="true" type="s1:size3Type" />
                <s:element minOccurs="1" maxOccurs="1" name="Error3Matrix" nillable="true" type="s1:double9Type" />
              </s:choice>
              <s:choice minOccurs="0" maxOccurs="unbounded">
                <s:element minOccurs="0" maxOccurs="1" name="Resolution3" type="s1:size3Type" />
                <s:element minOccurs="1" maxOccurs="1" name="Resolution3Matrix" nillable="true" type="s1:double9Type" />
                <s:element minOccurs="1" maxOccurs="1" name="Resolution3Radius" nillable="true" type="s1:double1Type" />
              </s:choice>
              <s:choice minOccurs="0" maxOccurs="unbounded">
                <s:element minOccurs="1" maxOccurs="1" name="Size3Matrix" nillable="true" type="s1:double9Type" />
                <s:element minOccurs="1" maxOccurs="1" name="Size3Radius" nillable="true" type="s1:double1Type" />
                <s:element minOccurs="0" maxOccurs="1" name="Size3" type="s1:size3Type" />
              </s:choice>
              <s:choice minOccurs="0" maxOccurs="unbounded">
                <s:element minOccurs="1" maxOccurs="1" name="PixSize3Matrix" nillable="true" type="s1:double9Type" />
                <s:element minOccurs="0" maxOccurs="1" name="PixSize3" type="s1:size3Type" />
              </s:choice>
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="curve3Type">
        <s:sequence>
          <s:element minOccurs="1" maxOccurs="1" name="P1" nillable="true" type="s1:double3Type" />
          <s:element minOccurs="1" maxOccurs="1" name="P2" nillable="true" type="s1:double3Type" />
        </s:sequence>
        <s:attribute default="line" name="curve_shape" type="s:string" />
      </s:complexType>
      <s:complexType name="double9Type">
        <s:complexContent mixed="false">
          <s:extension base="s1:stcBaseType">
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="M11" nillable="true" type="s:double" />
              <s:element minOccurs="1" maxOccurs="1" name="M12" nillable="true" type="s:double" />
              <s:element minOccurs="1" maxOccurs="1" name="M13" nillable="true" type="s:double" />
              <s:element minOccurs="1" maxOccurs="1" name="M21" nillable="true" type="s:double" />
              <s:element minOccurs="1" maxOccurs="1" name="M22" nillable="true" type="s:double" />
              <s:element minOccurs="1" maxOccurs="1" name="M23" nillable="true" type="s:double" />
              <s:element minOccurs="1" maxOccurs="1" name="M31" nillable="true" type="s:double" />
              <s:element minOccurs="1" maxOccurs="1" name="M32" nillable="true" type="s:double" />
              <s:element minOccurs="1" maxOccurs="1" name="M33" nillable="true" type="s:double" />
            </s:sequence>
            <s:attribute name="unit" type="s1:posUnitType" />
            <s:attribute name="vel_time_unit" type="s1:velTimeUnitType" />
            <s:attribute name="gen_unit" type="s:string" />
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="genVector3CoordinateType">
        <s:complexContent mixed="false">
          <s:extension base="s1:vector3CoordinateType">
            <s:attribute name="unit" type="s:string" />
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="posVector3CoordinateType">
        <s:complexContent mixed="false">
          <s:extension base="s1:vector3CoordinateType">
            <s:attribute name="coord_system_id" type="s:IDREF" />
            <s:attribute name="unit" type="s1:posUnitType" />
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="velVector3CoordinateType">
        <s:complexContent mixed="false">
          <s:extension base="s1:posVector3CoordinateType">
            <s:attribute name="vel_time_unit" type="s1:velTimeUnitType" />
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="stringCoordinateType">
        <s:complexContent mixed="false">
          <s:extension base="s1:coordinateType">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="Value" type="s:string" />
            </s:sequence>
            <s:attribute name="unit" type="s:string" />
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="astroCoordsFileType">
        <s:complexContent mixed="false">
          <s:extension base="s1:coordinateType">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="FITSFile" type="s1:fitsType" />
              <s:element minOccurs="0" maxOccurs="1" name="FITSTime" type="s1:coordFITSColumnsType" />
              <s:element minOccurs="0" maxOccurs="1" name="FITSPosition" type="s1:coordFITSColumnsType" />
              <s:element minOccurs="0" maxOccurs="1" name="FITSVelocity" type="s1:coordFITSColumnsType" />
              <s:element minOccurs="0" maxOccurs="1" name="FITSSpectral" type="s1:coordFITSColumnsType" />
              <s:element minOccurs="0" maxOccurs="1" name="FITSRedshift" type="s1:coordFITSColumnsType" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="fitsType">
        <s:simpleContent>
          <s:extension base="s:anyURI">
            <s:attribute name="hdu_num" type="s:integer" />
            <s:attribute name="hdu_name" type="s:string" />
          </s:extension>
        </s:simpleContent>
      </s:complexType>
      <s:complexType name="coordFITSColumnsType">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="Name" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Value" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Error" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Resolution" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Size" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="PixSize" type="s:string" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="orbitType">
        <s:complexContent mixed="false">
          <s:extension base="s1:coordinateType">
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="a" nillable="true" type="s1:double1Type" />
              <s:element minOccurs="1" maxOccurs="1" name="e" nillable="true" type="s1:double1Type" />
              <s:element minOccurs="1" maxOccurs="1" name="i" nillable="true" type="s1:double1Type" />
              <s:element minOccurs="1" maxOccurs="1" name="Node" nillable="true" type="s1:double1Type" />
              <s:element minOccurs="1" maxOccurs="1" name="Aop" nillable="true" type="s1:double1Type" />
              <s:element minOccurs="0" maxOccurs="1" name="T" type="s1:astronTimeType" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="pixelVector3CoordinateType">
        <s:complexContent mixed="false">
          <s:extension base="s1:coordinateType">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="Name1" type="s:string" />
              <s:element minOccurs="0" maxOccurs="1" name="Name2" type="s:string" />
              <s:element minOccurs="0" maxOccurs="1" name="Name3" type="s:string" />
              <s:element minOccurs="1" maxOccurs="1" name="Value3" nillable="true" type="s1:double3Type" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="pixelVector1CoordinateType">
        <s:complexContent mixed="false">
          <s:extension base="s1:coordinateType">
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="Value" nillable="true" type="s1:double1Type" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="timeCoordinateType">
        <s:complexContent mixed="false">
          <s:extension base="s1:coordinateType">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="TimeInstant" type="s1:astronTimeType" />
              <s:element minOccurs="0" maxOccurs="unbounded" name="Error" nillable="true" type="s1:double1Type" />
              <s:element minOccurs="0" maxOccurs="unbounded" name="Resolution" nillable="true" type="s1:double1Type" />
              <s:element minOccurs="0" maxOccurs="unbounded" name="Size" nillable="true" type="s1:double1Type" />
              <s:element minOccurs="0" maxOccurs="unbounded" name="PixSize" nillable="true" type="s1:double1Type" />
            </s:sequence>
            <s:attribute name="coord_system_id" type="s:IDREF" />
            <s:attribute default="s" name="unit" type="s1:timeUnitType" />
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="pixelVector2CoordinateType">
        <s:complexContent mixed="false">
          <s:extension base="s1:coordinateType">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="Name1" type="s:string" />
              <s:element minOccurs="0" maxOccurs="1" name="Name2" type="s:string" />
              <s:element minOccurs="1" maxOccurs="1" name="Value2" nillable="true" type="s1:double2Type" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="basicCoordinateType">
        <s:complexContent mixed="false">
          <s:extension base="s1:coordinateType">
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="Value" nillable="true" type="s1:double1Type" />
              <s:element minOccurs="0" maxOccurs="unbounded" name="Error" nillable="true" type="s1:double1Type" />
              <s:element minOccurs="0" maxOccurs="unbounded" name="Resolution" nillable="true" type="s1:double1Type" />
              <s:element minOccurs="0" maxOccurs="unbounded" name="Size" nillable="true" type="s1:double1Type" />
              <s:element minOccurs="0" maxOccurs="unbounded" name="PixSize" nillable="true" type="s1:double1Type" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="scalarCoordinateType">
        <s:complexContent mixed="false">
          <s:extension base="s1:basicCoordinateType">
            <s:attribute name="unit" type="s:string" />
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="posVector1CoordinateType">
        <s:complexContent mixed="false">
          <s:extension base="s1:basicCoordinateType">
            <s:attribute name="coord_system_id" type="s:IDREF" />
            <s:attribute name="unit" type="s1:posUnitType" />
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="velVector1CoordinateType">
        <s:complexContent mixed="false">
          <s:extension base="s1:posVector1CoordinateType">
            <s:attribute name="vel_time_unit" type="s1:velTimeUnitType" />
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="spectralCoordinateType">
        <s:complexContent mixed="false">
          <s:extension base="s1:basicCoordinateType">
            <s:attribute name="coord_system_id" type="s:IDREF" />
            <s:attribute name="unit" type="s1:spectralUnitType" />
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="redshiftCoordinateType">
        <s:complexContent mixed="false">
          <s:extension base="s1:basicCoordinateType">
            <s:attribute name="coord_system_id" type="s:IDREF" />
            <s:attribute name="unit" type="s1:posUnitType" />
            <s:attribute name="vel_time_unit" type="s1:velTimeUnitType" />
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="curve2Type">
        <s:sequence>
          <s:element minOccurs="1" maxOccurs="1" name="P1" nillable="true" type="s1:double2Type" />
          <s:element minOccurs="1" maxOccurs="1" name="P2" nillable="true" type="s1:double2Type" />
        </s:sequence>
        <s:attribute default="line" name="curve_shape" type="s:string" />
      </s:complexType>
      <s:complexType name="double4Type">
        <s:complexContent mixed="false">
          <s:extension base="s1:stcBaseType">
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="M11" nillable="true" type="s:double" />
              <s:element minOccurs="1" maxOccurs="1" name="M12" nillable="true" type="s:double" />
              <s:element minOccurs="1" maxOccurs="1" name="M21" nillable="true" type="s:double" />
              <s:element minOccurs="1" maxOccurs="1" name="M22" nillable="true" type="s:double" />
            </s:sequence>
            <s:attribute name="unit" type="s1:posUnitType" />
            <s:attribute name="vel_time_unit" type="s1:velTimeUnitType" />
            <s:attribute name="gen_unit" type="s:string" />
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="posVector2CoordinateType">
        <s:complexContent mixed="false">
          <s:extension base="s1:vector2CoordinateType">
            <s:attribute name="coord_system_id" type="s:IDREF" />
            <s:attribute name="unit" type="s1:posUnitType" />
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="velVector2CoordinateType">
        <s:complexContent mixed="false">
          <s:extension base="s1:posVector2CoordinateType">
            <s:attribute name="vel_time_unit" type="s1:velTimeUnitType" />
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="astroCoordsType">
        <s:complexContent mixed="false">
          <s:extension base="s1:coordsType">
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="Time" nillable="true" type="s1:timeCoordinateType" />
              <s:choice minOccurs="1" maxOccurs="1">
                <s:element minOccurs="1" maxOccurs="1" name="Position3D" nillable="true" type="s1:posVector3CoordinateType" />
                <s:element minOccurs="1" maxOccurs="1" name="Position2D" nillable="true" type="s1:posVector2CoordinateType" />
                <s:element minOccurs="1" maxOccurs="1" name="Position1D" nillable="true" type="s1:posVector1CoordinateType" />
              </s:choice>
              <s:choice minOccurs="1" maxOccurs="1">
                <s:element minOccurs="1" maxOccurs="1" name="Velocity1D" nillable="true" type="s1:velVector1CoordinateType" />
                <s:element minOccurs="1" maxOccurs="1" name="Velocity2D" nillable="true" type="s1:velVector2CoordinateType" />
                <s:element minOccurs="1" maxOccurs="1" name="Velocity3D" nillable="true" type="s1:velVector3CoordinateType" />
              </s:choice>
              <s:element minOccurs="1" maxOccurs="1" name="Spectral" nillable="true" type="s1:spectralCoordinateType" />
              <s:element minOccurs="1" maxOccurs="1" name="Redshift" nillable="true" type="s1:redshiftCoordinateType" />
              <s:element minOccurs="1" maxOccurs="1" name="CoordFile" nillable="true" type="s1:astroCoordsFileType" />
              <s:element minOccurs="1" maxOccurs="1" name="Orbit" nillable="true" type="s1:orbitType" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="pixelCoordsType">
        <s:complexContent mixed="false">
          <s:extension base="s1:coordsType">
            <s:sequence>
              <s:choice minOccurs="0" maxOccurs="unbounded">
                <s:element minOccurs="1" maxOccurs="1" name="Pixel2D" nillable="true" type="s1:pixelVector2CoordinateType" />
                <s:element minOccurs="1" maxOccurs="1" name="Pixel3D" nillable="true" type="s1:pixelVector3CoordinateType" />
                <s:element minOccurs="1" maxOccurs="1" name="Pixel1D" nillable="true" type="s1:pixelVector1CoordinateType" />
              </s:choice>
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="coordFrameType">
        <s:complexContent mixed="false">
          <s:extension base="s1:stcBaseType">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="Name" type="s:string" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="genericCoordFrameType">
        <s:complexContent mixed="false">
          <s:extension base="s1:coordFrameType">
            <s:sequence>
              <s:choice minOccurs="1" maxOccurs="1">
                <s:element minOccurs="0" maxOccurs="1" name="Cart3DRefFrame" type="s1:cart3DRefFrameType" />
                <s:element minOccurs="0" maxOccurs="1" name="CoordRefFrame" type="s1:coordRefFrameType" />
                <s:element minOccurs="0" maxOccurs="1" name="ScalarRefFrame" type="s1:cart1DRefFrameType" />
                <s:element minOccurs="0" maxOccurs="1" name="Cart2DRefFrame" type="s1:cart2DRefFrameType" />
                <s:element minOccurs="0" maxOccurs="1" name="SphericalRefFrame" type="s1:sphericalRefFrameType" />
              </s:choice>
              <s:element minOccurs="0" maxOccurs="1" name="CoordRefPos" type="s1:genericRefPosType" />
              <s:choice minOccurs="1" maxOccurs="1">
                <s:element minOccurs="0" maxOccurs="1" name="POLAR" type="s1:coordFlavorType" />
                <s:element minOccurs="0" maxOccurs="1" name="UNITSPHERE" type="s1:coordFlavorType" />
                <s:element minOccurs="0" maxOccurs="1" name="STRING" type="s1:coordFlavorType" />
                <s:element minOccurs="0" maxOccurs="1" name="HEALPIX" type="s1:healpixType" />
                <s:element minOccurs="0" maxOccurs="1" name="CARTESIAN" type="s1:coordFlavorType" />
                <s:element minOccurs="0" maxOccurs="1" name="SPHERICAL" type="s1:coordFlavorType" />
              </s:choice>
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="cart3DRefFrameType">
        <s:complexContent mixed="false">
          <s:extension base="s1:coordRefFrameType">
            <s:sequence>
              <s:choice minOccurs="1" maxOccurs="1">
                <s:element minOccurs="1" maxOccurs="1" name="Transform3" nillable="true" type="s1:size3Type" />
                <s:element minOccurs="1" maxOccurs="1" name="Transform3Matrix" nillable="true" type="s1:double9Type" />
              </s:choice>
            </s:sequence>
            <s:attribute name="id" type="s:ID" />
            <s:attribute default="" name="projection" type="s1:projectionType" />
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="coordRefFrameType">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="Name" type="s:string" />
        </s:sequence>
        <s:attribute name="ref_frame_id" type="s:IDREF" />
      </s:complexType>
      <s:complexType name="spaceRefFrameType" abstract="true">
        <s:complexContent mixed="false">
          <s:extension base="s1:coordRefFrameType" />
        </s:complexContent>
      </s:complexType>
      <s:complexType name="icrsType">
        <s:complexContent mixed="false">
          <s:extension base="s1:spaceRefFrameType" />
        </s:complexContent>
      </s:complexType>
      <s:complexType name="geodType">
        <s:complexContent mixed="false">
          <s:extension base="s1:icrsType">
            <s:attribute default="6378140" name="radius" type="s:double" />
            <s:attribute default="298.257" name="inv_flattening" type="s:double" />
            <s:attribute default="m" name="unit" type="s1:posUnitType" />
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="fkType">
        <s:complexContent mixed="false">
          <s:extension base="s1:spaceRefFrameType">
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="Equinox" nillable="true" type="s:string" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="cart1DRefFrameType">
        <s:complexContent mixed="false">
          <s:extension base="s1:coordRefFrameType">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="Scale" type="s1:double1Type" />
            </s:sequence>
            <s:attribute name="id" type="s:ID" />
            <s:attribute default="" name="projection" type="s1:projectionType" />
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:simpleType name="projectionType">
        <s:restriction base="s:string">
          <s:enumeration value="" />
          <s:enumeration value="LOG" />
          <s:enumeration value="TAN" />
          <s:enumeration value="SIN" />
          <s:enumeration value="STG" />
          <s:enumeration value="ARC" />
          <s:enumeration value="ZEA" />
          <s:enumeration value="AIR" />
          <s:enumeration value="CEA" />
          <s:enumeration value="CAR" />
          <s:enumeration value="MER" />
          <s:enumeration value="SFL" />
          <s:enumeration value="PAR" />
          <s:enumeration value="MOL" />
          <s:enumeration value="AIT" />
          <s:enumeration value="COE" />
          <s:enumeration value="COD" />
          <s:enumeration value="COO" />
          <s:enumeration value="BON" />
          <s:enumeration value="PCO" />
          <s:enumeration value="TSC" />
          <s:enumeration value="CSC" />
          <s:enumeration value="QSC" />
        </s:restriction>
      </s:simpleType>
      <s:complexType name="cart2DRefFrameType">
        <s:complexContent mixed="false">
          <s:extension base="s1:coordRefFrameType">
            <s:sequence>
              <s:choice minOccurs="1" maxOccurs="1">
                <s:element minOccurs="1" maxOccurs="1" name="Transform2Matrix" nillable="true" type="s1:double4Type" />
                <s:element minOccurs="1" maxOccurs="1" name="Transform2" nillable="true" type="s1:size2Type" />
              </s:choice>
            </s:sequence>
            <s:attribute name="id" type="s:ID" />
            <s:attribute default="" name="projection" type="s1:projectionType" />
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="sphericalRefFrameType">
        <s:complexContent mixed="false">
          <s:extension base="s1:coordRefFrameType">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="Frame" type="s:string" />
              <s:element minOccurs="1" maxOccurs="1" name="Pole_Zaxis" nillable="true" type="s1:astroCoordsType" />
              <s:element minOccurs="1" maxOccurs="1" name="Xaxis" nillable="true" type="s1:astroCoordsType" />
            </s:sequence>
            <s:attribute name="id" type="s:ID" />
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="genericRefPosType">
        <s:complexContent mixed="false">
          <s:extension base="s1:referencePositionType">
            <s:sequence>
              <s:choice minOccurs="1" maxOccurs="1">
                <s:element minOccurs="1" maxOccurs="1" name="Vector3DCoordinate" nillable="true" type="s1:genVector3CoordinateType" />
                <s:element minOccurs="1" maxOccurs="1" name="ScalarCoordinate" nillable="true" type="s1:scalarCoordinateType" />
                <s:element minOccurs="1" maxOccurs="1" name="Vector2DCoordinate" nillable="true" type="s1:genVector2CoordinateType" />
                <s:element minOccurs="1" maxOccurs="1" name="StringCoordinate" nillable="true" type="s1:stringCoordinateType" />
              </s:choice>
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="referencePositionType" abstract="true" />
      <s:complexType name="stdRefPosType">
        <s:complexContent mixed="false">
          <s:extension base="s1:referencePositionType">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="PlanetaryEphem" nillable="true" type="s1:planetaryEphemType" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:simpleType name="planetaryEphemType">
        <s:restriction base="s:string">
          <s:enumeration value="JPL-DE200" />
          <s:enumeration value="JPL-DE405" />
        </s:restriction>
      </s:simpleType>
      <s:complexType name="customRefPosType">
        <s:complexContent mixed="false">
          <s:extension base="s1:referencePositionType">
            <s:sequence>
              <s:choice minOccurs="1" maxOccurs="1">
                <s:element minOccurs="1" maxOccurs="1" name="Redshift" nillable="true" type="s1:redshiftCoordinateType" />
                <s:element minOccurs="1" maxOccurs="1" name="Spectral" nillable="true" type="s1:spectralCoordinateType" />
              </s:choice>
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="coordFlavorType">
        <s:attribute default="2" name="coord_naxes" type="s:integer" />
      </s:complexType>
      <s:complexType name="healpixType">
        <s:complexContent mixed="false">
          <s:extension base="s1:coordFlavorType">
            <s:attribute default="4" name="healpix_H" type="s:integer" />
            <s:attribute default="3" name="healpix_K" type="s:integer" />
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="pixelFrameType">
        <s:complexContent mixed="false">
          <s:extension base="s1:genericCoordFrameType">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="ReferencePixel" type="s1:pixelType" />
            </s:sequence>
            <s:attribute name="axis1_order" type="s:integer" />
            <s:attribute name="axis2_order" type="s:integer" />
            <s:attribute name="axis3_order" type="s:integer" />
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="pixelType">
        <s:sequence>
          <s:choice minOccurs="1" maxOccurs="1">
            <s:element minOccurs="1" maxOccurs="1" name="Pixel2D" nillable="true" type="s1:pixelVector2CoordinateType" />
            <s:element minOccurs="1" maxOccurs="1" name="Pixel1D" nillable="true" type="s1:pixelVector1CoordinateType" />
            <s:element minOccurs="1" maxOccurs="1" name="Pixel3D" nillable="true" type="s1:pixelVector3CoordinateType" />
          </s:choice>
        </s:sequence>
      </s:complexType>
      <s:complexType name="spaceFrameType">
        <s:complexContent mixed="false">
          <s:extension base="s1:coordFrameType">
            <s:sequence>
              <s:choice minOccurs="1" maxOccurs="1">
                <s:element minOccurs="0" maxOccurs="1" name="JUPITER_G_III" type="s1:icrsType" />
                <s:element minOccurs="0" maxOccurs="1" name="NEPTUNE_C_III" type="s1:icrsType" />
                <s:element minOccurs="0" maxOccurs="1" name="VENUS_G" type="s1:icrsType" />
                <s:element minOccurs="0" maxOccurs="1" name="SUPER_GALACTIC" type="s1:icrsType" />
                <s:element minOccurs="0" maxOccurs="1" name="AZ_EL" type="s1:icrsType" />
                <s:element minOccurs="0" maxOccurs="1" name="SATURN_C_III" type="s1:icrsType" />
                <s:element minOccurs="0" maxOccurs="1" name="CoordRefFrame" type="s1:coordRefFrameType" />
                <s:element minOccurs="0" maxOccurs="1" name="JUPITER_C_III" type="s1:icrsType" />
                <s:element minOccurs="0" maxOccurs="1" name="VENUS_C" type="s1:icrsType" />
                <s:element minOccurs="0" maxOccurs="1" name="FK5" type="s1:fkType" />
                <s:element minOccurs="0" maxOccurs="1" name="GALACTIC_I" type="s1:icrsType" />
                <s:element minOccurs="0" maxOccurs="1" name="GALACTIC_II" type="s1:icrsType" />
                <s:element minOccurs="0" maxOccurs="1" name="GEO_C" type="s1:icrsType" />
                <s:element minOccurs="0" maxOccurs="1" name="GEO_D" type="s1:geodType" />
                <s:element minOccurs="0" maxOccurs="1" name="GSE" type="s1:icrsType" />
                <s:element minOccurs="0" maxOccurs="1" name="GSM" type="s1:icrsType" />
                <s:element minOccurs="0" maxOccurs="1" name="HEE" type="s1:icrsType" />
                <s:element minOccurs="0" maxOccurs="1" name="HEEQ" type="s1:icrsType" />
                <s:element minOccurs="0" maxOccurs="1" name="HGC" type="s1:icrsType" />
                <s:element minOccurs="0" maxOccurs="1" name="HGI" type="s1:icrsType" />
                <s:element minOccurs="0" maxOccurs="1" name="HGS" type="s1:icrsType" />
                <s:element minOccurs="0" maxOccurs="1" name="HPC" type="s1:icrsType" />
                <s:element minOccurs="0" maxOccurs="1" name="HPR" type="s1:icrsType" />
                <s:element minOccurs="0" maxOccurs="1" name="HRTN" type="s1:icrsType" />
                <s:element minOccurs="0" maxOccurs="1" name="ICRS" type="s1:icrsType" />
                <s:element minOccurs="0" maxOccurs="1" name="FK4" type="s1:fkType" />
                <s:element minOccurs="0" maxOccurs="1" name="LUNA_C" type="s1:icrsType" />
                <s:element minOccurs="0" maxOccurs="1" name="LUNA_G" type="s1:icrsType" />
                <s:element minOccurs="0" maxOccurs="1" name="MAG" type="s1:icrsType" />
                <s:element minOccurs="0" maxOccurs="1" name="MARS_C" type="s1:icrsType" />
                <s:element minOccurs="0" maxOccurs="1" name="MARS_G" type="s1:icrsType" />
                <s:element minOccurs="0" maxOccurs="1" name="MERCURY_C" type="s1:icrsType" />
                <s:element minOccurs="0" maxOccurs="1" name="MERCURY_G" type="s1:icrsType" />
                <s:element minOccurs="0" maxOccurs="1" name="NEPTUNE_G_III" type="s1:icrsType" />
                <s:element minOccurs="0" maxOccurs="1" name="PLUTO_C" type="s1:icrsType" />
                <s:element minOccurs="0" maxOccurs="1" name="PLUTO_G" type="s1:icrsType" />
                <s:element minOccurs="0" maxOccurs="1" name="ECLIPTIC" type="s1:fkType" />
                <s:element minOccurs="0" maxOccurs="1" name="SATURN_G_III" type="s1:icrsType" />
                <s:element minOccurs="0" maxOccurs="1" name="SM" type="s1:icrsType" />
                <s:element minOccurs="0" maxOccurs="1" name="BODY" type="s1:icrsType" />
                <s:element minOccurs="0" maxOccurs="1" name="UNKNOWNFrame" type="s1:icrsType" />
                <s:element minOccurs="0" maxOccurs="1" name="URANUS_C_III" type="s1:icrsType" />
                <s:element minOccurs="0" maxOccurs="1" name="URANUS_G_III" type="s1:icrsType" />
              </s:choice>
              <s:choice minOccurs="1" maxOccurs="1">
                <s:element minOccurs="0" maxOccurs="1" name="BARYCENTER" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="CoordRefPos" type="s1:genericRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="EMBARYCENTER" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="GALACTIC_CENTER" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="GEOCENTER" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="HELIOCENTER" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="JUPITER" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="LOCAL_GROUP_CENTER" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="LSR" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="LSRD" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="LSRK" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="MARS" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="MERCURY" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="MOON" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="NEPTUNE" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="PLUTO" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="RELOCATABLE" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="SATURN" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="TOPOCENTER" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="UNKNOWNRefPos" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="URANUS" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="VENUS" type="s1:stdRefPosType" />
              </s:choice>
              <s:element minOccurs="0" maxOccurs="1" name="OffsetCenter" type="s1:coordValueType" />
              <s:choice minOccurs="1" maxOccurs="1">
                <s:element minOccurs="0" maxOccurs="1" name="CARTESIAN" type="s1:coordFlavorType" />
                <s:element minOccurs="0" maxOccurs="1" name="HEALPIX" type="s1:healpixType" />
                <s:element minOccurs="0" maxOccurs="1" name="POLAR" type="s1:coordFlavorType" />
                <s:element minOccurs="0" maxOccurs="1" name="SPHERICAL" type="s1:coordFlavorType" />
                <s:element minOccurs="0" maxOccurs="1" name="STRING" type="s1:coordFlavorType" />
                <s:element minOccurs="0" maxOccurs="1" name="UNITSPHERE" type="s1:coordFlavorType" />
              </s:choice>
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="coordValueType">
        <s:sequence>
          <s:element minOccurs="1" maxOccurs="1" name="Value" nillable="true" type="s1:double1Type" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="timeFrameType">
        <s:complexContent mixed="false">
          <s:extension base="s1:coordFrameType">
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="TimeScale" type="s1:timeScaleType" />
              <s:choice minOccurs="1" maxOccurs="1">
                <s:element minOccurs="0" maxOccurs="1" name="LSRD" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="PLUTO" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="RELOCATABLE" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="SATURN" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="TOPOCENTER" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="UNKNOWNRefPos" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="URANUS" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="VENUS" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="JUPITER" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="NEPTUNE" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="CoordRefPos" type="s1:genericRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="EMBARYCENTER" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="GALACTIC_CENTER" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="GEOCENTER" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="HELIOCENTER" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="BARYCENTER" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="LOCAL_GROUP_CENTER" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="LSR" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="LSRK" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="MARS" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="MERCURY" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="MOON" type="s1:stdRefPosType" />
              </s:choice>
              <s:element minOccurs="0" maxOccurs="1" name="TimeRefDirection" type="s1:astroCoordsType" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="spectralFrameType">
        <s:complexContent mixed="false">
          <s:extension base="s1:coordFrameType">
            <s:sequence>
              <s:choice minOccurs="1" maxOccurs="1">
                <s:element minOccurs="0" maxOccurs="1" name="URANUS" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="TOPOCENTER" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="VENUS" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="RELOCATABLE" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="SATURN" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="PLUTO" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="UNKNOWNRefPos" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="JUPITER" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="NEPTUNE" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="BARYCENTER" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="CoordRefPos" type="s1:genericRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="EMBARYCENTER" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="GALACTIC_CENTER" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="GEOCENTER" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="HELIOCENTER" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="LOCAL_GROUP_CENTER" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="LSR" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="LSRD" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="LSRK" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="MARS" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="MERCURY" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="MOON" type="s1:stdRefPosType" />
              </s:choice>
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="redshiftFrameType">
        <s:complexContent mixed="false">
          <s:extension base="s1:coordFrameType">
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="DopplerDefinition" nillable="true" type="s1:dopplerDefinitionType" />
              <s:choice minOccurs="1" maxOccurs="1">
                <s:element minOccurs="0" maxOccurs="1" name="LSRK" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="GALACTIC_CENTER" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="CoordRefPos" type="s1:genericRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="EMBARYCENTER" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="UNKNOWNRefPos" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="MARS" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="MERCURY" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="MOON" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="NEPTUNE" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="PLUTO" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="RELOCATABLE" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="SATURN" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="TOPOCENTER" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="JUPITER" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="LSRD" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="GEOCENTER" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="HELIOCENTER" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="BARYCENTER" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="LOCAL_GROUP_CENTER" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="LSR" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="URANUS" type="s1:stdRefPosType" />
                <s:element minOccurs="0" maxOccurs="1" name="VENUS" type="s1:stdRefPosType" />
              </s:choice>
            </s:sequence>
            <s:attribute default="VELOCITY" name="value_type">
              <s:simpleType>
                <s:restriction base="s:string">
                  <s:enumeration value="VELOCITY" />
                  <s:enumeration value="REDSHIFT" />
                </s:restriction>
              </s:simpleType>
            </s:attribute>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:simpleType name="dopplerDefinitionType">
        <s:restriction base="s:string">
          <s:enumeration value="OPTICAL" />
          <s:enumeration value="RADIO" />
          <s:enumeration value="RELATIVISTIC" />
        </s:restriction>
      </s:simpleType>
      <s:complexType name="coordSysType">
        <s:complexContent mixed="false">
          <s:extension base="s1:stcBaseType">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="unbounded" name="CoordFrame" nillable="true" type="s1:genericCoordFrameType" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="astroCoordSystemType">
        <s:complexContent mixed="false">
          <s:extension base="s1:coordSysType">
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="TimeFrame" nillable="true" type="s1:timeFrameType" />
              <s:element minOccurs="1" maxOccurs="1" name="SpaceFrame" nillable="true" type="s1:spaceFrameType" />
              <s:element minOccurs="1" maxOccurs="1" name="SpectralFrame" nillable="true" type="s1:spectralFrameType" />
              <s:element minOccurs="1" maxOccurs="1" name="RedshiftFrame" nillable="true" type="s1:redshiftFrameType" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="pixelCoordSystemType">
        <s:complexContent mixed="false">
          <s:extension base="s1:coordSysType">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="unbounded" name="PixelCoordFrame" nillable="true" type="s1:pixelFrameType" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="stcDescriptionType">
        <s:complexContent mixed="false">
          <s:extension base="s1:stcMetadataType">
            <s:sequence>
              <s:choice minOccurs="0" maxOccurs="unbounded">
                <s:element minOccurs="1" maxOccurs="1" name="PixelCoordSystem" nillable="true" type="s1:pixelCoordSystemType" />
                <s:element minOccurs="1" maxOccurs="1" name="AstroCoordSystem" nillable="true" type="s1:astroCoordSystemType" />
                <s:element minOccurs="1" maxOccurs="1" name="CoordSys" nillable="true" type="s1:coordSysType" />
              </s:choice>
              <s:choice minOccurs="0" maxOccurs="unbounded">
                <s:element minOccurs="1" maxOccurs="1" name="PixelCoords" nillable="true" type="s1:pixelCoordsType" />
                <s:element minOccurs="1" maxOccurs="1" name="Coords" nillable="true" type="s1:coordsType" />
                <s:element minOccurs="1" maxOccurs="1" name="AstroCoords" nillable="true" type="s1:astroCoordsType" />
              </s:choice>
              <s:choice minOccurs="0" maxOccurs="unbounded">
                <s:element minOccurs="1" maxOccurs="1" name="CoordArea" nillable="true" type="s1:coordAreaType" />
                <s:element minOccurs="1" maxOccurs="1" name="PixelCoordArea" nillable="true" type="s1:pixelCoordAreaType" />
                <s:element minOccurs="1" maxOccurs="1" name="AstroCoordArea" nillable="true" type="s1:astroCoordAreaType" />
              </s:choice>
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="observatoryLocationType">
        <s:complexContent mixed="false">
          <s:extension base="s1:stcDescriptionType" />
        </s:complexContent>
      </s:complexType>
      <s:complexType name="pixelSpaceType">
        <s:complexContent mixed="false">
          <s:extension base="s1:stcDescriptionType" />
        </s:complexContent>
      </s:complexType>
      <s:complexType name="astroSTCDescriptionType">
        <s:complexContent mixed="false">
          <s:extension base="s1:stcDescriptionType" />
        </s:complexContent>
      </s:complexType>
      <s:complexType name="obsDataLocationType">
        <s:complexContent mixed="false">
          <s:extension base="s1:stcMetadataType">
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="ObservatoryLocation" nillable="true" type="s1:observatoryLocationType" />
              <s:element minOccurs="1" maxOccurs="1" name="ObservationLocation" nillable="true" type="s1:astroSTCDescriptionType" />
              <s:element minOccurs="1" maxOccurs="1" name="PixelSpace" nillable="true" type="s1:pixelSpaceType" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="STCCoordinate">
        <s:complexContent mixed="false">
          <s:extension base="s1:stcMetadataType">
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="AstroCoordSystem" nillable="true" type="s1:astroCoordSystemType" />
              <s:element minOccurs="1" maxOccurs="1" name="AstroCoords" nillable="true" type="s1:astroCoordsType" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="STCCoordinateList">
        <s:complexContent mixed="false">
          <s:extension base="s1:stcMetadataType">
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="AstroCoordSystem" nillable="true" type="s1:astroCoordSystemType" />
              <s:element minOccurs="0" maxOccurs="unbounded" name="AstroCoords" nillable="true" type="s1:astroCoordsType" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="STCRegionList">
        <s:complexContent mixed="false">
          <s:extension base="s1:stcMetadataType">
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="AstroCoordSystem" nillable="true" type="s1:astroCoordSystemType" />
              <s:choice minOccurs="0" maxOccurs="unbounded">
                <s:element minOccurs="1" maxOccurs="1" name="Box" nillable="true" type="s1:boxType" />
                <s:element minOccurs="1" maxOccurs="1" name="SkyIndex" nillable="true" type="s1:skyIndexType" />
                <s:element minOccurs="1" maxOccurs="1" name="AllSky" nillable="true" type="s1:allSkyType" />
                <s:element minOccurs="1" maxOccurs="1" name="Convex" nillable="true" type="s1:convexType" />
                <s:element minOccurs="1" maxOccurs="1" name="Circle" nillable="true" type="s1:circleType" />
                <s:element minOccurs="1" maxOccurs="1" name="Union" nillable="true" type="s1:unionType" />
                <s:element minOccurs="1" maxOccurs="1" name="ConvexHull" nillable="true" type="s1:convexHullType" />
                <s:element minOccurs="1" maxOccurs="1" name="Difference" nillable="true" type="s1:diffType" />
                <s:element minOccurs="1" maxOccurs="1" name="Ellipse" nillable="true" type="s1:ellipseType" />
                <s:element minOccurs="1" maxOccurs="1" name="Intersection" nillable="true" type="s1:intersectionType" />
                <s:element minOccurs="1" maxOccurs="1" name="Negation" nillable="true" type="s1:negationType" />
                <s:element minOccurs="1" maxOccurs="1" name="Polygon" nillable="true" type="s1:polygonType" />
                <s:element minOccurs="1" maxOccurs="1" name="Sector" nillable="true" type="s1:sectorType" />
              </s:choice>
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
    </s:schema>
    <s:schema elementFormDefault="qualified" targetNamespace="http://www.w3.org/1999/xlink">
      <s:attribute default="simple" name="type">
        <s:simpleType>
          <s:restriction base="s:string">
            <s:enumeration value="simple" />
            <s:enumeration value="extended" />
            <s:enumeration value="locator" />
            <s:enumeration value="arc" />
            <s:enumeration value="resource" />
            <s:enumeration value="title" />
          </s:restriction>
        </s:simpleType>
      </s:attribute>
      <s:attribute name="href" type="s:anyURI" />
    </s:schema>
  </wsdl:types>
  <wsdl:message name="CreateSoapIn">
    <wsdl:part name="parameters" element="tns:Create" />
  </wsdl:message>
  <wsdl:message name="CreateSoapOut">
    <wsdl:part name="parameters" element="tns:CreateResponse" />
  </wsdl:message>
  <wsdl:message name="DeleteSoapIn">
    <wsdl:part name="parameters" element="tns:Delete" />
  </wsdl:message>
  <wsdl:message name="DeleteSoapOut">
    <wsdl:part name="parameters" element="tns:DeleteResponse" />
  </wsdl:message>
  <wsdl:message name="DownloadSoapIn">
    <wsdl:part name="parameters" element="tns:Download" />
  </wsdl:message>
  <wsdl:message name="DownloadSoapOut">
    <wsdl:part name="parameters" element="tns:DownloadResponse" />
  </wsdl:message>
  <wsdl:message name="FindByPositionSoapIn">
    <wsdl:part name="parameters" element="tns:FindByPosition" />
  </wsdl:message>
  <wsdl:message name="FindByPositionSoapOut">
    <wsdl:part name="parameters" element="tns:FindByPositionResponse" />
  </wsdl:message>
  <wsdl:message name="FindByPositionsSoapIn">
    <wsdl:part name="parameters" element="tns:FindByPositions" />
  </wsdl:message>
  <wsdl:message name="FindByPositionsSoapOut">
    <wsdl:part name="parameters" element="tns:FindByPositionsResponse" />
  </wsdl:message>
  <wsdl:message name="FindByKeywordSoapIn">
    <wsdl:part name="parameters" element="tns:FindByKeyword" />
  </wsdl:message>
  <wsdl:message name="FindByKeywordSoapOut">
    <wsdl:part name="parameters" element="tns:FindByKeywordResponse" />
  </wsdl:message>
  <wsdl:message name="DeleteHttpGetIn">
    <wsdl:part name="userGuid" type="s:string" />
    <wsdl:part name="Id" type="s:string" />
  </wsdl:message>
  <wsdl:message name="DeleteHttpGetOut">
    <wsdl:part name="Body" element="tns:string" />
  </wsdl:message>
  <wsdl:message name="DownloadHttpGetIn">
    <wsdl:part name="userGuid" type="s:string" />
    <wsdl:part name="Id" type="s:string" />
  </wsdl:message>
  <wsdl:message name="DownloadHttpGetOut">
    <wsdl:part name="Body" element="tns:Footprint" />
  </wsdl:message>
  <wsdl:message name="FindByPositionHttpGetIn">
    <wsdl:part name="userGuid" type="s:string" />
    <wsdl:part name="ra" type="s:string" />
    <wsdl:part name="dec" type="s:string" />
  </wsdl:message>
  <wsdl:message name="FindByPositionHttpGetOut">
    <wsdl:part name="Body" element="tns:ArrayOfFootprint" />
  </wsdl:message>
  <wsdl:message name="FindByKeywordHttpGetIn">
    <wsdl:part name="userGuid" type="s:string" />
    <wsdl:part name="keyword" type="s:string" />
  </wsdl:message>
  <wsdl:message name="FindByKeywordHttpGetOut">
    <wsdl:part name="Body" element="tns:ArrayOfFootprint" />
  </wsdl:message>
  <wsdl:message name="DeleteHttpPostIn">
    <wsdl:part name="userGuid" type="s:string" />
    <wsdl:part name="Id" type="s:string" />
  </wsdl:message>
  <wsdl:message name="DeleteHttpPostOut">
    <wsdl:part name="Body" element="tns:string" />
  </wsdl:message>
  <wsdl:message name="DownloadHttpPostIn">
    <wsdl:part name="userGuid" type="s:string" />
    <wsdl:part name="Id" type="s:string" />
  </wsdl:message>
  <wsdl:message name="DownloadHttpPostOut">
    <wsdl:part name="Body" element="tns:Footprint" />
  </wsdl:message>
  <wsdl:message name="FindByPositionHttpPostIn">
    <wsdl:part name="userGuid" type="s:string" />
    <wsdl:part name="ra" type="s:string" />
    <wsdl:part name="dec" type="s:string" />
  </wsdl:message>
  <wsdl:message name="FindByPositionHttpPostOut">
    <wsdl:part name="Body" element="tns:ArrayOfFootprint" />
  </wsdl:message>
  <wsdl:message name="FindByKeywordHttpPostIn">
    <wsdl:part name="userGuid" type="s:string" />
    <wsdl:part name="keyword" type="s:string" />
  </wsdl:message>
  <wsdl:message name="FindByKeywordHttpPostOut">
    <wsdl:part name="Body" element="tns:ArrayOfFootprint" />
  </wsdl:message>
  <wsdl:portType name="FootprintServicesSoap">
    <wsdl:operation name="Create">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
Loads the specified footprint into Footprint Services.
&lt;br /&gt;&lt;b&gt;Input 1&lt;/b&gt;: The user ID (type of string)
&lt;br /&gt;&lt;b&gt;Input 2&lt;/b&gt;: The footprint (type of Footprint)
&lt;br /&gt;&lt;b&gt;Output&lt;/b&gt;: The footprint ID (type of long)</wsdl:documentation>
      <wsdl:input message="tns:CreateSoapIn" />
      <wsdl:output message="tns:CreateSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="Delete">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
Removes the specified footprint from Footprint Services.
&lt;br /&gt;&lt;b&gt;Input 1&lt;/b&gt;: The user ID (type of string)
&lt;br /&gt;&lt;b&gt;Input 2&lt;/b&gt;: The footprint ID (type of long)
&lt;br /&gt;&lt;b&gt;Output&lt;/b&gt;: Success message (type of string)</wsdl:documentation>
      <wsdl:input message="tns:DeleteSoapIn" />
      <wsdl:output message="tns:DeleteSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="Download">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
Returns the formal description of the specified footprint.
&lt;br /&gt;&lt;b&gt;Input 1&lt;/b&gt;: The user ID (type of string)
&lt;br /&gt;&lt;b&gt;Input 2&lt;/b&gt;: The footprint ID (type of long)
&lt;br /&gt;&lt;b&gt;Output&lt;/b&gt;: The footprint (type of Footprint)</wsdl:documentation>
      <wsdl:input message="tns:DownloadSoapIn" />
      <wsdl:output message="tns:DownloadSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="FindByPosition">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
Returns all footprints containing the specified position.
&lt;br /&gt;&lt;b&gt;Input 1&lt;/b&gt;: The user ID (type of string)
&lt;br /&gt;&lt;b&gt;Input 2&lt;/b&gt;: The RA of the position (type of double)
&lt;br /&gt;&lt;b&gt;Input 3&lt;/b&gt;: The Dec of the position (type of double)
&lt;br /&gt;&lt;b&gt;Output&lt;/b&gt;: The footprint headers (type of Footprint[])</wsdl:documentation>
      <wsdl:input message="tns:FindByPositionSoapIn" />
      <wsdl:output message="tns:FindByPositionSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="FindByPositions">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
Returns all footprints containing all the specified positions.
&lt;br /&gt;&lt;b&gt;Input 1&lt;/b&gt;: The user ID (type of string)
&lt;br /&gt;&lt;b&gt;Input 2&lt;/b&gt;: The RA of the position (type of double)
&lt;br /&gt;&lt;b&gt;Input 3&lt;/b&gt;: The Dec of the position (type of double)
&lt;br /&gt;&lt;b&gt;Output&lt;/b&gt;: The footprint headers (type of Footprint[])</wsdl:documentation>
      <wsdl:input message="tns:FindByPositionsSoapIn" />
      <wsdl:output message="tns:FindByPositionsSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="FindByKeyword">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
Returns all footprints with matching descriptions to the specified keyword(s).
&lt;br /&gt;&lt;b&gt;Input 1&lt;/b&gt;: The user ID (type of string)
&lt;br /&gt;&lt;b&gt;Input 2&lt;/b&gt;: The keywords (type of string)
&lt;br /&gt;&lt;b&gt;Output&lt;/b&gt;: The footprint headers (type of Footprint[])</wsdl:documentation>
      <wsdl:input message="tns:FindByKeywordSoapIn" />
      <wsdl:output message="tns:FindByKeywordSoapOut" />
    </wsdl:operation>
  </wsdl:portType>
  <wsdl:portType name="FootprintServicesHttpGet">
    <wsdl:operation name="Delete">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
Removes the specified footprint from Footprint Services.
&lt;br /&gt;&lt;b&gt;Input 1&lt;/b&gt;: The user ID (type of string)
&lt;br /&gt;&lt;b&gt;Input 2&lt;/b&gt;: The footprint ID (type of long)
&lt;br /&gt;&lt;b&gt;Output&lt;/b&gt;: Success message (type of string)</wsdl:documentation>
      <wsdl:input message="tns:DeleteHttpGetIn" />
      <wsdl:output message="tns:DeleteHttpGetOut" />
    </wsdl:operation>
    <wsdl:operation name="Download">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
Returns the formal description of the specified footprint.
&lt;br /&gt;&lt;b&gt;Input 1&lt;/b&gt;: The user ID (type of string)
&lt;br /&gt;&lt;b&gt;Input 2&lt;/b&gt;: The footprint ID (type of long)
&lt;br /&gt;&lt;b&gt;Output&lt;/b&gt;: The footprint (type of Footprint)</wsdl:documentation>
      <wsdl:input message="tns:DownloadHttpGetIn" />
      <wsdl:output message="tns:DownloadHttpGetOut" />
    </wsdl:operation>
    <wsdl:operation name="FindByPosition">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
Returns all footprints containing the specified position.
&lt;br /&gt;&lt;b&gt;Input 1&lt;/b&gt;: The user ID (type of string)
&lt;br /&gt;&lt;b&gt;Input 2&lt;/b&gt;: The RA of the position (type of double)
&lt;br /&gt;&lt;b&gt;Input 3&lt;/b&gt;: The Dec of the position (type of double)
&lt;br /&gt;&lt;b&gt;Output&lt;/b&gt;: The footprint headers (type of Footprint[])</wsdl:documentation>
      <wsdl:input message="tns:FindByPositionHttpGetIn" />
      <wsdl:output message="tns:FindByPositionHttpGetOut" />
    </wsdl:operation>
    <wsdl:operation name="FindByKeyword">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
Returns all footprints with matching descriptions to the specified keyword(s).
&lt;br /&gt;&lt;b&gt;Input 1&lt;/b&gt;: The user ID (type of string)
&lt;br /&gt;&lt;b&gt;Input 2&lt;/b&gt;: The keywords (type of string)
&lt;br /&gt;&lt;b&gt;Output&lt;/b&gt;: The footprint headers (type of Footprint[])</wsdl:documentation>
      <wsdl:input message="tns:FindByKeywordHttpGetIn" />
      <wsdl:output message="tns:FindByKeywordHttpGetOut" />
    </wsdl:operation>
  </wsdl:portType>
  <wsdl:portType name="FootprintServicesHttpPost">
    <wsdl:operation name="Delete">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
Removes the specified footprint from Footprint Services.
&lt;br /&gt;&lt;b&gt;Input 1&lt;/b&gt;: The user ID (type of string)
&lt;br /&gt;&lt;b&gt;Input 2&lt;/b&gt;: The footprint ID (type of long)
&lt;br /&gt;&lt;b&gt;Output&lt;/b&gt;: Success message (type of string)</wsdl:documentation>
      <wsdl:input message="tns:DeleteHttpPostIn" />
      <wsdl:output message="tns:DeleteHttpPostOut" />
    </wsdl:operation>
    <wsdl:operation name="Download">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
Returns the formal description of the specified footprint.
&lt;br /&gt;&lt;b&gt;Input 1&lt;/b&gt;: The user ID (type of string)
&lt;br /&gt;&lt;b&gt;Input 2&lt;/b&gt;: The footprint ID (type of long)
&lt;br /&gt;&lt;b&gt;Output&lt;/b&gt;: The footprint (type of Footprint)</wsdl:documentation>
      <wsdl:input message="tns:DownloadHttpPostIn" />
      <wsdl:output message="tns:DownloadHttpPostOut" />
    </wsdl:operation>
    <wsdl:operation name="FindByPosition">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
Returns all footprints containing the specified position.
&lt;br /&gt;&lt;b&gt;Input 1&lt;/b&gt;: The user ID (type of string)
&lt;br /&gt;&lt;b&gt;Input 2&lt;/b&gt;: The RA of the position (type of double)
&lt;br /&gt;&lt;b&gt;Input 3&lt;/b&gt;: The Dec of the position (type of double)
&lt;br /&gt;&lt;b&gt;Output&lt;/b&gt;: The footprint headers (type of Footprint[])</wsdl:documentation>
      <wsdl:input message="tns:FindByPositionHttpPostIn" />
      <wsdl:output message="tns:FindByPositionHttpPostOut" />
    </wsdl:operation>
    <wsdl:operation name="FindByKeyword">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
Returns all footprints with matching descriptions to the specified keyword(s).
&lt;br /&gt;&lt;b&gt;Input 1&lt;/b&gt;: The user ID (type of string)
&lt;br /&gt;&lt;b&gt;Input 2&lt;/b&gt;: The keywords (type of string)
&lt;br /&gt;&lt;b&gt;Output&lt;/b&gt;: The footprint headers (type of Footprint[])</wsdl:documentation>
      <wsdl:input message="tns:FindByKeywordHttpPostIn" />
      <wsdl:output message="tns:FindByKeywordHttpPostOut" />
    </wsdl:operation>
  </wsdl:portType>
  <wsdl:binding name="FootprintServicesSoap" type="tns:FootprintServicesSoap">
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" />
    <wsdl:operation name="Create">
      <soap:operation soapAction="ivo://voservices.net/footprint/Create" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="Delete">
      <soap:operation soapAction="ivo://voservices.net/footprint/Delete" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="Download">
      <soap:operation soapAction="ivo://voservices.net/footprint/Download" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="FindByPosition">
      <soap:operation soapAction="ivo://voservices.net/footprint/FindByPosition" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="FindByPositions">
      <soap:operation soapAction="ivo://voservices.net/footprint/FindByPositions" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="FindByKeyword">
      <soap:operation soapAction="ivo://voservices.net/footprint/FindByKeyword" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
  </wsdl:binding>
  <wsdl:binding name="FootprintServicesSoap12" type="tns:FootprintServicesSoap">
    <soap12:binding transport="http://schemas.xmlsoap.org/soap/http" />
    <wsdl:operation name="Create">
      <soap12:operation soapAction="ivo://voservices.net/footprint/Create" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="Delete">
      <soap12:operation soapAction="ivo://voservices.net/footprint/Delete" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="Download">
      <soap12:operation soapAction="ivo://voservices.net/footprint/Download" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="FindByPosition">
      <soap12:operation soapAction="ivo://voservices.net/footprint/FindByPosition" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="FindByPositions">
      <soap12:operation soapAction="ivo://voservices.net/footprint/FindByPositions" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="FindByKeyword">
      <soap12:operation soapAction="ivo://voservices.net/footprint/FindByKeyword" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
  </wsdl:binding>
  <wsdl:binding name="FootprintServicesHttpGet" type="tns:FootprintServicesHttpGet">
    <http:binding verb="GET" />
    <wsdl:operation name="Delete">
      <http:operation location="/Delete" />
      <wsdl:input>
        <http:urlEncoded />
      </wsdl:input>
      <wsdl:output>
        <mime:mimeXml part="Body" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="Download">
      <http:operation location="/Download" />
      <wsdl:input>
        <http:urlEncoded />
      </wsdl:input>
      <wsdl:output>
        <mime:mimeXml part="Body" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="FindByPosition">
      <http:operation location="/FindByPosition" />
      <wsdl:input>
        <http:urlEncoded />
      </wsdl:input>
      <wsdl:output>
        <mime:mimeXml part="Body" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="FindByKeyword">
      <http:operation location="/FindByKeyword" />
      <wsdl:input>
        <http:urlEncoded />
      </wsdl:input>
      <wsdl:output>
        <mime:mimeXml part="Body" />
      </wsdl:output>
    </wsdl:operation>
  </wsdl:binding>
  <wsdl:binding name="FootprintServicesHttpPost" type="tns:FootprintServicesHttpPost">
    <http:binding verb="POST" />
    <wsdl:operation name="Delete">
      <http:operation location="/Delete" />
      <wsdl:input>
        <mime:content type="application/x-www-form-urlencoded" />
      </wsdl:input>
      <wsdl:output>
        <mime:mimeXml part="Body" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="Download">
      <http:operation location="/Download" />
      <wsdl:input>
        <mime:content type="application/x-www-form-urlencoded" />
      </wsdl:input>
      <wsdl:output>
        <mime:mimeXml part="Body" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="FindByPosition">
      <http:operation location="/FindByPosition" />
      <wsdl:input>
        <mime:content type="application/x-www-form-urlencoded" />
      </wsdl:input>
      <wsdl:output>
        <mime:mimeXml part="Body" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="FindByKeyword">
      <http:operation location="/FindByKeyword" />
      <wsdl:input>
        <mime:content type="application/x-www-form-urlencoded" />
      </wsdl:input>
      <wsdl:output>
        <mime:mimeXml part="Body" />
      </wsdl:output>
    </wsdl:operation>
  </wsdl:binding>
  <wsdl:service name="FootprintServices">
    <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
By programming against the following web services, you can create 
and manage your own collection of footprints. For more information,
please go to www.voservices.net/footprint.
&lt;br /&gt;&lt;br /&gt;&lt;i&gt;Conforms to WS-I Basic Profile 1.1&lt;/i&gt;</wsdl:documentation>
    <wsdl:port name="FootprintServicesSoap" binding="tns:FootprintServicesSoap">
      <soap:address location="http://voservices.net/footprint/ws_v1_1/FootprintServices.asmx" />
    </wsdl:port>
    <wsdl:port name="FootprintServicesSoap12" binding="tns:FootprintServicesSoap12">
      <soap12:address location="http://voservices.net/footprint/ws_v1_1/FootprintServices.asmx" />
    </wsdl:port>
    <wsdl:port name="FootprintServicesHttpGet" binding="tns:FootprintServicesHttpGet">
      <http:address location="http://voservices.net/footprint/ws_v1_1/FootprintServices.asmx" />
    </wsdl:port>
    <wsdl:port name="FootprintServicesHttpPost" binding="tns:FootprintServicesHttpPost">
      <http:address location="http://voservices.net/footprint/ws_v1_1/FootprintServices.asmx" />
    </wsdl:port>
  </wsdl:service>
</wsdl:definitions>