<?xml version="1.0" encoding="utf-8"?>
<definitions xmlns:s9="http://www.ivoa.net/xml/VORegistry/v0.3" xmlns:s8="http://www.ivoa.net/xml/VODataService/v0.5" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:s1="http://www.ivoa.net/xml/VOResource/v0.9" xmlns:s0="http://www.us-vo.org" xmlns:s3="http://www.ivoa.net/xml/ConeSearch/v0.2" xmlns:s2="http://www.ivoa.net/xml/VORegistry/v0.2" xmlns:s5="http://www.ivoa.net/xml/SIA/v0.6" xmlns:s4="http://www.ivoa.net/xml/SkyNode/v0.1" xmlns:s7="http://www.ivoa.net/xml/VOResource/v0.10" xmlns:s6="http://www.ivoa.net/xml/VOCommunity/v0.2" xmlns:s10="http://www.ivoa.net/xml/ConeSearch/v0.3" xmlns:s11="http://www.ivoa.net/xml/SIA/v0.7" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" targetNamespace="http://www.us-vo.org" xmlns="http://schemas.xmlsoap.org/wsdl/">
  <types>
    <s:schema elementFormDefault="qualified" targetNamespace="http://www.us-vo.org">
      <s:import namespace="http://www.ivoa.net/xml/VOResource/v0.9" />
      <s:import namespace="http://www.ivoa.net/xml/VOResource/v0.10" />
      <s:element name="DumpRegistry">
        <s:complexType />
      </s:element>
      <s:element name="DumpRegistryResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="DumpRegistryResult" type="s0:ArrayOfSimpleResource" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="ArrayOfSimpleResource">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="SimpleResource" nillable="true" type="s0:SimpleResource" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="SimpleResource">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="Title" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="ShortName" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Publisher" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Creator" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Subject" type="s0:ArrayOfString" />
          <s:element minOccurs="0" maxOccurs="1" name="Description" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Contributor" type="s:string" />
          <s:element minOccurs="1" maxOccurs="1" name="Date" type="s:dateTime" />
          <s:element minOccurs="0" maxOccurs="1" name="Version" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Identifier" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="ReferenceURL" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="ServiceURL" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="ContactName" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="ContactEmail" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Type" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CoverageSpatial" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CoverageSpectral" type="s0:ArrayOfString" />
          <s:element minOccurs="0" maxOccurs="1" name="CoverageTemporal" type="s:string" />
          <s:element minOccurs="1" maxOccurs="1" name="EntrySize" type="s:double" />
          <s:element minOccurs="1" maxOccurs="1" name="MaxSR" type="s:double" />
          <s:element minOccurs="1" maxOccurs="1" name="MaxRecords" type="s:int" />
          <s:element minOccurs="0" maxOccurs="1" name="ContentLevel" type="s0:ArrayOfString" />
          <s:element minOccurs="0" maxOccurs="1" name="Facility" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Instrument" type="s0:ArrayOfString" />
          <s:element minOccurs="0" maxOccurs="1" name="Format" type="s0:ArrayOfString" />
          <s:element minOccurs="0" maxOccurs="1" name="ServiceType" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="xml" type="s:string" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="ArrayOfString">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="string" nillable="true" type="s:string" />
        </s:sequence>
      </s:complexType>
      <s:element name="DumpVOResources">
        <s:complexType />
      </s:element>
      <s:element name="DumpVOResourcesResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" ref="s1:VODescription" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="QueryVOResource">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="predicate" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="QueryVOResourceResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" ref="s1:VODescription" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="QueryResource">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="predicate" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="QueryResourceResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="QueryResourceResult" type="s0:ArrayOfResource" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="ArrayOfResource">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="Resource" nillable="true" type="s0:Resource" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="Resource">
        <s:sequence>
          <s:element minOccurs="1" maxOccurs="1" name="dbid" type="s:long" />
          <s:element minOccurs="1" maxOccurs="1" name="status" type="s:int" />
          <s:element minOccurs="0" maxOccurs="1" name="Identifier" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Title" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="ShortName" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CurationPublisherTitle" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CurationPublisherIdentifier" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CurationPublisherDescription" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CurationPublisherReferenceUrl" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CurationCreatorName" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CurationCreatorLogo" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CurationContributor" type="s:string" />
          <s:element minOccurs="1" maxOccurs="1" name="CurationDate" type="s:dateTime" />
          <s:element minOccurs="0" maxOccurs="1" name="CurationVersion" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CurationContactName" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CurationContactEmail" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CurationContactAddress" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CurationContactPhone" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Subject" type="s0:ArrayOfString" />
          <s:element minOccurs="0" maxOccurs="1" name="Description" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="ReferenceURL" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Type" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Facility" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Instrument" type="s0:ArrayOfString" />
          <s:element minOccurs="0" maxOccurs="1" name="ContentLevel" type="s0:ArrayOfString" />
          <s:element minOccurs="1" maxOccurs="1" name="ModificationDate" type="s:dateTime" />
          <s:element minOccurs="0" maxOccurs="1" name="ServiceURL" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CoverageSpatial" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CoverageSpectral" type="s0:ArrayOfString" />
          <s:element minOccurs="0" maxOccurs="1" name="CoverageTemporal" type="s:string" />
          <s:element minOccurs="1" maxOccurs="1" name="CoverageRegionOfRegard" type="s:double" />
          <s:element minOccurs="0" maxOccurs="1" name="ServiceType" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="resourceRelations" type="s0:ArrayOfResourceRelation" />
          <s:element minOccurs="0" maxOccurs="1" name="xml" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="harvestedfrom" type="s:string" />
          <s:element minOccurs="1" maxOccurs="1" name="harvestedfromDate" type="s:dateTime" />
          <s:element minOccurs="0" maxOccurs="1" name="footprint" type="s:string" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="ArrayOfResourceRelation">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="ResourceRelation" nillable="true" type="s0:ResourceRelation" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="ResourceRelation">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="relatedResourceIvoId" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="relationshipType" type="s:string" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="ServiceSkyNode">
        <s:complexContent mixed="false">
          <s:extension base="s0:Resource">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="Compliance" type="s:string" />
              <s:element minOccurs="1" maxOccurs="1" name="Latitude" type="s:double" />
              <s:element minOccurs="1" maxOccurs="1" name="Longitude" type="s:double" />
              <s:element minOccurs="1" maxOccurs="1" name="MaxRecords" type="s:long" />
              <s:element minOccurs="0" maxOccurs="1" name="PrimaryTable" type="s:string" />
              <s:element minOccurs="0" maxOccurs="1" name="PrimaryKey" type="s:string" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="ServiceCone">
        <s:complexContent mixed="false">
          <s:extension base="s0:Resource">
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="MaxSearchRadius" type="s:double" />
              <s:element minOccurs="1" maxOccurs="1" name="MaxRecords" type="s:long" />
              <s:element minOccurs="0" maxOccurs="1" name="VOTableColumns" type="s:string" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="ServiceSimpleImageAccess">
        <s:complexContent mixed="false">
          <s:extension base="s0:Resource">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="ImageServiceType" type="s:string" />
              <s:element minOccurs="1" maxOccurs="1" name="MaxQueryRegionSizeLong" type="s:double" />
              <s:element minOccurs="1" maxOccurs="1" name="MaxQueryRegionSizeLat" type="s:double" />
              <s:element minOccurs="1" maxOccurs="1" name="MaxImageExtentLong" type="s:double" />
              <s:element minOccurs="1" maxOccurs="1" name="MaxImageExtentLat" type="s:double" />
              <s:element minOccurs="1" maxOccurs="1" name="MaxImageSizeLong" type="s:int" />
              <s:element minOccurs="1" maxOccurs="1" name="MaxImageSizeLat" type="s:int" />
              <s:element minOccurs="1" maxOccurs="1" name="MaxFileSize" type="s:long" />
              <s:element minOccurs="1" maxOccurs="1" name="MaxRecords" type="s:long" />
              <s:element minOccurs="0" maxOccurs="1" name="Format" type="s0:ArrayOfString" />
              <s:element minOccurs="0" maxOccurs="1" name="VOTableColumns" type="s:string" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:element name="QueryRegistry">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="predicate" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="QueryRegistryResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="QueryRegistryResult" type="s0:ArrayOfSimpleResource" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="KeywordSearch">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="keywords" type="s:string" />
            <s:element minOccurs="1" maxOccurs="1" name="andKeys" type="s:boolean" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="KeywordSearchResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" ref="s1:VODescription" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="Revisions">
        <s:complexType />
      </s:element>
      <s:element name="RevisionsResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="RevisionsResult" type="s0:ArrayOfString" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="QueryVOResource0_10">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="predicate" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="QueryVOResource0_10Response">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="QueryVOResource0_10Result" type="s7:ArrayOfResource0_10" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="Resource0_10" nillable="true" type="s7:Resource0_10" />
      <s:element name="ArrayOfSimpleResource" nillable="true" type="s0:ArrayOfSimpleResource" />
      <s:element name="ArrayOfResource" nillable="true" type="s0:ArrayOfResource" />
      <s:element name="ArrayOfString" nillable="true" type="s0:ArrayOfString" />
      <s:element name="ArrayOfResource0_10" nillable="true" type="s7:ArrayOfResource0_10" />
    </s:schema>
    <s:schema elementFormDefault="qualified" targetNamespace="http://www.ivoa.net/xml/VOResource/v0.9">
      <s:import namespace="http://www.ivoa.net/xml/VORegistry/v0.2" />
      <s:import namespace="http://www.ivoa.net/xml/ConeSearch/v0.2" />
      <s:import namespace="http://www.ivoa.net/xml/SkyNode/v0.1" />
      <s:import namespace="http://www.ivoa.net/xml/SIA/v0.6" />
      <s:import namespace="http://www.ivoa.net/xml/VOCommunity/v0.2" />
      <s:element name="VODescription" type="s1:VODescription" />
      <s:complexType name="VODescription">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="Resource" type="s1:ResourceType" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="ResourceType">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="Identifier" type="s1:IdentifierType" />
          <s:element minOccurs="0" maxOccurs="1" name="Title" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="ShortName" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Summary" type="s1:SummaryType" />
          <s:element minOccurs="0" maxOccurs="unbounded" name="Type" type="s1:categoryType" />
          <s:element minOccurs="0" maxOccurs="unbounded" name="RelatedResource" type="s1:RelatedResourceType" />
          <s:element minOccurs="0" maxOccurs="unbounded" name="LogicalIdentifier" type="s1:LogicalIdentifierType" />
          <s:element minOccurs="0" maxOccurs="1" name="Curation" type="s1:CurationType" />
          <s:element minOccurs="0" maxOccurs="unbounded" name="Subject" type="s:string" />
          <s:element minOccurs="0" maxOccurs="unbounded" name="ContentLevel" type="s1:ContentLevelType" />
        </s:sequence>
        <s:attribute form="unqualified" name="created" type="s:date" />
        <s:attribute form="unqualified" name="updated" type="s:date" />
        <s:attribute default="active" form="unqualified" name="status" type="s1:ResourceTypeStatus" />
      </s:complexType>
      <s:complexType name="IdentifierType">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="AuthorityID" type="s:string" />
          <s:element minOccurs="1" maxOccurs="1" name="ResourceKey" nillable="true" type="s:string" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="LogicalIdentifierType">
        <s:complexContent mixed="false">
          <s:extension base="s1:IdentifierType">
            <s:attribute form="unqualified" name="role" type="s:string" />
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="SummaryType">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="Description" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="ReferenceURL" type="s:anyURI" />
          <s:element minOccurs="0" maxOccurs="1" name="Source" type="s1:SourceType" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="SourceType">
        <s:simpleContent>
          <s:extension base="s:string">
            <s:attribute form="unqualified" name="format" type="s:string" />
          </s:extension>
        </s:simpleContent>
      </s:complexType>
      <s:simpleType name="categoryType">
        <s:restriction base="s:string">
          <s:enumeration value="Other" />
          <s:enumeration value="Archive" />
          <s:enumeration value="Bibliography" />
          <s:enumeration value="Catalog" />
          <s:enumeration value="Journal" />
          <s:enumeration value="Library" />
          <s:enumeration value="Simulation" />
          <s:enumeration value="Survey" />
          <s:enumeration value="Transformation" />
          <s:enumeration value="Education" />
          <s:enumeration value="Outreach" />
          <s:enumeration value="EPOResource" />
          <s:enumeration value="Animation" />
          <s:enumeration value="Artwork" />
          <s:enumeration value="Background" />
          <s:enumeration value="BasicData" />
          <s:enumeration value="Historical" />
          <s:enumeration value="Photographic" />
          <s:enumeration value="Press" />
          <s:enumeration value="Organisation" />
          <s:enumeration value="Project" />
          <s:enumeration value="Person" />
        </s:restriction>
      </s:simpleType>
      <s:complexType name="RelatedResourceType">
        <s:sequence>
          <s:element minOccurs="1" maxOccurs="1" name="Relationship" type="s1:RelationshipType" />
          <s:element minOccurs="0" maxOccurs="1" name="RelatedTo" type="s1:ResourceReferenceType" />
        </s:sequence>
      </s:complexType>
      <s:simpleType name="RelationshipType">
        <s:restriction base="s:string">
          <s:enumeration value="mirror-of" />
          <s:enumeration value="service-for" />
          <s:enumeration value="derived-from" />
          <s:enumeration value="related-to" />
        </s:restriction>
      </s:simpleType>
      <s:complexType name="ResourceReferenceType">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="Identifier" type="s1:IdentifierType" />
          <s:element minOccurs="0" maxOccurs="1" name="Title" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Description" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="ReferenceURL" type="s:anyURI" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="CurationType">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="Publisher" type="s1:ResourceReferenceType" />
          <s:element minOccurs="0" maxOccurs="1" name="Contact" type="s1:ContactType" />
          <s:element minOccurs="0" maxOccurs="unbounded" name="Date" type="s1:DateType" />
          <s:element minOccurs="0" maxOccurs="1" name="Creator" type="s1:CreatorType" />
          <s:element minOccurs="0" maxOccurs="unbounded" name="Contributor" type="s1:NameReferenceType" />
          <s:element minOccurs="0" maxOccurs="1" name="Version" type="s:string" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="ContactType">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="Name" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Identifier" type="s1:IdentifierType" />
          <s:element minOccurs="0" maxOccurs="1" name="Email" type="s:string" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="DateType">
        <s:simpleContent>
          <s:extension base="s:date">
            <s:attribute default="representative" form="unqualified" name="role" type="s:string" />
          </s:extension>
        </s:simpleContent>
      </s:complexType>
      <s:complexType name="CreatorType">
        <s:complexContent mixed="false">
          <s:extension base="s1:NameReferenceType">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="Logo" type="s:anyURI" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="NameReferenceType">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="Identifier" type="s1:IdentifierType" />
          <s:element minOccurs="0" maxOccurs="1" name="Name" type="s:string" />
        </s:sequence>
      </s:complexType>
      <s:simpleType name="ContentLevelType">
        <s:restriction base="s:string">
          <s:enumeration value="General" />
          <s:enumeration value="Elementary Education" />
          <s:enumeration value="Middle School Education" />
          <s:enumeration value="Secondary Education" />
          <s:enumeration value="Community College" />
          <s:enumeration value="University" />
          <s:enumeration value="Research" />
          <s:enumeration value="Amateur" />
          <s:enumeration value="Informal Education" />
        </s:restriction>
      </s:simpleType>
      <s:simpleType name="ResourceTypeStatus">
        <s:restriction base="s:string">
          <s:enumeration value="active" />
          <s:enumeration value="inactive" />
          <s:enumeration value="deleted" />
        </s:restriction>
      </s:simpleType>
      <s:complexType name="ServiceType">
        <s:complexContent mixed="false">
          <s:extension base="s1:ResourceType">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="Capability" type="s1:CapabilityType" />
              <s:element minOccurs="0" maxOccurs="1" name="Interface" type="s1:InterfaceType" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="CapabilityType">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="StandardURL" type="s:anyURI" />
          <s:element minOccurs="0" maxOccurs="1" name="StandardID" type="s1:IdentifierType" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="InterfaceType">
        <s:sequence>
          <s:element minOccurs="1" maxOccurs="1" name="Invocation" type="s1:InvocationType" />
          <s:element minOccurs="0" maxOccurs="1" name="Description" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="AccessURL" type="s1:AccessURLType" />
        </s:sequence>
      </s:complexType>
      <s:simpleType name="InvocationType">
        <s:restriction base="s:string">
          <s:enumeration value="Custom" />
          <s:enumeration value="Extended" />
          <s:enumeration value="WebService" />
          <s:enumeration value="WebBrowser" />
          <s:enumeration value="GLUService" />
        </s:restriction>
      </s:simpleType>
      <s:complexType name="AccessURLType">
        <s:simpleContent>
          <s:extension base="s:anyURI">
            <s:attribute form="unqualified" name="use" type="s1:AccessURLTypeUse" />
          </s:extension>
        </s:simpleContent>
      </s:complexType>
      <s:simpleType name="AccessURLTypeUse">
        <s:restriction base="s:string">
          <s:enumeration value="full" />
          <s:enumeration value="base" />
          <s:enumeration value="dir" />
        </s:restriction>
      </s:simpleType>
      <s:element name="Facility" type="s1:ResourceReferenceType" />
      <s:element name="Instrument" type="s1:ResourceReferenceType" />
    </s:schema>
    <s:schema elementFormDefault="qualified" targetNamespace="http://www.ivoa.net/xml/VORegistry/v0.2">
      <s:import namespace="http://www.ivoa.net/xml/VOResource/v0.9" />
      <s:complexType name="AuthorityType">
        <s:complexContent mixed="false">
          <s:extension base="s1:ResourceType">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="ManagingOrg" type="s1:IdentifierType" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="RegistryType">
        <s:complexContent mixed="false">
          <s:extension base="s1:ServiceType">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="unbounded" name="ManagedAuthority" type="s:string" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
    </s:schema>
    <s:schema elementFormDefault="qualified" targetNamespace="http://www.ivoa.net/xml/ConeSearch/v0.2">
      <s:import namespace="http://www.ivoa.net/xml/VOResource/v0.9" />
      <s:complexType name="ConeSearchType">
        <s:complexContent mixed="false">
          <s:extension base="s1:CapabilityType">
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="MaxSR" type="s:float" />
              <s:element minOccurs="1" maxOccurs="1" name="MaxRecords" type="s:int" />
              <s:element minOccurs="1" maxOccurs="1" name="Verbosity" type="s:boolean" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
    </s:schema>
    <s:schema elementFormDefault="qualified" targetNamespace="http://www.ivoa.net/xml/SkyNode/v0.1">
      <s:import namespace="http://www.ivoa.net/xml/VOResource/v0.9" />
      <s:complexType name="SkyNodeType">
        <s:complexContent mixed="false">
          <s:extension base="s1:CapabilityType">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="Compliance" type="s:string" />
              <s:element minOccurs="1" maxOccurs="1" name="Latitude" type="s:double" />
              <s:element minOccurs="1" maxOccurs="1" name="Longitude" type="s:double" />
              <s:element minOccurs="1" maxOccurs="1" name="MaxRecords" type="s:long" />
              <s:element minOccurs="0" maxOccurs="1" name="PrimaryTable" type="s:string" />
              <s:element minOccurs="0" maxOccurs="1" name="PrimaryKey" type="s:string" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
    </s:schema>
    <s:schema elementFormDefault="qualified" targetNamespace="http://www.ivoa.net/xml/SIA/v0.6">
      <s:import namespace="http://www.ivoa.net/xml/VOResource/v0.9" />
      <s:complexType name="SimpleImageAccessType">
        <s:complexContent mixed="false">
          <s:extension base="s1:CapabilityType">
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="ImageServiceType" type="s5:ImageServiceType" />
              <s:element minOccurs="0" maxOccurs="1" name="MaxQueryRegionSize" type="s5:MaxQueryRegionSize" />
              <s:element minOccurs="0" maxOccurs="1" name="MaxImageExtent" type="s5:MaxImageExtent" />
              <s:element minOccurs="0" maxOccurs="1" name="MaxImageSize" type="s5:MaxImageSize" />
              <s:element minOccurs="1" maxOccurs="1" name="MaxFileSize" type="s:int" />
              <s:element minOccurs="1" maxOccurs="1" name="MaxRecords" type="s:int" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:simpleType name="ImageServiceType">
        <s:restriction base="s:string">
          <s:enumeration value="Cutout" />
          <s:enumeration value="Mosaic" />
          <s:enumeration value="Atlas" />
          <s:enumeration value="Pointed" />
        </s:restriction>
      </s:simpleType>
      <s:complexType name="MaxQueryRegionSize">
        <s:sequence>
          <s:element minOccurs="1" maxOccurs="1" name="long" type="s:float" />
          <s:element minOccurs="1" maxOccurs="1" name="lat" type="s:float" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="MaxImageExtent">
        <s:sequence>
          <s:element minOccurs="1" maxOccurs="1" name="long" type="s:float" />
          <s:element minOccurs="1" maxOccurs="1" name="lat" type="s:float" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="MaxImageSize">
        <s:sequence>
          <s:element minOccurs="1" maxOccurs="1" name="long" type="s:int" />
          <s:element minOccurs="1" maxOccurs="1" name="lat" type="s:int" />
        </s:sequence>
      </s:complexType>
    </s:schema>
    <s:schema elementFormDefault="qualified" targetNamespace="http://www.ivoa.net/xml/VOCommunity/v0.2">
      <s:import namespace="http://www.ivoa.net/xml/VOResource/v0.9" />
      <s:complexType name="OrganisationType">
        <s:complexContent mixed="false">
          <s:extension base="s1:ResourceType">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="unbounded" ref="s1:Facility" />
              <s:element minOccurs="0" maxOccurs="unbounded" ref="s1:Instrument" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="ProjectType">
        <s:complexContent mixed="false">
          <s:extension base="s6:OrganisationType" />
        </s:complexContent>
      </s:complexType>
    </s:schema>
    <s:schema elementFormDefault="qualified" targetNamespace="http://www.ivoa.net/xml/VOResource/v0.10">
      <s:import namespace="http://www.us-vo.org" />
      <s:import namespace="http://www.ivoa.net/xml/VODataService/v0.5" />
      <s:import namespace="http://www.ivoa.net/xml/VORegistry/v0.3" />
      <s:import namespace="http://www.ivoa.net/xml/SIA/v0.7" />
      <s:import namespace="http://www.ivoa.net/xml/ConeSearch/v0.3" />
      <s:complexType name="ArrayOfResource0_10">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" ref="s0:Resource0_10" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="Resource0_10">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="title" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="shortName" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="identifier" type="s:anyURI" />
          <s:element minOccurs="0" maxOccurs="1" name="curation" type="s7:Curation" />
          <s:element minOccurs="0" maxOccurs="1" name="content" type="s7:Content" />
        </s:sequence>
        <s:attribute form="unqualified" name="created" type="s:date" />
        <s:attribute form="unqualified" name="updated" type="s:date" />
        <s:attribute default="active" form="unqualified" name="status" type="s7:ResourceStatus" />
      </s:complexType>
      <s:complexType name="Curation">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="publisher" type="s7:ResourceName" />
          <s:element minOccurs="0" maxOccurs="1" name="creator" type="s7:Creator" />
          <s:element minOccurs="0" maxOccurs="unbounded" name="contributor" type="s7:ResourceName" />
          <s:element minOccurs="0" maxOccurs="unbounded" name="date" type="s7:Date" />
          <s:element minOccurs="0" maxOccurs="1" name="version" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="contact" type="s7:Contact" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="ResourceName">
        <s:simpleContent>
          <s:extension base="s:string">
            <s:attribute form="unqualified" name="ivo-id" type="s:anyURI" />
          </s:extension>
        </s:simpleContent>
      </s:complexType>
      <s:complexType name="Creator">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="name" type="s7:ResourceName" />
          <s:element minOccurs="0" maxOccurs="1" name="logo" type="s:anyURI" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="Date">
        <s:simpleContent>
          <s:extension base="s:date">
            <s:attribute default="representative" form="unqualified" name="role" type="s:string" />
          </s:extension>
        </s:simpleContent>
      </s:complexType>
      <s:complexType name="Contact">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="name" type="s7:ResourceName" />
          <s:element minOccurs="0" maxOccurs="1" name="address" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="email" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="telephone" type="s:string" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="Content">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="subject" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="description" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="source" type="s7:Source" />
          <s:element minOccurs="0" maxOccurs="1" name="referenceURL" type="s:anyURI" />
          <s:element minOccurs="0" maxOccurs="1" name="type" type="s7:Type" />
          <s:element minOccurs="0" maxOccurs="unbounded" name="contentLevel" type="s7:ContentLevel" />
          <s:element minOccurs="0" maxOccurs="unbounded" name="relationship" type="s7:Relationship" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="Source">
        <s:simpleContent>
          <s:extension base="s:string">
            <s:attribute form="unqualified" name="format" type="s:string" />
          </s:extension>
        </s:simpleContent>
      </s:complexType>
      <s:simpleType name="Type">
        <s:restriction base="s:string">
          <s:enumeration value="Other" />
          <s:enumeration value="Archive" />
          <s:enumeration value="Bibliography" />
          <s:enumeration value="Catalog" />
          <s:enumeration value="Journal" />
          <s:enumeration value="Library" />
          <s:enumeration value="Simulation" />
          <s:enumeration value="Survey" />
          <s:enumeration value="Transformation" />
          <s:enumeration value="Education" />
          <s:enumeration value="Outreach" />
          <s:enumeration value="EPOResource" />
          <s:enumeration value="Animation" />
          <s:enumeration value="Artwork" />
          <s:enumeration value="Background" />
          <s:enumeration value="BasicData" />
          <s:enumeration value="Historical" />
          <s:enumeration value="Photographic" />
          <s:enumeration value="Press" />
          <s:enumeration value="Organisation" />
          <s:enumeration value="Project" />
          <s:enumeration value="Registry" />
        </s:restriction>
      </s:simpleType>
      <s:simpleType name="ContentLevel">
        <s:restriction base="s:string">
          <s:enumeration value="General" />
          <s:enumeration value="Elementary Education" />
          <s:enumeration value="Middle School Education" />
          <s:enumeration value="Secondary Education" />
          <s:enumeration value="Community College" />
          <s:enumeration value="University" />
          <s:enumeration value="Research" />
          <s:enumeration value="Amateur" />
          <s:enumeration value="Informal Education" />
        </s:restriction>
      </s:simpleType>
      <s:complexType name="Relationship">
        <s:sequence>
          <s:element minOccurs="1" maxOccurs="1" name="relationshipType" type="s7:RelationshipType" />
          <s:element minOccurs="0" maxOccurs="unbounded" name="relatedResource" type="s7:ResourceName" />
        </s:sequence>
      </s:complexType>
      <s:simpleType name="RelationshipType">
        <s:restriction base="s:string">
          <s:enumeration value="mirror-of" />
          <s:enumeration value="service-for" />
          <s:enumeration value="derived-from" />
          <s:enumeration value="related-to" />
        </s:restriction>
      </s:simpleType>
      <s:simpleType name="ResourceStatus">
        <s:restriction base="s:string">
          <s:enumeration value="active" />
          <s:enumeration value="inactive" />
          <s:enumeration value="deleted" />
        </s:restriction>
      </s:simpleType>
      <s:complexType name="Organisation">
        <s:complexContent mixed="false">
          <s:extension base="s7:Resource0_10">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="unbounded" name="facility" type="s7:ResourceName" />
              <s:element minOccurs="0" maxOccurs="unbounded" name="instrument" type="s7:ResourceName" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="AccessURL">
        <s:simpleContent>
          <s:extension base="s:anyURI">
            <s:attribute form="unqualified" name="use" type="s7:AccessURLUse" />
          </s:extension>
        </s:simpleContent>
      </s:complexType>
      <s:simpleType name="AccessURLUse">
        <s:restriction base="s:string">
          <s:enumeration value="full" />
          <s:enumeration value="base" />
          <s:enumeration value="dir" />
        </s:restriction>
      </s:simpleType>
      <s:complexType name="Service">
        <s:complexContent mixed="false">
          <s:extension base="s7:Resource0_10">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="unbounded" name="interface" type="s7:Interface" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="Interface" abstract="true">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="accessURL" type="s7:AccessURL" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="WebBrowser">
        <s:complexContent mixed="false">
          <s:extension base="s7:Interface" />
        </s:complexContent>
      </s:complexType>
      <s:complexType name="Capability">
        <s:attribute form="unqualified" name="standardID" type="s:anyURI" />
        <s:attribute form="unqualified" name="standardURL" type="s:anyURI" />
      </s:complexType>
    </s:schema>
    <s:schema elementFormDefault="qualified" targetNamespace="http://www.ivoa.net/xml/VODataService/v0.5">
      <s:import namespace="http://www.ivoa.net/xml/VOResource/v0.10" />
      <s:import namespace="http://www.ivoa.net/xml/ConeSearch/v0.3" />
      <s:import namespace="http://www.ivoa.net/xml/SIA/v0.7" />
      <s:complexType name="DataCollection">
        <s:complexContent mixed="false">
          <s:extension base="s7:Resource0_10">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="unbounded" name="facility" type="s7:ResourceName" />
              <s:element minOccurs="0" maxOccurs="unbounded" name="instrument" type="s7:ResourceName" />
              <s:element minOccurs="0" maxOccurs="1" name="coverage" type="s8:Coverage" />
              <s:element minOccurs="0" maxOccurs="unbounded" name="format" type="s8:Format" />
              <s:element minOccurs="0" maxOccurs="unbounded" name="rights" type="s8:Rights" />
              <s:element minOccurs="0" maxOccurs="1" name="accessURL" type="s7:AccessURL" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="Coverage">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="spatial" type="s8:Spatial" />
          <s:element minOccurs="0" maxOccurs="1" name="spectral" type="s8:Spectral" />
          <s:element minOccurs="0" maxOccurs="1" name="temporal" type="s8:Temporal" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="Spatial">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="region" type="s8:Region" />
          <s:element minOccurs="0" maxOccurs="1" name="resolution" type="s:float" />
          <s:element minOccurs="0" maxOccurs="1" name="regionOfRegard" type="s:float" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="Region" abstract="true" />
      <s:complexType name="Spectral">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="waveband" type="s8:Waveband" />
          <s:element minOccurs="0" maxOccurs="1" name="range" type="s8:WavelengthRange" />
          <s:element minOccurs="0" maxOccurs="1" name="resolution" type="s:float" />
        </s:sequence>
      </s:complexType>
      <s:simpleType name="Waveband">
        <s:restriction base="s:string">
          <s:enumeration value="Radio" />
          <s:enumeration value="Millimeter" />
          <s:enumeration value="Infrared" />
          <s:enumeration value="Optical" />
          <s:enumeration value="UV" />
          <s:enumeration value="EUV" />
          <s:enumeration value="X-ray" />
          <s:enumeration value="Gamma-ray" />
        </s:restriction>
      </s:simpleType>
      <s:complexType name="WavelengthRange">
        <s:sequence>
          <s:element minOccurs="1" maxOccurs="1" name="min" type="s:float" />
          <s:element minOccurs="1" maxOccurs="1" name="max" type="s:float" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="Temporal">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="startTime" type="s:date" />
          <s:element minOccurs="0" maxOccurs="1" name="endTime" type="s:date" />
          <s:element minOccurs="0" maxOccurs="1" name="resolution" type="s:float" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="Format">
        <s:simpleContent>
          <s:extension base="s:string">
            <s:attribute default="false" form="unqualified" name="isMIMEType" type="s:boolean" />
          </s:extension>
        </s:simpleContent>
      </s:complexType>
      <s:simpleType name="Rights">
        <s:restriction base="s:string">
          <s:enumeration value="public" />
          <s:enumeration value="secure" />
          <s:enumeration value="proprietary" />
        </s:restriction>
      </s:simpleType>
      <s:complexType name="WebService">
        <s:complexContent mixed="false">
          <s:extension base="s7:Interface" />
        </s:complexContent>
      </s:complexType>
      <s:complexType name="GLUService">
        <s:complexContent mixed="false">
          <s:extension base="s7:Interface" />
        </s:complexContent>
      </s:complexType>
      <s:complexType name="ParamHTTP">
        <s:complexContent mixed="false">
          <s:extension base="s7:Interface">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="resultType" type="s:string" />
              <s:element minOccurs="0" maxOccurs="unbounded" name="param" type="s8:Param" />
            </s:sequence>
            <s:attribute form="unqualified" name="qtype" type="s8:HTTPQueryType" />
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="Param">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="name" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="description" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="dataType" type="s8:DataType" />
          <s:element minOccurs="0" maxOccurs="1" name="unit" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="ucd" type="s:string" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="DataType">
        <s:simpleContent>
          <s:extension base="s8:ScalarDataType">
            <s:attribute default="1" form="unqualified" name="arraysize" type="s:token" />
          </s:extension>
        </s:simpleContent>
      </s:complexType>
      <s:simpleType name="ScalarDataType">
        <s:restriction base="s:string">
          <s:enumeration value="boolean" />
          <s:enumeration value="bit" />
          <s:enumeration value="unsignedByte" />
          <s:enumeration value="short" />
          <s:enumeration value="int" />
          <s:enumeration value="long" />
          <s:enumeration value="char" />
          <s:enumeration value="unicodeChar" />
          <s:enumeration value="float" />
          <s:enumeration value="double" />
          <s:enumeration value="floatComplex" />
          <s:enumeration value="doubleComplex" />
        </s:restriction>
      </s:simpleType>
      <s:simpleType name="HTTPQueryType">
        <s:restriction base="s:string">
          <s:enumeration value="GET" />
          <s:enumeration value="POST" />
        </s:restriction>
      </s:simpleType>
      <s:complexType name="SkyService">
        <s:complexContent mixed="false">
          <s:extension base="s7:Service">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="unbounded" name="facility" type="s7:ResourceName" />
              <s:element minOccurs="0" maxOccurs="unbounded" name="instrument" type="s7:ResourceName" />
              <s:element minOccurs="0" maxOccurs="1" name="coverage" type="s8:Coverage" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="TabularSkyService">
        <s:complexContent mixed="false">
          <s:extension base="s8:SkyService">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="unbounded" name="table" type="s8:Table" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="Table">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="name" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="description" type="s:string" />
          <s:element minOccurs="0" maxOccurs="unbounded" name="column" type="s8:Param" />
        </s:sequence>
        <s:attribute form="unqualified" name="role" type="s:string" />
      </s:complexType>
    </s:schema>
    <s:schema elementFormDefault="qualified" targetNamespace="http://www.ivoa.net/xml/VORegistry/v0.3">
      <s:import namespace="http://www.ivoa.net/xml/VOResource/v0.10" />
      <s:complexType name="Authority">
        <s:complexContent mixed="false">
          <s:extension base="s7:Resource0_10">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="managingOrg" type="s7:ResourceName" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="Registry">
        <s:complexContent mixed="false">
          <s:extension base="s7:Service">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="unbounded" name="managedAuthority" type="s:string" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
    </s:schema>
    <s:schema elementFormDefault="qualified" targetNamespace="http://www.ivoa.net/xml/ConeSearch/v0.3">
      <s:import namespace="http://www.ivoa.net/xml/VODataService/v0.5" />
      <s:import namespace="http://www.ivoa.net/xml/VOResource/v0.10" />
      <s:complexType name="ConeSearch">
        <s:complexContent mixed="false">
          <s:extension base="s8:TabularSkyService">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="capability" type="s10:ConeSearchCapability" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="ConeSearchCapability">
        <s:complexContent mixed="false">
          <s:extension base="s10:CSCapRestriction">
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="maxSR" type="s:float" />
              <s:element minOccurs="1" maxOccurs="1" name="maxRecords" type="s:int" />
              <s:element minOccurs="1" maxOccurs="1" name="verbosity" type="s:boolean" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="CSCapRestriction" abstract="true">
        <s:complexContent mixed="false">
          <s:extension base="s7:Capability" />
        </s:complexContent>
      </s:complexType>
    </s:schema>
    <s:schema elementFormDefault="qualified" targetNamespace="http://www.ivoa.net/xml/SIA/v0.7">
      <s:import namespace="http://www.ivoa.net/xml/VOResource/v0.10" />
      <s:import namespace="http://www.ivoa.net/xml/VODataService/v0.5" />
      <s:complexType name="SIACapRestriction" abstract="true">
        <s:complexContent mixed="false">
          <s:extension base="s7:Capability" />
        </s:complexContent>
      </s:complexType>
      <s:complexType name="SIACapability">
        <s:complexContent mixed="false">
          <s:extension base="s11:SIACapRestriction">
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="imageServiceType" type="s11:ImageServiceType" />
              <s:element minOccurs="0" maxOccurs="1" name="maxQueryRegionSize" type="s11:SkySize" />
              <s:element minOccurs="0" maxOccurs="1" name="maxImageExtent" type="s11:SkySize" />
              <s:element minOccurs="0" maxOccurs="1" name="maxImageSize" type="s11:ImageSize" />
              <s:element minOccurs="1" maxOccurs="1" name="maxFileSize" type="s:int" />
              <s:element minOccurs="1" maxOccurs="1" name="maxRecords" type="s:int" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:simpleType name="ImageServiceType">
        <s:restriction base="s:string">
          <s:enumeration value="Cutout" />
          <s:enumeration value="Mosaic" />
          <s:enumeration value="Atlas" />
          <s:enumeration value="Pointed" />
        </s:restriction>
      </s:simpleType>
      <s:complexType name="SkySize">
        <s:sequence>
          <s:element minOccurs="1" maxOccurs="1" name="long" type="s:float" />
          <s:element minOccurs="1" maxOccurs="1" name="lat" type="s:float" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="ImageSize">
        <s:sequence>
          <s:element minOccurs="1" maxOccurs="1" name="long" type="s:int" />
          <s:element minOccurs="1" maxOccurs="1" name="lat" type="s:int" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="SimpleImageAccess">
        <s:complexContent mixed="false">
          <s:extension base="s8:TabularSkyService">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="capability" type="s11:SIACapability" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
    </s:schema>
  </types>
  <message name="DumpRegistrySoapIn">
    <part name="parameters" element="s0:DumpRegistry" />
  </message>
  <message name="DumpRegistrySoapOut">
    <part name="parameters" element="s0:DumpRegistryResponse" />
  </message>
  <message name="DumpVOResourcesSoapIn">
    <part name="parameters" element="s0:DumpVOResources" />
  </message>
  <message name="DumpVOResourcesSoapOut">
    <part name="parameters" element="s0:DumpVOResourcesResponse" />
  </message>
  <message name="QueryVOResourceSoapIn">
    <part name="parameters" element="s0:QueryVOResource" />
  </message>
  <message name="QueryVOResourceSoapOut">
    <part name="parameters" element="s0:QueryVOResourceResponse" />
  </message>
  <message name="QueryResourceSoapIn">
    <part name="parameters" element="s0:QueryResource" />
  </message>
  <message name="QueryResourceSoapOut">
    <part name="parameters" element="s0:QueryResourceResponse" />
  </message>
  <message name="QueryRegistrySoapIn">
    <part name="parameters" element="s0:QueryRegistry" />
  </message>
  <message name="QueryRegistrySoapOut">
    <part name="parameters" element="s0:QueryRegistryResponse" />
  </message>
  <message name="KeywordSearchSoapIn">
    <part name="parameters" element="s0:KeywordSearch" />
  </message>
  <message name="KeywordSearchSoapOut">
    <part name="parameters" element="s0:KeywordSearchResponse" />
  </message>
  <message name="RevisionsSoapIn">
    <part name="parameters" element="s0:Revisions" />
  </message>
  <message name="RevisionsSoapOut">
    <part name="parameters" element="s0:RevisionsResponse" />
  </message>
  <message name="QueryVOResource0_10SoapIn">
    <part name="parameters" element="s0:QueryVOResource0_10" />
  </message>
  <message name="QueryVOResource0_10SoapOut">
    <part name="parameters" element="s0:QueryVOResource0_10Response" />
  </message>
  <message name="DumpRegistryHttpGetIn" />
  <message name="DumpRegistryHttpGetOut">
    <part name="Body" element="s0:ArrayOfSimpleResource" />
  </message>
  <message name="DumpVOResourcesHttpGetIn" />
  <message name="DumpVOResourcesHttpGetOut">
    <part name="Body" element="s1:VODescription" />
  </message>
  <message name="QueryVOResourceHttpGetIn">
    <part name="predicate" type="s:string" />
  </message>
  <message name="QueryVOResourceHttpGetOut">
    <part name="Body" element="s1:VODescription" />
  </message>
  <message name="QueryResourceHttpGetIn">
    <part name="predicate" type="s:string" />
  </message>
  <message name="QueryResourceHttpGetOut">
    <part name="Body" element="s0:ArrayOfResource" />
  </message>
  <message name="QueryRegistryHttpGetIn">
    <part name="predicate" type="s:string" />
  </message>
  <message name="QueryRegistryHttpGetOut">
    <part name="Body" element="s0:ArrayOfSimpleResource" />
  </message>
  <message name="KeywordSearchHttpGetIn">
    <part name="keywords" type="s:string" />
    <part name="andKeys" type="s:string" />
  </message>
  <message name="KeywordSearchHttpGetOut">
    <part name="Body" element="s1:VODescription" />
  </message>
  <message name="RevisionsHttpGetIn" />
  <message name="RevisionsHttpGetOut">
    <part name="Body" element="s0:ArrayOfString" />
  </message>
  <message name="QueryVOResource0_10HttpGetIn">
    <part name="predicate" type="s:string" />
  </message>
  <message name="QueryVOResource0_10HttpGetOut">
    <part name="Body" element="s0:ArrayOfResource0_10" />
  </message>
  <message name="DumpRegistryHttpPostIn" />
  <message name="DumpRegistryHttpPostOut">
    <part name="Body" element="s0:ArrayOfSimpleResource" />
  </message>
  <message name="DumpVOResourcesHttpPostIn" />
  <message name="DumpVOResourcesHttpPostOut">
    <part name="Body" element="s1:VODescription" />
  </message>
  <message name="QueryVOResourceHttpPostIn">
    <part name="predicate" type="s:string" />
  </message>
  <message name="QueryVOResourceHttpPostOut">
    <part name="Body" element="s1:VODescription" />
  </message>
  <message name="QueryResourceHttpPostIn">
    <part name="predicate" type="s:string" />
  </message>
  <message name="QueryResourceHttpPostOut">
    <part name="Body" element="s0:ArrayOfResource" />
  </message>
  <message name="QueryRegistryHttpPostIn">
    <part name="predicate" type="s:string" />
  </message>
  <message name="QueryRegistryHttpPostOut">
    <part name="Body" element="s0:ArrayOfSimpleResource" />
  </message>
  <message name="KeywordSearchHttpPostIn">
    <part name="keywords" type="s:string" />
    <part name="andKeys" type="s:string" />
  </message>
  <message name="KeywordSearchHttpPostOut">
    <part name="Body" element="s1:VODescription" />
  </message>
  <message name="RevisionsHttpPostIn" />
  <message name="RevisionsHttpPostOut">
    <part name="Body" element="s0:ArrayOfString" />
  </message>
  <message name="QueryVOResource0_10HttpPostIn">
    <part name="predicate" type="s:string" />
  </message>
  <message name="QueryVOResource0_10HttpPostOut">
    <part name="Body" element="s0:ArrayOfResource0_10" />
  </message>
  <portType name="RegistrySoap">
    <operation name="DumpRegistry">
      <documentation>Retrieve All Records from Registry, returns SimpleResources</documentation>
      <input message="s0:DumpRegistrySoapIn" />
      <output message="s0:DumpRegistrySoapOut" />
    </operation>
    <operation name="DumpVOResources">
      <documentation>Retrieve All VOResources from Registry</documentation>
      <input message="s0:DumpVOResourcesSoapIn" />
      <output message="s0:DumpVOResourcesSoapOut" />
    </operation>
    <operation name="QueryVOResource">
      <documentation>Returns VOResources: Input WHERE predicate for SQL Query like e.g. 
 maxSearchRadius &gt; 1 and ServiceType like 'CONE'</documentation>
      <input message="s0:QueryVOResourceSoapIn" />
      <output message="s0:QueryVOResourceSoapOut" />
    </operation>
    <operation name="QueryResource">
      <documentation>Returns custom simplified Resources: Input WHERE predicate for SQL Query like e.g. 
 ServiceType like 'CONE'</documentation>
      <input message="s0:QueryResourceSoapIn" />
      <output message="s0:QueryResourceSoapOut" />
    </operation>
    <operation name="QueryRegistry">
      <documentation>Returns SimpleResource (backward compatibility for DIS): Input WHERE predicate for SQL Query like e.g. 
 maxSearchRadius &gt; 1 and ServiceType like 'CONE'</documentation>
      <input message="s0:QueryRegistrySoapIn" />
      <output message="s0:QueryRegistrySoapOut" />
    </operation>
    <operation name="KeywordSearch">
      <documentation>searches registry for keyword</documentation>
      <input message="s0:KeywordSearchSoapIn" />
      <output message="s0:KeywordSearchSoapOut" />
    </operation>
    <operation name="Revisions">
      <documentation>returns cvs verions of classes in this service</documentation>
      <input message="s0:RevisionsSoapIn" />
      <output message="s0:RevisionsSoapOut" />
    </operation>
    <operation name="QueryVOResource0_10">
      <documentation>Returns VOResources: Input WHERE predicate for SQL Query like e.g. 
 maxSearchRadius &gt; 1 and ServiceType like 'CONE'</documentation>
      <input message="s0:QueryVOResource0_10SoapIn" />
      <output message="s0:QueryVOResource0_10SoapOut" />
    </operation>
  </portType>
  <portType name="RegistryHttpGet">
    <operation name="DumpRegistry">
      <documentation>Retrieve All Records from Registry, returns SimpleResources</documentation>
      <input message="s0:DumpRegistryHttpGetIn" />
      <output message="s0:DumpRegistryHttpGetOut" />
    </operation>
    <operation name="DumpVOResources">
      <documentation>Retrieve All VOResources from Registry</documentation>
      <input message="s0:DumpVOResourcesHttpGetIn" />
      <output message="s0:DumpVOResourcesHttpGetOut" />
    </operation>
    <operation name="QueryVOResource">
      <documentation>Returns VOResources: Input WHERE predicate for SQL Query like e.g. 
 maxSearchRadius &gt; 1 and ServiceType like 'CONE'</documentation>
      <input message="s0:QueryVOResourceHttpGetIn" />
      <output message="s0:QueryVOResourceHttpGetOut" />
    </operation>
    <operation name="QueryResource">
      <documentation>Returns custom simplified Resources: Input WHERE predicate for SQL Query like e.g. 
 ServiceType like 'CONE'</documentation>
      <input message="s0:QueryResourceHttpGetIn" />
      <output message="s0:QueryResourceHttpGetOut" />
    </operation>
    <operation name="QueryRegistry">
      <documentation>Returns SimpleResource (backward compatibility for DIS): Input WHERE predicate for SQL Query like e.g. 
 maxSearchRadius &gt; 1 and ServiceType like 'CONE'</documentation>
      <input message="s0:QueryRegistryHttpGetIn" />
      <output message="s0:QueryRegistryHttpGetOut" />
    </operation>
    <operation name="KeywordSearch">
      <documentation>searches registry for keyword</documentation>
      <input message="s0:KeywordSearchHttpGetIn" />
      <output message="s0:KeywordSearchHttpGetOut" />
    </operation>
    <operation name="Revisions">
      <documentation>returns cvs verions of classes in this service</documentation>
      <input message="s0:RevisionsHttpGetIn" />
      <output message="s0:RevisionsHttpGetOut" />
    </operation>
    <operation name="QueryVOResource0_10">
      <documentation>Returns VOResources: Input WHERE predicate for SQL Query like e.g. 
 maxSearchRadius &gt; 1 and ServiceType like 'CONE'</documentation>
      <input message="s0:QueryVOResource0_10HttpGetIn" />
      <output message="s0:QueryVOResource0_10HttpGetOut" />
    </operation>
  </portType>
  <portType name="RegistryHttpPost">
    <operation name="DumpRegistry">
      <documentation>Retrieve All Records from Registry, returns SimpleResources</documentation>
      <input message="s0:DumpRegistryHttpPostIn" />
      <output message="s0:DumpRegistryHttpPostOut" />
    </operation>
    <operation name="DumpVOResources">
      <documentation>Retrieve All VOResources from Registry</documentation>
      <input message="s0:DumpVOResourcesHttpPostIn" />
      <output message="s0:DumpVOResourcesHttpPostOut" />
    </operation>
    <operation name="QueryVOResource">
      <documentation>Returns VOResources: Input WHERE predicate for SQL Query like e.g. 
 maxSearchRadius &gt; 1 and ServiceType like 'CONE'</documentation>
      <input message="s0:QueryVOResourceHttpPostIn" />
      <output message="s0:QueryVOResourceHttpPostOut" />
    </operation>
    <operation name="QueryResource">
      <documentation>Returns custom simplified Resources: Input WHERE predicate for SQL Query like e.g. 
 ServiceType like 'CONE'</documentation>
      <input message="s0:QueryResourceHttpPostIn" />
      <output message="s0:QueryResourceHttpPostOut" />
    </operation>
    <operation name="QueryRegistry">
      <documentation>Returns SimpleResource (backward compatibility for DIS): Input WHERE predicate for SQL Query like e.g. 
 maxSearchRadius &gt; 1 and ServiceType like 'CONE'</documentation>
      <input message="s0:QueryRegistryHttpPostIn" />
      <output message="s0:QueryRegistryHttpPostOut" />
    </operation>
    <operation name="KeywordSearch">
      <documentation>searches registry for keyword</documentation>
      <input message="s0:KeywordSearchHttpPostIn" />
      <output message="s0:KeywordSearchHttpPostOut" />
    </operation>
    <operation name="Revisions">
      <documentation>returns cvs verions of classes in this service</documentation>
      <input message="s0:RevisionsHttpPostIn" />
      <output message="s0:RevisionsHttpPostOut" />
    </operation>
    <operation name="QueryVOResource0_10">
      <documentation>Returns VOResources: Input WHERE predicate for SQL Query like e.g. 
 maxSearchRadius &gt; 1 and ServiceType like 'CONE'</documentation>
      <input message="s0:QueryVOResource0_10HttpPostIn" />
      <output message="s0:QueryVOResource0_10HttpPostOut" />
    </operation>
  </portType>
  <binding name="RegistrySoap" type="s0:RegistrySoap">
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document" />
    <operation name="DumpRegistry">
      <soap:operation soapAction="http://www.us-vo.org/DumpRegistry" style="document" />
      <input>
        <soap:body use="literal" />
      </input>
      <output>
        <soap:body use="literal" />
      </output>
    </operation>
    <operation name="DumpVOResources">
      <soap:operation soapAction="http://www.us-vo.org/DumpVOResources" style="document" />
      <input>
        <soap:body use="literal" />
      </input>
      <output>
        <soap:body use="literal" />
      </output>
    </operation>
    <operation name="QueryVOResource">
      <soap:operation soapAction="http://www.us-vo.org/QueryVOResource" style="document" />
      <input>
        <soap:body use="literal" />
      </input>
      <output>
        <soap:body use="literal" />
      </output>
    </operation>
    <operation name="QueryResource">
      <soap:operation soapAction="http://www.us-vo.org/QueryResource" style="document" />
      <input>
        <soap:body use="literal" />
      </input>
      <output>
        <soap:body use="literal" />
      </output>
    </operation>
    <operation name="QueryRegistry">
      <soap:operation soapAction="http://www.us-vo.org/QueryRegistry" style="document" />
      <input>
        <soap:body use="literal" />
      </input>
      <output>
        <soap:body use="literal" />
      </output>
    </operation>
    <operation name="KeywordSearch">
      <soap:operation soapAction="http://www.us-vo.org/KeywordSearch" style="document" />
      <input>
        <soap:body use="literal" />
      </input>
      <output>
        <soap:body use="literal" />
      </output>
    </operation>
    <operation name="Revisions">
      <soap:operation soapAction="http://www.us-vo.org/Revisions" style="document" />
      <input>
        <soap:body use="literal" />
      </input>
      <output>
        <soap:body use="literal" />
      </output>
    </operation>
    <operation name="QueryVOResource0_10">
      <soap:operation soapAction="http://www.us-vo.org/QueryVOResource0_10" style="document" />
      <input>
        <soap:body use="literal" />
      </input>
      <output>
        <soap:body use="literal" />
      </output>
    </operation>
  </binding>
  <binding name="RegistryHttpGet" type="s0:RegistryHttpGet">
    <http:binding verb="GET" />
    <operation name="DumpRegistry">
      <http:operation location="/DumpRegistry" />
      <input>
        <http:urlEncoded />
      </input>
      <output>
        <mime:mimeXml part="Body" />
      </output>
    </operation>
    <operation name="DumpVOResources">
      <http:operation location="/DumpVOResources" />
      <input>
        <http:urlEncoded />
      </input>
      <output>
        <mime:mimeXml part="Body" />
      </output>
    </operation>
    <operation name="QueryVOResource">
      <http:operation location="/QueryVOResource" />
      <input>
        <http:urlEncoded />
      </input>
      <output>
        <mime:mimeXml part="Body" />
      </output>
    </operation>
    <operation name="QueryResource">
      <http:operation location="/QueryResource" />
      <input>
        <http:urlEncoded />
      </input>
      <output>
        <mime:mimeXml part="Body" />
      </output>
    </operation>
    <operation name="QueryRegistry">
      <http:operation location="/QueryRegistry" />
      <input>
        <http:urlEncoded />
      </input>
      <output>
        <mime:mimeXml part="Body" />
      </output>
    </operation>
    <operation name="KeywordSearch">
      <http:operation location="/KeywordSearch" />
      <input>
        <http:urlEncoded />
      </input>
      <output>
        <mime:mimeXml part="Body" />
      </output>
    </operation>
    <operation name="Revisions">
      <http:operation location="/Revisions" />
      <input>
        <http:urlEncoded />
      </input>
      <output>
        <mime:mimeXml part="Body" />
      </output>
    </operation>
    <operation name="QueryVOResource0_10">
      <http:operation location="/QueryVOResource0_10" />
      <input>
        <http:urlEncoded />
      </input>
      <output>
        <mime:mimeXml part="Body" />
      </output>
    </operation>
  </binding>
  <binding name="RegistryHttpPost" type="s0:RegistryHttpPost">
    <http:binding verb="POST" />
    <operation name="DumpRegistry">
      <http:operation location="/DumpRegistry" />
      <input>
        <mime:content type="application/x-www-form-urlencoded" />
      </input>
      <output>
        <mime:mimeXml part="Body" />
      </output>
    </operation>
    <operation name="DumpVOResources">
      <http:operation location="/DumpVOResources" />
      <input>
        <mime:content type="application/x-www-form-urlencoded" />
      </input>
      <output>
        <mime:mimeXml part="Body" />
      </output>
    </operation>
    <operation name="QueryVOResource">
      <http:operation location="/QueryVOResource" />
      <input>
        <mime:content type="application/x-www-form-urlencoded" />
      </input>
      <output>
        <mime:mimeXml part="Body" />
      </output>
    </operation>
    <operation name="QueryResource">
      <http:operation location="/QueryResource" />
      <input>
        <mime:content type="application/x-www-form-urlencoded" />
      </input>
      <output>
        <mime:mimeXml part="Body" />
      </output>
    </operation>
    <operation name="QueryRegistry">
      <http:operation location="/QueryRegistry" />
      <input>
        <mime:content type="application/x-www-form-urlencoded" />
      </input>
      <output>
        <mime:mimeXml part="Body" />
      </output>
    </operation>
    <operation name="KeywordSearch">
      <http:operation location="/KeywordSearch" />
      <input>
        <mime:content type="application/x-www-form-urlencoded" />
      </input>
      <output>
        <mime:mimeXml part="Body" />
      </output>
    </operation>
    <operation name="Revisions">
      <http:operation location="/Revisions" />
      <input>
        <mime:content type="application/x-www-form-urlencoded" />
      </input>
      <output>
        <mime:mimeXml part="Body" />
      </output>
    </operation>
    <operation name="QueryVOResource0_10">
      <http:operation location="/QueryVOResource0_10" />
      <input>
        <mime:content type="application/x-www-form-urlencoded" />
      </input>
      <output>
        <mime:mimeXml part="Body" />
      </output>
    </operation>
  </binding>
  <service name="Registry">
    <port name="RegistrySoap" binding="s0:RegistrySoap">
      <soap:address location="http://nvo.stsci.edu/voregistry/registry.asmx" />
    </port>
    <port name="RegistryHttpGet" binding="s0:RegistryHttpGet">
      <http:address location="http://nvo.stsci.edu/voregistry/registry.asmx" />
    </port>
    <port name="RegistryHttpPost" binding="s0:RegistryHttpPost">
      <http:address location="http://nvo.stsci.edu/voregistry/registry.asmx" />
    </port>
  </service>
</definitions>