<?xml version="1.0"?>
<definitions name="SOAPAtlas"
 targetNamespace="http://soap1.hopewiser.com/SOAPAtlas"
  xmlns:SOAP="http://schemas.xmlsoap.org/wsdl/soap/"
  xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xmlns:tns="http://soap1.hopewiser.com/SOAPAtlas"
  xmlns:Atlas="http://soap1.hopewiser.com/SOAPAtlas"
  xmlns:WSDL="http://schemas.xmlsoap.org/wsdl/"
  xmlns:xsd="http://www.w3.org/2001/XMLSchema"
  xmlns="http://schemas.xmlsoap.org/wsdl/">

<types>

 <schema targetNamespace="http://soap1.hopewiser.com/SOAPAtlas"
  xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xmlns:Atlas="http://soap1.hopewiser.com/SOAPAtlas"
  xmlns:WSDL="http://schemas.xmlsoap.org/wsdl/"
  xmlns:xsd="http://www.w3.org/2001/XMLSchema"

  xmlns="http://www.w3.org/2001/XMLSchema"
  attributeFormDefault="qualified">



  <complexType name="login">
   <sequence>
    <element name="login" type="xsd:string" minOccurs="1" maxOccurs="1" nillable="true"/>
    <element name="password" type="xsd:string" minOccurs="1" maxOccurs="1" nillable="true"/>
   </sequence>
  </complexType>

  <!-- elements required for modules method -->
  <complexType name="modules">
   <sequence>
    <element name="session_id" type="xsd:string" minOccurs="1" maxOccurs="1" nillable="true"/>
   </sequence>
  </complexType>

  <complexType name="module">
   <sequence>
    <element name="CLASS" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="COUNTRY" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="DESCRIPTION" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="MODULE_ID" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
   </sequence>
  </complexType>

  <complexType name="arrayOfModule">
        <xsd:sequence>
          <xsd:element name="module" type="Atlas:module"
                    minOccurs="0" maxOccurs="unbounded"/>
        </xsd:sequence>
  </complexType>

  <!-- elements required for version method -->
  <complexType name="version">
   <sequence>
    <element name="session_id" type="xsd:string" minOccurs="1" maxOccurs="1" nillable="true"/>
    <element name="module_id" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="dataset" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
   </sequence>
  </complexType>

  <complexType name="version_atlas">
   <sequence>
    <element name="ATLAS" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="PAF" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="SERVER" type="xsd:string" minOccurs="1" maxOccurs="1" nillable="true"/>
   </sequence>
  </complexType>

  <!-- elements required for status method -->
  <complexType name="status">
   <sequence>
    <element name="session_id" type="xsd:string" minOccurs="1" maxOccurs="1" nillable="true"/>
    <element name="country" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
   </sequence>
  </complexType>

  <complexType name="status_atlas">
   <sequence>
    <element name="CLICKS"     type="xsd:string" minOccurs="1" maxOccurs="1" nillable="true"/>
    <element name="EXPIRY"     type="xsd:string" minOccurs="1" maxOccurs="1" nillable="true"/>
    <element name="MAX_CLICKS" type="xsd:string" minOccurs="1" maxOccurs="1" nillable="true"/>
   </sequence>
  </complexType>

  <!-- elements required for ah21 method -->
  <complexType name="ah21">
   <sequence>
    <element name="session_id" type="xsd:string" minOccurs="1" maxOccurs="1" nillable="true"/>
    <element name="input" type="xsd:string" minOccurs="1" maxOccurs="1" nillable="true"/>
    <element name="data" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="dataset" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
   </sequence>
  </complexType>

  <!-- elements required for ah23 method -->
  <complexType name="ah23">
   <sequence>
    <element name="session_id" type="xsd:string" minOccurs="1" maxOccurs="1" nillable="true"/>
    <element name="input" type="xsd:string" minOccurs="1" maxOccurs="1" nillable="true"/>
    <element name="data" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="dataset" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
   </sequence>
  </complexType>

  <!-- elements required for ah43 method -->
  <complexType name="ah43">
   <sequence>
    <element name="session_id" type="xsd:string" minOccurs="1" maxOccurs="1" nillable="true"/>
    <element name="input" type="xsd:string" minOccurs="1" maxOccurs="1" nillable="true"/>
    <element name="data" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="dataset" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
   </sequence>
  </complexType>


  <!-- elements required for listapi method -->
  <complexType name="listapi">
   <sequence>
    <element name="session_id" type="xsd:string" minOccurs="1" maxOccurs="1" nillable="true"/>
    <element name="input" type="xsd:string" minOccurs="1" maxOccurs="1" nillable="true"/>
    <element name="data" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="dataset" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
   </sequence>
  </complexType>

  <!-- standard address structure for use in addressing calls -->
  <complexType name="arrayOfString">
        <xsd:sequence>
          <xsd:element name="item" type="xsd:string"
                    minOccurs="0" maxOccurs="unbounded"/>
        </xsd:sequence>
  </complexType>

  <complexType name="address">
   <sequence>

    <element name="COUNTRY"              type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="COUNTRY_FLAG"         type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="COUNTY"               type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="DEDUP_KEY"            type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="DEPARTMENT"           type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="DISTRICT_1"           type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="DISTRICT_2"           type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="DISTRICT_LEVEL"       type="Atlas:arrayOfString" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="DPS"                  type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="FORMATTED_FLAT"       type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="FORMATTED_FLOOR"      type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="FORMATTED_PREMISE_NO" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="HOUSE_1"              type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="HOUSE_2"              type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="ID"                   type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="LABEL"                type="tns:arrayOfString" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="ORGANISATION"         type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="POSTCODE"             type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="POSTCODE_DATA"        type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="POSTCODE_STATUS"      type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="PZON_X"               type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="PZON_Y"               type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="STREET_1"             type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="STREET_2"             type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="ST_NAME"              type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="ST_TYPE"              type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="TOWN"                 type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="UAID"                 type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>

    <!-- Market Location - ml dataset only -->
    <element name="CRO_NUMBER"           type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="TURNOVER"             type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="OFFICE_TYPE"          type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="FAX_NO"               type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="SIC_DESCRIPTION"      type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="EXEC_JOB_TITLE"       type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="EXEC_SURNAME"         type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="EXEC_FIRST_NAME"      type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="EXEC_TITLE"           type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="EMPLOYEE_BAND"        type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="EMPLOYEE_COUNT"       type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="URN"                  type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="HEADING_DESCRIPTION"  type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="HEADING_CODE"         type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="SIC_CODE"             type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="OSAPR"                type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="POSTCODE_SOURCE"      type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="PAF_MATCH_STATUS"     type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="SOURCE_RECORD_ID"     type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="EXTRA_COMPANY_TYPES"  type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="WEBSITE"              type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="TELEPHONE_NO"         type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="COMPANY_TYPE"         type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>

    <!-- NSPD - nsp dataset only -->
    <element name="N1991_CENSUS_ED_CODE" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="N1991_CENSUS_ED_PLUS_CODE" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="N1991_CENSUS_WARD_CODE" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="N1991_CENSUS_WARD_OGSS_CODE" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="N1998_WARD_CODE" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="N1998_WARD_DESC" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="N2001_CENSUS_OUTPUT_AREA_CODE" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="N2005_STATISTICAL_WARD_CODE" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="N2005_STATISTICAL_WARD_DESC" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="CAS_WARD_CODE" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="CAS_WARD_DESC" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="COUNTRY_CODE" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="COUNTRY_DESC" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="COUNTY_CODE" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="COUNTY_DESC" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="DATE_OF_POSTCODE_INTRODUCTION" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="DATE_OF_POSTCODE_TERMINATION" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="EURO_ELECTORAL_REGION_CODE" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="EURO_ELECTORAL_REGION_DESC" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="GOVERNMENT_OFFICE_REGION_CODE" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="GOVERNMENT_OFFICE_REGION_DESC" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="GR_QUAL_INDICATOR" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="INTERMEDIATE_ZONE_CODE" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="LEA_ELB_CODE" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="LEA_ELB_DESC" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="LLSC_DCELLS_CODE" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="LLSC_DCELLS_DESC" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="LOCAL_AUTHORITY_CODE" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="LOCAL_AUTHORITY_DESC" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="LOWER_LAYER_SOA_CODE" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="LOWER_LAYER_SOA_DESC" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="MIDDLE_LAYER_SOA_CODE" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="MIDDLE_LAYER_SOA_DESC" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="NATIONAL_GRID_EASTING" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="NATIONAL_GRID_NORTHING" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="NATIONAL_PARK_CODE" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="NATIONAL_PARK_NAME" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="NUTS_AREA_CODE" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="NUTS_AREA_DESC" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="OLD_STYLE_HEALTH_AUTHORITY_CODE" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="OLD_STYLE_HEALTH_AUTHORITY_DESC" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="OUTPUT_AREA_CLASSIFICATION_CODE" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="OUTPUT_AREA_INDICATOR" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="PAN_SHA_CODE" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="PAN_SHA_DESC" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="PARLIAMENT_CONSTITUENCY_CODE" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="PARLIAMENT_CONSTITUENCY_DESC" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="POSTCODE_USER_TYPE" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="PRE_2006_PCT_CODE" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="PRE_2006_PCT_DESC" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="PRIMARY_CARE_TRUST_CODE" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="PRIMARY_CARE_TRUST_DESC" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="SCOTTISH_DATA_ZONE_CODE" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="SHA_CODE" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="SHA_DESC" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="SHA_PRE_2006_CODE" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="SHA_PRE_2006_DESC" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="SOA_NORTHERN_IRELAND_CODE" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="STANDARD_STAT_REGION_CODE" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="STANDARD_STAT_REGION_DESC" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="STATUS_OF_ASSIGNED_CENSUS_ED" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="TTWA_CODE" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="TTWA_DESC" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="URBAN_RURAL_INDICATOR" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="URBAN_RURAL_IND_NI" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="URBAN_RURAL_IND_SCOTLAND" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="WARD_CODE" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="WARD_DESC" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>

   </sequence>
  </complexType>

  <complexType name="arrayOfAddress">
        <xsd:sequence>
          <xsd:element name="address" type="Atlas:address"
                    minOccurs="0" maxOccurs="unbounded"/>
        </xsd:sequence>
  </complexType>

  <!-- elements required for logout method -->
  <complexType name="logout">
   <sequence>
    <element name="session_id" type="xsd:string" minOccurs="1" maxOccurs="1" nillable="true"/>
   </sequence>
  </complexType>
 </schema>
