<?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:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:tns="http://www.us-vo.org" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" targetNamespace="http://www.us-vo.org" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
  <wsdl:types>
    <s:schema elementFormDefault="qualified" targetNamespace="http://www.us-vo.org">
      <s:element name="DSQueryRegistry">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="predicate" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="DSQueryRegistryResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="DSQueryRegistryResult">
              <s:complexType>
                <s:sequence>
                  <s:element ref="s:schema" />
                  <s:any />
                </s:sequence>
              </s:complexType>
            </s:element>
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="DSQuery">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="sqlStmnt" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="password" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="DSQueryResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="DSQueryResult">
              <s:complexType>
                <s:sequence>
                  <s:element ref="s:schema" />
                  <s:any />
                </s:sequence>
              </s:complexType>
            </s:element>
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="DSQueryInterfaces">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="identifier" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="DSQueryInterfacesResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="DSQueryInterfacesResult" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="DSKeywordSearch">
        <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="DSKeywordSearchResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="DSKeywordSearchResult">
              <s:complexType>
                <s:sequence>
                  <s:element ref="s:schema" />
                  <s:any />
                </s:sequence>
              </s:complexType>
            </s:element>
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="DataSet" nillable="true">
        <s:complexType>
          <s:sequence>
            <s:element ref="s:schema" />
            <s:any />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="string" nillable="true" type="s:string" />
    </s:schema>
  </wsdl:types>
  <wsdl:message name="DSQueryRegistrySoapIn">
    <wsdl:part name="parameters" element="tns:DSQueryRegistry" />
  </wsdl:message>
  <wsdl:message name="DSQueryRegistrySoapOut">
    <wsdl:part name="parameters" element="tns:DSQueryRegistryResponse" />
  </wsdl:message>
  <wsdl:message name="DSQuerySoapIn">
    <wsdl:part name="parameters" element="tns:DSQuery" />
  </wsdl:message>
  <wsdl:message name="DSQuerySoapOut">
    <wsdl:part name="parameters" element="tns:DSQueryResponse" />
  </wsdl:message>
  <wsdl:message name="DSQueryInterfacesSoapIn">
    <wsdl:part name="parameters" element="tns:DSQueryInterfaces" />
  </wsdl:message>
  <wsdl:message name="DSQueryInterfacesSoapOut">
    <wsdl:part name="parameters" element="tns:DSQueryInterfacesResponse" />
  </wsdl:message>
  <wsdl:message name="DSKeywordSearchSoapIn">
    <wsdl:part name="parameters" element="tns:DSKeywordSearch" />
  </wsdl:message>
  <wsdl:message name="DSKeywordSearchSoapOut">
    <wsdl:part name="parameters" element="tns:DSKeywordSearchResponse" />
  </wsdl:message>
  <wsdl:message name="DSQueryRegistryHttpGetIn">
    <wsdl:part name="predicate" type="s:string" />
  </wsdl:message>
  <wsdl:message name="DSQueryRegistryHttpGetOut">
    <wsdl:part name="Body" element="tns:DataSet" />
  </wsdl:message>
  <wsdl:message name="DSQueryHttpGetIn">
    <wsdl:part name="sqlStmnt" type="s:string" />
    <wsdl:part name="password" type="s:string" />
  </wsdl:message>
  <wsdl:message name="DSQueryHttpGetOut">
    <wsdl:part name="Body" element="tns:DataSet" />
  </wsdl:message>
  <wsdl:message name="DSQueryInterfacesHttpGetIn">
    <wsdl:part name="identifier" type="s:string" />
  </wsdl:message>
  <wsdl:message name="DSQueryInterfacesHttpGetOut">
    <wsdl:part name="Body" element="tns:string" />
  </wsdl:message>
  <wsdl:message name="DSKeywordSearchHttpGetIn">
    <wsdl:part name="keywords" type="s:string" />
    <wsdl:part name="andKeys" type="s:string" />
  </wsdl:message>
  <wsdl:message name="DSKeywordSearchHttpGetOut">
    <wsdl:part name="Body" element="tns:DataSet" />
  </wsdl:message>
  <wsdl:message name="DSQueryRegistryHttpPostIn">
    <wsdl:part name="predicate" type="s:string" />
  </wsdl:message>
  <wsdl:message name="DSQueryRegistryHttpPostOut">
    <wsdl:part name="Body" element="tns:DataSet" />
  </wsdl:message>
  <wsdl:message name="DSQueryHttpPostIn">
    <wsdl:part name="sqlStmnt" type="s:string" />
    <wsdl:part name="password" type="s:string" />
  </wsdl:message>
  <wsdl:message name="DSQueryHttpPostOut">
    <wsdl:part name="Body" element="tns:DataSet" />
  </wsdl:message>
  <wsdl:message name="DSQueryInterfacesHttpPostIn">
    <wsdl:part name="identifier" type="s:string" />
  </wsdl:message>
  <wsdl:message name="DSQueryInterfacesHttpPostOut">
    <wsdl:part name="Body" element="tns:string" />
  </wsdl:message>
  <wsdl:message name="DSKeywordSearchHttpPostIn">
    <wsdl:part name="keywords" type="s:string" />
    <wsdl:part name="andKeys" type="s:string" />
  </wsdl:message>
  <wsdl:message name="DSKeywordSearchHttpPostOut">
    <wsdl:part name="Body" element="tns:DataSet" />
  </wsdl:message>
  <wsdl:portType name="RegistryDBQuerySoap">
    <wsdl:operation name="DSQueryRegistry">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Input WHERE predicate for SQL Query. This queries the Resource table only.</wsdl:documentation>
      <wsdl:input message="tns:DSQueryRegistrySoapIn" />
      <wsdl:output message="tns:DSQueryRegistrySoapOut" />
    </wsdl:operation>
    <wsdl:operation name="DSQuery">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Input SQL Query. This can query the entire registry database. Requires passphrase.</wsdl:documentation>
      <wsdl:input message="tns:DSQuerySoapIn" />
      <wsdl:output message="tns:DSQuerySoapOut" />
    </wsdl:operation>
    <wsdl:operation name="DSQueryInterfaces">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">retrieve capability and interface information for a given ACTIVE resource. Returns dataset custom-serialized</wsdl:documentation>
      <wsdl:input message="tns:DSQueryInterfacesSoapIn" />
      <wsdl:output message="tns:DSQueryInterfacesSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="DSKeywordSearch">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Searches registry for keyword.  To AND keywords, set andKeys to 'true', otherwise keywords will be OR'd.</wsdl:documentation>
      <wsdl:input message="tns:DSKeywordSearchSoapIn" />
      <wsdl:output message="tns:DSKeywordSearchSoapOut" />
    </wsdl:operation>
  </wsdl:portType>
  <wsdl:portType name="RegistryDBQueryHttpGet">
    <wsdl:operation name="DSQueryRegistry">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Input WHERE predicate for SQL Query. This queries the Resource table only.</wsdl:documentation>
      <wsdl:input message="tns:DSQueryRegistryHttpGetIn" />
      <wsdl:output message="tns:DSQueryRegistryHttpGetOut" />
    </wsdl:operation>
    <wsdl:operation name="DSQuery">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Input SQL Query. This can query the entire registry database. Requires passphrase.</wsdl:documentation>
      <wsdl:input message="tns:DSQueryHttpGetIn" />
      <wsdl:output message="tns:DSQueryHttpGetOut" />
    </wsdl:operation>
    <wsdl:operation name="DSQueryInterfaces">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">retrieve capability and interface information for a given ACTIVE resource. Returns dataset custom-serialized</wsdl:documentation>
      <wsdl:input message="tns:DSQueryInterfacesHttpGetIn" />
      <wsdl:output message="tns:DSQueryInterfacesHttpGetOut" />
    </wsdl:operation>
    <wsdl:operation name="DSKeywordSearch">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Searches registry for keyword.  To AND keywords, set andKeys to 'true', otherwise keywords will be OR'd.</wsdl:documentation>
      <wsdl:input message="tns:DSKeywordSearchHttpGetIn" />
      <wsdl:output message="tns:DSKeywordSearchHttpGetOut" />
    </wsdl:operation>
  </wsdl:portType>
  <wsdl:portType name="RegistryDBQueryHttpPost">
    <wsdl:operation name="DSQueryRegistry">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Input WHERE predicate for SQL Query. This queries the Resource table only.</wsdl:documentation>
      <wsdl:input message="tns:DSQueryRegistryHttpPostIn" />
      <wsdl:output message="tns:DSQueryRegistryHttpPostOut" />
    </wsdl:operation>
    <wsdl:operation name="DSQuery">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Input SQL Query. This can query the entire registry database. Requires passphrase.</wsdl:documentation>
      <wsdl:input message="tns:DSQueryHttpPostIn" />
      <wsdl:output message="tns:DSQueryHttpPostOut" />
    </wsdl:operation>
    <wsdl:operation name="DSQueryInterfaces">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">retrieve capability and interface information for a given ACTIVE resource. Returns dataset custom-serialized</wsdl:documentation>
      <wsdl:input message="tns:DSQueryInterfacesHttpPostIn" />
      <wsdl:output message="tns:DSQueryInterfacesHttpPostOut" />
    </wsdl:operation>
    <wsdl:operation name="DSKeywordSearch">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Searches registry for keyword.  To AND keywords, set andKeys to 'true', otherwise keywords will be OR'd.</wsdl:documentation>
      <wsdl:input message="tns:DSKeywordSearchHttpPostIn" />
      <wsdl:output message="tns:DSKeywordSearchHttpPostOut" />
    </wsdl:operation>
  </wsdl:portType>
  <wsdl:binding name="RegistryDBQuerySoap" type="tns:RegistryDBQuerySoap">
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" />
    <wsdl:operation name="DSQueryRegistry">
      <soap:operation soapAction="http://www.us-vo.org/DSQueryRegistry" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="DSQuery">
      <soap:operation soapAction="http://www.us-vo.org/DSQuery" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="DSQueryInterfaces">
      <soap:operation soapAction="http://www.us-vo.org/DSQueryInterfaces" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="DSKeywordSearch">
      <soap:operation soapAction="http://www.us-vo.org/DSKeywordSearch" 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="RegistryDBQuerySoap12" type="tns:RegistryDBQuerySoap">
    <soap12:binding transport="http://schemas.xmlsoap.org/soap/http" />
    <wsdl:operation name="DSQueryRegistry">
      <soap12:operation soapAction="http://www.us-vo.org/DSQueryRegistry" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="DSQuery">
      <soap12:operation soapAction="http://www.us-vo.org/DSQuery" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="DSQueryInterfaces">
      <soap12:operation soapAction="http://www.us-vo.org/DSQueryInterfaces" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="DSKeywordSearch">
      <soap12:operation soapAction="http://www.us-vo.org/DSKeywordSearch" 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="RegistryDBQueryHttpGet" type="tns:RegistryDBQueryHttpGet">
    <http:binding verb="GET" />
    <wsdl:operation name="DSQueryRegistry">
      <http:operation location="/DSQueryRegistry" />
      <wsdl:input>
        <http:urlEncoded />
      </wsdl:input>
      <wsdl:output>
        <mime:mimeXml part="Body" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="DSQuery">
      <http:operation location="/DSQuery" />
      <wsdl:input>
        <http:urlEncoded />
      </wsdl:input>
      <wsdl:output>
        <mime:mimeXml part="Body" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="DSQueryInterfaces">
      <http:operation location="/DSQueryInterfaces" />
      <wsdl:input>
        <http:urlEncoded />
      </wsdl:input>
      <wsdl:output>
        <mime:mimeXml part="Body" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="DSKeywordSearch">
      <http:operation location="/DSKeywordSearch" />
      <wsdl:input>
        <http:urlEncoded />
      </wsdl:input>
      <wsdl:output>
        <mime:mimeXml part="Body" />
      </wsdl:output>
    </wsdl:operation>
  </wsdl:binding>
  <wsdl:binding name="RegistryDBQueryHttpPost" type="tns:RegistryDBQueryHttpPost">
    <http:binding verb="POST" />
    <wsdl:operation name="DSQueryRegistry">
      <http:operation location="/DSQueryRegistry" />
      <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="DSQuery">
      <http:operation location="/DSQuery" />
      <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="DSQueryInterfaces">
      <http:operation location="/DSQueryInterfaces" />
      <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="DSKeywordSearch">
      <http:operation location="/DSKeywordSearch" />
      <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="RegistryDBQuery">
    <wsdl:port name="RegistryDBQuerySoap" binding="tns:RegistryDBQuerySoap">
      <soap:address location="http://vao.stsci.edu/directory/RegistryDBQuery.asmx" />
    </wsdl:port>
    <wsdl:port name="RegistryDBQuerySoap12" binding="tns:RegistryDBQuerySoap12">
      <soap12:address location="http://vao.stsci.edu/directory/RegistryDBQuery.asmx" />
    </wsdl:port>
    <wsdl:port name="RegistryDBQueryHttpGet" binding="tns:RegistryDBQueryHttpGet">
      <http:address location="http://vao.stsci.edu/directory/RegistryDBQuery.asmx" />
    </wsdl:port>
    <wsdl:port name="RegistryDBQueryHttpPost" binding="tns:RegistryDBQueryHttpPost">
      <http:address location="http://vao.stsci.edu/directory/RegistryDBQuery.asmx" />
    </wsdl:port>
  </wsdl:service>
</wsdl:definitions>