<?xml version="1.0" encoding="utf-8"?>
<wsdl:definitions xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="http://arecibo.tc.cornell.edu/PALFA_WS" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" targetNamespace="http://arecibo.tc.cornell.edu/PALFA_WS" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
  <wsdl:types>
    <s:schema elementFormDefault="qualified" targetNamespace="http://arecibo.tc.cornell.edu/PALFA_WS">
      <s:element name="GetPointingNames">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="username" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="password" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="GetPointingNamesResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="GetPointingNamesResult" type="tns:ArrayOfString" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <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="GetCandidates">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="username" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="password" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="pointing_name" type="s:string" />
            <s:element minOccurs="1" maxOccurs="1" name="beam_number" type="s:int" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="GetCandidatesResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="GetCandidatesResult" type="tns:VOTABLE" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="VOTABLE">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="DESCRIPTION" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="DEFINITIONS" type="tns:DEFINITIONS" />
          <s:element minOccurs="0" maxOccurs="unbounded" name="INFO" type="tns:INFO" />
          <s:element minOccurs="0" maxOccurs="unbounded" name="RESOURCE" type="tns:RESOURCE" />
        </s:sequence>
        <s:attribute name="ID" type="s:ID" />
        <s:attribute name="version" type="tns:VOTABLEVersion" />
      </s:complexType>
      <s:complexType name="DEFINITIONS">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="COOSYS" type="tns:COOSYS" />
          <s:element minOccurs="0" maxOccurs="1" name="PARAM" type="tns:PARAM" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="COOSYS">
        <s:complexContent mixed="true">
          <s:extension base="tns:anyTEXT">
            <s:attribute name="ID" type="s:ID" />
            <s:attribute name="equinox" type="s:token" />
            <s:attribute name="epoch" type="s:token" />
            <s:attribute name="system" type="tns:COOSYSSystem" use="required" />
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="anyTEXT" mixed="true">
        <s:sequence>
          <s:any minOccurs="0" maxOccurs="unbounded" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="INFO">
        <s:complexContent mixed="true">
          <s:extension base="tns:anyTEXT" />
        </s:complexContent>
      </s:complexType>
      <s:simpleType name="COOSYSSystem">
        <s:restriction base="s:string">
          <s:enumeration value="eq_FK4" />
          <s:enumeration value="eq_FK5" />
          <s:enumeration value="ICRS" />
          <s:enumeration value="ecl_FK4" />
          <s:enumeration value="ecl_FK5" />
          <s:enumeration value="galactic" />
          <s:enumeration value="supergalactic" />
          <s:enumeration value="xy" />
          <s:enumeration value="barycentric" />
          <s:enumeration value="geo_app" />
        </s:restriction>
      </s:simpleType>
      <s:complexType name="PARAM">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="DESCRIPTION" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="VALUES" type="tns:VALUES" />
          <s:element minOccurs="0" maxOccurs="unbounded" name="LINK" type="tns:LINK" />
        </s:sequence>
        <s:attribute name="ID" type="s:ID" />
        <s:attribute name="unit" type="s:token" />
        <s:attribute name="datatype" type="tns:dataType" />
        <s:attribute name="precision" type="s:token" />
        <s:attribute name="width" type="s:positiveInteger" />
        <s:attribute name="ref" type="s:IDREF" />
        <s:attribute name="name" type="s:token" />
        <s:attribute name="ucd" type="s:token" />
        <s:attribute name="value" type="s:string" />
        <s:attribute name="arraysize" type="s:token" />
      </s:complexType>
      <s:complexType name="VALUES">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="MIN" type="tns:MIN" />
          <s:element minOccurs="0" maxOccurs="1" name="MAX" type="tns:MAX" />
          <s:element minOccurs="0" maxOccurs="unbounded" name="OPTION" type="tns:OPTION" />
        </s:sequence>
        <s:attribute name="ID" type="s:ID" />
        <s:attribute name="type" type="tns:VALUESType" use="required" />
        <s:attribute name="null" type="s:token" />
        <s:attribute name="invalid" type="tns:yesno" use="required" />
      </s:complexType>
      <s:complexType name="MIN" />
      <s:complexType name="MAX" />
      <s:complexType name="OPTION">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="OPTION" type="tns:OPTION" />
        </s:sequence>
        <s:attribute name="name" type="s:token" />
        <s:attribute name="value" type="s:string" />
      </s:complexType>
      <s:simpleType name="VALUESType">
        <s:restriction base="s:string">
          <s:enumeration value="legal" />
          <s:enumeration value="actual" />
        </s:restriction>
      </s:simpleType>
      <s:simpleType name="yesno">
        <s:restriction base="s:string">
          <s:enumeration value="yes" />
          <s:enumeration value="no" />
        </s:restriction>
      </s:simpleType>
      <s:complexType name="LINK">
        <s:simpleContent>
          <s:extension base="s:string">
            <s:attribute name="ID" type="s:ID" />
            <s:attribute name="content-role" type="tns:LINKContentrole" />
            <s:attribute name="content-type" type="s:token" />
            <s:attribute name="title" type="s:string" />
            <s:attribute name="value" type="s:string" />
            <s:attribute name="href" type="s:anyURI" />
            <s:attribute name="gref" type="s:token" />
            <s:attribute name="action" type="s:anyURI" />
          </s:extension>
        </s:simpleContent>
      </s:complexType>
      <s:simpleType name="LINKContentrole">
        <s:restriction base="s:string">
          <s:enumeration value="query" />
          <s:enumeration value="hints" />
          <s:enumeration value="doc" />
        </s:restriction>
      </s:simpleType>
      <s:simpleType name="dataType">
        <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:enumeration value="single" />
        </s:restriction>
      </s:simpleType>
      <s:complexType name="RESOURCE">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="DESCRIPTION" type="s:string" />
          <s:element minOccurs="0" maxOccurs="unbounded" name="INFO" type="tns:INFO" />
          <s:element minOccurs="0" maxOccurs="unbounded" name="COOSYS" type="tns:COOSYS" />
          <s:element minOccurs="0" maxOccurs="unbounded" name="PARAM" type="tns:PARAM" />
          <s:element minOccurs="0" maxOccurs="unbounded" name="LINK" type="tns:LINK" />
          <s:element minOccurs="0" maxOccurs="unbounded" name="TABLE" type="tns:TABLE" />
          <s:element minOccurs="0" maxOccurs="unbounded" name="RESOURCE" type="tns:RESOURCE" />
        </s:sequence>
        <s:attribute name="name" type="s:token" />
        <s:attribute name="ID" type="s:ID" />
        <s:attribute name="type" type="tns:RESOURCEType" use="required" />
      </s:complexType>
      <s:complexType name="TABLE">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="DESCRIPTION" type="s:string" />
          <s:element minOccurs="0" maxOccurs="unbounded" name="FIELD" type="tns:FIELD" />
          <s:element minOccurs="0" maxOccurs="unbounded" name="LINK" type="tns:LINK" />
          <s:element minOccurs="0" maxOccurs="1" name="DATA" type="tns:DATA" />
        </s:sequence>
        <s:attribute name="ID" type="s:ID" />
        <s:attribute name="name" type="s:token" />
        <s:attribute name="ref" type="s:IDREF" />
      </s:complexType>
      <s:complexType name="FIELD">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="DESCRIPTION" type="s:string" />
          <s:element minOccurs="0" maxOccurs="unbounded" name="VALUES" type="tns:VALUES" />
          <s:element minOccurs="0" maxOccurs="unbounded" name="LINK" type="tns:LINK" />
        </s:sequence>
        <s:attribute name="ID" type="s:ID" />
        <s:attribute name="unit" type="s:token" />
        <s:attribute name="datatype" type="tns:dataType" use="required" />
        <s:attribute name="precision" type="s:token" />
        <s:attribute name="width" type="s:positiveInteger" />
        <s:attribute name="ref" type="s:IDREF" />
        <s:attribute name="name" type="s:token" />
        <s:attribute name="ucd" type="s:string" />
        <s:attribute name="arraysize" type="s:string" />
        <s:attribute name="type" type="tns:FIELDType" />
      </s:complexType>
      <s:simpleType name="FIELDType">
        <s:restriction base="s:string">
          <s:enumeration value="hidden" />
          <s:enumeration value="no_query" />
          <s:enumeration value="trigger" />
        </s:restriction>
      </s:simpleType>
      <s:complexType name="DATA">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="TABLEDATA" type="tns:ArrayOfArrayOfTD" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="ArrayOfArrayOfTD">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="TR" type="tns:ArrayOfTD" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="ArrayOfTD">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="TD" type="tns:TD" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="TD">
        <s:simpleContent>
          <s:extension base="s:string" />
        </s:simpleContent>
      </s:complexType>
      <s:simpleType name="RESOURCEType">
        <s:restriction base="s:string">
          <s:enumeration value="results" />
          <s:enumeration value="meta" />
        </s:restriction>
      </s:simpleType>
      <s:simpleType name="VOTABLEVersion">
        <s:restriction base="s:string">
          <s:enumeration value="v1.0" />
        </s:restriction>
      </s:simpleType>
      <s:element name="GetCandidatesAsString">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="username" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="password" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="pointing_name" type="s:string" />
            <s:element minOccurs="1" maxOccurs="1" name="beam_number" type="s:int" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="GetCandidatesAsStringResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="GetCandidatesAsStringResult" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="QueryDatabase">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="username" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="password" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="sqlText" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="QueryDatabaseResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="QueryDatabaseResult" type="tns:VOTABLE" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="QueryDatabaseAsString">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="username" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="password" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="sqlText" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="QueryDatabaseAsStringResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="QueryDatabaseAsStringResult" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="GetImagePlot">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="username" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="password" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="filename" type="s:string" />
            <s:element minOccurs="1" maxOccurs="1" name="scale" type="s:int" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="GetImagePlotResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="GetImagePlotResult" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="GetZipArchive">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="username" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="password" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="filename" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="GetZipArchiveResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="GetZipArchiveResult" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
    </s:schema>
  </wsdl:types>
  <wsdl:message name="GetPointingNamesSoapIn">
    <wsdl:part name="parameters" element="tns:GetPointingNames" />
  </wsdl:message>
  <wsdl:message name="GetPointingNamesSoapOut">
    <wsdl:part name="parameters" element="tns:GetPointingNamesResponse" />
  </wsdl:message>
  <wsdl:message name="GetCandidatesSoapIn">
    <wsdl:part name="parameters" element="tns:GetCandidates" />
  </wsdl:message>
  <wsdl:message name="GetCandidatesSoapOut">
    <wsdl:part name="parameters" element="tns:GetCandidatesResponse" />
  </wsdl:message>
  <wsdl:message name="GetCandidatesAsStringSoapIn">
    <wsdl:part name="parameters" element="tns:GetCandidatesAsString" />
  </wsdl:message>
  <wsdl:message name="GetCandidatesAsStringSoapOut">
    <wsdl:part name="parameters" element="tns:GetCandidatesAsStringResponse" />
  </wsdl:message>
  <wsdl:message name="QueryDatabaseSoapIn">
    <wsdl:part name="parameters" element="tns:QueryDatabase" />
  </wsdl:message>
  <wsdl:message name="QueryDatabaseSoapOut">
    <wsdl:part name="parameters" element="tns:QueryDatabaseResponse" />
  </wsdl:message>
  <wsdl:message name="QueryDatabaseAsStringSoapIn">
    <wsdl:part name="parameters" element="tns:QueryDatabaseAsString" />
  </wsdl:message>
  <wsdl:message name="QueryDatabaseAsStringSoapOut">
    <wsdl:part name="parameters" element="tns:QueryDatabaseAsStringResponse" />
  </wsdl:message>
  <wsdl:message name="GetImagePlotSoapIn">
    <wsdl:part name="parameters" element="tns:GetImagePlot" />
  </wsdl:message>
  <wsdl:message name="GetImagePlotSoapOut">
    <wsdl:part name="parameters" element="tns:GetImagePlotResponse" />
  </wsdl:message>
  <wsdl:message name="GetZipArchiveSoapIn">
    <wsdl:part name="parameters" element="tns:GetZipArchive" />
  </wsdl:message>
  <wsdl:message name="GetZipArchiveSoapOut">
    <wsdl:part name="parameters" element="tns:GetZipArchiveResponse" />
  </wsdl:message>
  <wsdl:portType name="Protected_x0020_PALFA_x0020_Web_x0020_ServicesSoap">
    <wsdl:operation name="GetPointingNames">
      <documentation xmlns="http://schemas.xmlsoap.org/wsdl/">Get a list of pointing names.</documentation>
      <wsdl:input message="tns:GetPointingNamesSoapIn" />
      <wsdl:output message="tns:GetPointingNamesSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="GetCandidates">
      <documentation xmlns="http://schemas.xmlsoap.org/wsdl/">Retrieve pulsar candidates for a particular pointing.</documentation>
      <wsdl:input message="tns:GetCandidatesSoapIn" />
      <wsdl:output message="tns:GetCandidatesSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="GetCandidatesAsString">
      <documentation xmlns="http://schemas.xmlsoap.org/wsdl/">Retrieve pulsar candidates for a particular pointing and return VOTable as a string</documentation>
      <wsdl:input message="tns:GetCandidatesAsStringSoapIn" />
      <wsdl:output message="tns:GetCandidatesAsStringSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="QueryDatabase">
      <documentation xmlns="http://schemas.xmlsoap.org/wsdl/">Ad-hoc database query.</documentation>
      <wsdl:input message="tns:QueryDatabaseSoapIn" />
      <wsdl:output message="tns:QueryDatabaseSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="QueryDatabaseAsString">
      <documentation xmlns="http://schemas.xmlsoap.org/wsdl/">Ad-hoc database query and return VOTable as string</documentation>
      <wsdl:input message="tns:QueryDatabaseAsStringSoapIn" />
      <wsdl:output message="tns:QueryDatabaseAsStringSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="GetImagePlot">
      <documentation xmlns="http://schemas.xmlsoap.org/wsdl/">Retrieve image from database as a URL link.</documentation>
      <wsdl:input message="tns:GetImagePlotSoapIn" />
      <wsdl:output message="tns:GetImagePlotSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="GetZipArchive">
      <documentation xmlns="http://schemas.xmlsoap.org/wsdl/">Retrieve zip archive from database as a URL link.</documentation>
      <wsdl:input message="tns:GetZipArchiveSoapIn" />
      <wsdl:output message="tns:GetZipArchiveSoapOut" />
    </wsdl:operation>
  </wsdl:portType>
  <wsdl:binding name="Protected_x0020_PALFA_x0020_Web_x0020_ServicesSoap" type="tns:Protected_x0020_PALFA_x0020_Web_x0020_ServicesSoap">
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document" />
    <wsdl:operation name="GetPointingNames">
      <soap:operation soapAction="http://arecibo.tc.cornell.edu/PALFA_WS/GetPointingNames" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="GetCandidates">
      <soap:operation soapAction="http://arecibo.tc.cornell.edu/PALFA_WS/GetCandidates" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="GetCandidatesAsString">
      <soap:operation soapAction="http://arecibo.tc.cornell.edu/PALFA_WS/GetCandidatesAsString" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="QueryDatabase">
      <soap:operation soapAction="http://arecibo.tc.cornell.edu/PALFA_WS/QueryDatabase" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="QueryDatabaseAsString">
      <soap:operation soapAction="http://arecibo.tc.cornell.edu/PALFA_WS/QueryDatabaseAsString" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="GetImagePlot">
      <soap:operation soapAction="http://arecibo.tc.cornell.edu/PALFA_WS/GetImagePlot" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="GetZipArchive">
      <soap:operation soapAction="http://arecibo.tc.cornell.edu/PALFA_WS/GetZipArchive" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
  </wsdl:binding>
  <wsdl:service name="Protected_x0020_PALFA_x0020_Web_x0020_Services">
    <documentation xmlns="http://schemas.xmlsoap.org/wsdl/">This is an &lt;b&gt;XML Web Service&lt;/b&gt; interface to retrieve information from the PALFA Survey.&lt;br&gt;Send comments to &lt;b&gt;Adam Brazier&lt;/b&gt; (abrazier@astro.cornell.edu) or &lt;b&gt;Jim Cordes&lt;/b&gt; (cordes@astro.cornell.edu) </documentation>
    <wsdl:port name="Protected_x0020_PALFA_x0020_Web_x0020_ServicesSoap" binding="tns:Protected_x0020_PALFA_x0020_Web_x0020_ServicesSoap">
      <soap:address location="http://arecibo.tc.cornell.edu/PALFA_WS/protected_WS.asmx" />
    </wsdl:port>
  </wsdl:service>
</wsdl:definitions>