</types>

  <!-- messages required for login method -->
  <message name="loginInput">
    <part name="login" type="Atlas:login"/>
  </message>
  <message name="loginOutput">
    <!--  <part name="session_id" element="Atlas:session_id"/> -->
    <part name="session_id" type="xsd:string"/>
  </message>

  <!-- messages required for modules method -->
  <message name="modulesInput">
    <part name="modules" type="Atlas:modules"/>
  </message>
  <message name="modulesOutput">
    <part name="modules" type="Atlas:arrayOfModule"/>
  </message>

  <!-- messages required for version method -->
  <message name="versionInput">
    <part name="version" type="Atlas:version"/>
  </message>
  <message name="versionOutput">
    <part name="version" type="Atlas:version_atlas"/>
  </message>

  <!-- messages required for status method -->
  <message name="statusInput">
    <part name="status" type="Atlas:status"/>
  </message>
  <message name="statusOutput">
    <part name="status" type="Atlas:status_atlas"/>
  </message>

  <!-- messages required for ah21 method -->
  <message name="ah21Input">
    <part name="ah21" type="Atlas:ah21"/>
  </message>
  <message name="ah21Output">
    <part name="addresses" type="Atlas:arrayOfAddress"/>
  </message>

  <!-- messages required for ah23 method -->
  <message name="ah23Input">
    <part name="ah23" type="Atlas:ah23"/>
  </message>
  <message name="ah23Output">
    <part name="addresses" type="Atlas:arrayOfAddress"/>
  </message>

  <!-- messages required for ah43 method -->
  <message name="ah43Input">
    <part name="ah43" type="Atlas:ah43"/>
  </message>
  <message name="ah43Output">
    <part name="addresses" type="Atlas:arrayOfAddress"/>
  </message>

  <!-- messages required for listapi method -->
  <message name="listapiInput">
    <part name="listapi" type="Atlas:listapi"/>
  </message>
  <message name="listapiOutput">
    <part name="addresses" type="Atlas:arrayOfAddress"/>
  </message>

  <!-- messages required for logout method -->
  <message name="logoutInput">
    <part name="logout" type="Atlas:logout"/>
  </message>
  <message name="logoutOutput">
    <part name="success" type="xsd:int"/>
  </message>

  <portType name="SOAPAtlasPortType">
    <operation name="login">
      <documentation>Returns a Session ID for use with the SOAP Atlas service</documentation>
      <input message="tns:loginInput"/>
      <output message="tns:loginOutput"/>
    </operation>
    <operation name="modules">
      <documentation>Obtains a list of available modules from the SOAP Atlas service</documentation>
      <input message="tns:modulesInput"/>
      <output message="tns:modulesOutput"/>
    </operation>
    <operation name="version">
      <documentation>Obtains version information for the SOAP Atlas service</documentation>
      <input message="tns:versionInput"/>
      <output message="tns:versionOutput"/>
    </operation>
    <operation name="status">
      <documentation>Obtains click and expiry information for the session</documentation>
      <input message="tns:statusInput"/>
      <output message="tns:statusOutput"/>
    </operation>

    <operation name="ah21">
      <documentation>Obtains a list of (matching) premises for a given postcode from the SOAP Atlas Service</documentation>
      <input message="tns:ah21Input"/>
      <output message="tns:ah21Output"/>
    </operation>
    <operation name="ah23">
      <documentation>Obtains a matching premise for a given input from the SOAP Atlas Service</documentation>
      <input message="tns:ah23Input"/>
      <output message="tns:ah23Output"/>
    </operation>
    <operation name="ah43">
      <documentation>Obtains a list of (matching) premises for a given premise and street mask combined with town and county</documentation>
      <input message="tns:ah43Input"/>
      <output message="tns:ah43Output"/>
    </operation>
    <operation name="listapi">
      <documentation>Searches for at least two address elements with the SOAP Atlas service</documentation>
      <input message="tns:listapiInput"/>
      <output message="tns:listapiOutput"/>
    </operation>

    <operation name="ah21_uk">
      <documentation>Obtains a list of (matching) premises for a given postcode from the SOAP Atlas Service</documentation>
      <input message="tns:ah21Input"/>
      <output message="tns:ah21Output"/>
    </operation>
    <operation name="ah23_uk">
      <documentation>Obtains a matching premise for a given input from the SOAP Atlas Service</documentation>
      <input message="tns:ah23Input"/>
      <output message="tns:ah23Output"/>
    </operation>
    <operation name="ah43_uk">
      <documentation>Obtains a list of (matching) premises for a given premise and street mask combined with town and county</documentation>
      <input message="tns:ah43Input"/>
      <output message="tns:ah43Output"/>
    </operation>
    <operation name="listapi_uk">
      <documentation>Searches for at least two address elements with the SOAP Atlas service</documentation>
      <input message="tns:listapiInput"/>
      <output message="tns:listapiOutput"/>
    </operation>

    <operation name="ah21_uks">
      <documentation>Obtains a list of (matching) streets for a given postcode from the SOAP Atlas Service</documentation>
      <input message="tns:ah21Input"/>
      <output message="tns:ah21Output"/>
    </operation>
    <operation name="ah23_uks">
      <documentation>Obtains a matching street for a given input from the SOAP Atlas Service</documentation>
      <input message="tns:ah23Input"/>
      <output message="tns:ah23Output"/>
    </operation>
    <operation name="ah43_uks">
      <documentation>Obtains a list of (matching) streets for a given premise and street mask combined with town and county</documentation>
      <input message="tns:ah43Input"/>
      <output message="tns:ah43Output"/>
    </operation>
    <operation name="listapi_uks">
      <documentation>Searches for at least two address elements with the SOAP Atlas service</documentation>
      <input message="tns:listapiInput"/>
      <output message="tns:listapiOutput"/>
    </operation>

    <operation name="logout">
      <documentation>Ends the current client session with the SOAP Atlas service</documentation>
      <input message="tns:logoutInput"/>
      <output message="tns:logoutOutput"/>
    </operation>
  </portType>

  <binding name="SOAPAtlas" type="tns:SOAPAtlasPortType">
    <SOAP:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>
    <operation name="login">
      <SOAP:operation style="rpc" soapAction="http://soap1.hopewiser.com/SOAPAtlas#login"/>
      <input>
        <SOAP:body use="literal" namespace="http://soap1.hopewiser.com/SOAPAtlas" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
      </input>
      <output>
        <SOAP:body use="literal" namespace="http://soap1.hopewiser.com/SOAPAtlas" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
      </output>
    </operation>
    <operation name="modules">
      <SOAP:operation style="rpc" soapAction="http://soap1.hopewiser.com/SOAPAtlas#modules"/>
      <input>
       <SOAP:body use="literal" namespace="http://soap1.hopewiser.com/SOAPAtlas" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
      </input>
      <output>
      <SOAP:body use="literal" namespace="http://soap1.hopewiser.com/SOAPAtlas" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
      </output>
    </operation>
    <operation name="version">
      <SOAP:operation style="rpc" soapAction="http://soap1.hopewiser.com/SOAPAtlas#version"/>
      <input>
       <SOAP:body use="literal" namespace="http://soap1.hopewiser.com/SOAPAtlas" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
      </input>
      <output>
       <SOAP:body use="literal" namespace="http://soap1.hopewiser.com/SOAPAtlas" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
      </output>
    </operation>
    <operation name="status">
      <SOAP:operation style="rpc" soapAction="http://soap1.hopewiser.com/SOAPAtlas#status"/>
      <input>
       <SOAP:body use="literal" namespace="http://soap1.hopewiser.com/SOAPAtlas" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
      </input>
      <output>
       <SOAP:body use="literal" namespace="http://soap1.hopewiser.com/SOAPAtlas" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
      </output>
    </operation>


    <operation name="ah21">
      <SOAP:operation style="rpc" soapAction="http://soap1.hopewiser.com/SOAPAtlas#ah21"/>
      <input>
       <SOAP:body use="literal" namespace="http://soap1.hopewiser.com/SOAPAtlas" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
      </input>
      <output>
       <SOAP:body use="literal" namespace="http://soap1.hopewiser.com/SOAPAtlas" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
      </output>
    </operation>
    <operation name="ah23">
      <SOAP:operation style="rpc" soapAction="http://soap1.hopewiser.com/SOAPAtlas#ah23"/>
      <input>
       <SOAP:body use="literal" namespace="http://soap1.hopewiser.com/SOAPAtlas" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
      </input>
      <output>
       <SOAP:body use="literal" namespace="http://soap1.hopewiser.com/SOAPAtlas" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
      </output>
    </operation>
    <operation name="ah43">
      <SOAP:operation style="rpc" soapAction="http://soap1.hopewiser.com/SOAPAtlas#ah43"/>
      <input>
       <SOAP:body use="literal" namespace="http://soap1.hopewiser.com/SOAPAtlas" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
      </input>
      <output>
       <SOAP:body use="literal" namespace="http://soap1.hopewiser.com/SOAPAtlas" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
      </output>
    </operation>
    <operation name="listapi">
      <SOAP:operation style="rpc" soapAction="http://soap1.hopewiser.com/SOAPAtlas#listapi"/>
      <input>
       <SOAP:body use="literal" namespace="http://soap1.hopewiser.com/SOAPAtlas" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
      </input>
      <output>
       <SOAP:body use="literal" namespace="http://soap1.hopewiser.com/SOAPAtlas" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
      </output>
    </operation>


    <operation name="ah21_uk">
      <SOAP:operation style="rpc" soapAction="http://soap1.hopewiser.com/SOAPAtlas#ah21_uk"/>
      <input>
       <SOAP:body use="literal" namespace="http://soap1.hopewiser.com/SOAPAtlas" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
      </input>
      <output>
       <SOAP:body use="literal" namespace="http://soap1.hopewiser.com/SOAPAtlas" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
      </output>
    </operation>
    <operation name="ah23_uk">
      <SOAP:operation style="rpc" soapAction="http://soap1.hopewiser.com/SOAPAtlas#ah23_uk"/>
      <input>
       <SOAP:body use="literal" namespace="http://soap1.hopewiser.com/SOAPAtlas" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
      </input>
      <output>
       <SOAP:body use="literal" namespace="http://soap1.hopewiser.com/SOAPAtlas" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
      </output>
    </operation>
    <operation name="ah43_uk">
      <SOAP:operation style="rpc" soapAction="http://soap1.hopewiser.com/SOAPAtlas#ah43_uk"/>
      <input>
       <SOAP:body use="literal" namespace="http://soap1.hopewiser.com/SOAPAtlas" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
      </input>
      <output>
       <SOAP:body use="literal" namespace="http://soap1.hopewiser.com/SOAPAtlas" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
      </output>
    </operation>
    <operation name="listapi_uk">
      <SOAP:operation style="rpc" soapAction="http://soap1.hopewiser.com/SOAPAtlas#listapi_uk"/>
      <input>
       <SOAP:body use="literal" namespace="http://soap1.hopewiser.com/SOAPAtlas" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
      </input>
      <output>
       <SOAP:body use="literal" namespace="http://soap1.hopewiser.com/SOAPAtlas" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
      </output>
    </operation>


    <operation name="ah21_uks">
      <SOAP:operation style="rpc" soapAction="http://soap1.hopewiser.com/SOAPAtlas#ah21_uks"/>
      <input>
       <SOAP:body use="literal" namespace="http://soap1.hopewiser.com/SOAPAtlas" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
      </input>
      <output>
       <SOAP:body use="literal" namespace="http://soap1.hopewiser.com/SOAPAtlas" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
      </output>
    </operation>
    <operation name="ah23_uks">
      <SOAP:operation style="rpc" soapAction="http://soap1.hopewiser.com/SOAPAtlas#ah23_uks"/>
      <input>
       <SOAP:body use="literal" namespace="http://soap1.hopewiser.com/SOAPAtlas" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
      </input>
      <output>
       <SOAP:body use="literal" namespace="http://soap1.hopewiser.com/SOAPAtlas" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
      </output>
    </operation>
    <operation name="ah43_uks">
      <SOAP:operation style="rpc" soapAction="http://soap1.hopewiser.com/SOAPAtlas#ah43_uks"/>
      <input>
       <SOAP:body use="literal" namespace="http://soap1.hopewiser.com/SOAPAtlas" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
      </input>
      <output>
       <SOAP:body use="literal" namespace="http://soap1.hopewiser.com/SOAPAtlas" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
      </output>
    </operation>
    <operation name="listapi_uks">
      <SOAP:operation style="rpc" soapAction="http://soap1.hopewiser.com/SOAPAtlas#listapi_uks"/>
      <input>
       <SOAP:body use="literal" namespace="http://soap1.hopewiser.com/SOAPAtlas" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
      </input>
      <output>
       <SOAP:body use="literal" namespace="http://soap1.hopewiser.com/SOAPAtlas" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
      </output>
    </operation>


    <operation name="logout">
      <SOAP:operation style="rpc" soapAction="http://soap1.hopewiser.com/SOAPAtlas#logout"/>
      <input>
       <SOAP:body use="literal" namespace="http://soap1.hopewiser.com/SOAPAtlas" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
      </input>
      <output>
       <SOAP:body use="literal" namespace="http://soap1.hopewiser.com/SOAPAtlas" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
      </output>
    </operation>
  </binding>

  <service name="SOAPAtlas">
    <documentation>Provides access to SOAP Atlas service</documentation>
    <port name="SOAPAtlas" binding="tns:SOAPAtlas">
      <SOAP:address location="http://cloud.hopewiser.com/soapatlas/unbounded/"/>
    </port>

  </service>
</definitions>
