<?xml version="1.0" encoding="UTF-8" standalone="no"?><wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="http://hopewiser/soapaddrsvr" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" targetNamespace="http://hopewiser/soapaddrsvr">
  <wsdl:types>
    <schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:hpw="http://hopewiser/soapaddrsvr" elementFormDefault="qualified" targetNamespace="http://hopewiser/soapaddrsvr">

      <import namespace="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" schemaLocation="security.xsd"/> 

      <!-- Simple Types -->

      <simpleType name="addressTypeString">
        <restriction base="string">
          <enumeration value="address"/>
          <enumeration value="formatted_label"/>
          <enumeration value="both"/>
        </restriction>
      </simpleType>

      <simpleType name="caseFormatString">
        <restriction base="string">
          <enumeration value="upper"/>
          <enumeration value="ptt_convention"/>
          <enumeration value="mixed"/>
        </restriction>
      </simpleType>

      <simpleType name="includeCountyString">
        <restriction base="string">
          <enumeration value="always"/>
          <enumeration value="when_required"/>
          <enumeration value="never"/>
        </restriction>
      </simpleType>

      <simpleType name="labelFormatString">
        <restriction base="string">
          <enumeration value="fixed_town"/>
          <enumeration value="fixed_postcode"/>
          <enumeration value="free"/>
        </restriction>
      </simpleType>

      <simpleType name="lineWidthInteger">
        <restriction base="integer">
          <minInclusive value="10"/>
          <maxInclusive value="56"/>
        </restriction>
      </simpleType>

      <simpleType name="numLinesInteger">
        <restriction base="integer">
          <minInclusive value="2"/>
          <maxInclusive value="9"/>
        </restriction>
      </simpleType>

      <simpleType name="organisationFormatString">
        <restriction base="string">
          <enumeration value="fixed"/>
          <enumeration value="free"/>
        </restriction>
      </simpleType>

      <simpleType name="searchMethodString">
        <restriction base="string">
          <enumeration value="single_step"/>
          <enumeration value="flatten"/>
        </restriction>
      </simpleType>

      <simpleType name="statusString">
        <restriction base="string">
          <enumeration value="ok"/>
          <enumeration value="split_element"/>
          <enumeration value="wont_fit"/>
        </restriction>
      </simpleType>

      <simpleType name="yesNoString">
        <restriction base="string">
          <enumeration value="no"/>
          <enumeration value="yes"/>
        </restriction>
      </simpleType>

      <simpleType name="languagesString">
        <restriction base="string">
          <enumeration value="no"/>
          <enumeration value="yes"/>
          <enumeration value="EnglishOnly"/>
          <enumeration value="WelshOnly"/>
          <enumeration value="EnglishAndWelsh"/>
        </restriction>
      </simpleType>

      <!-- Complex Types -->

      <complexType name="addressMatchType">
        <sequence>
          <element minOccurs="0" name="Address" type="hpw:addressType"/>
          <element minOccurs="0" name="FormattedLabel" type="hpw:formattedLabelType"/>
          <element minOccurs="0" name="Data" type="hpw:dataValueType"/>
          <element maxOccurs="unbounded" minOccurs="0" name="ExtraDataRecord" type="hpw:extraDataRecordType"/>
        </sequence>
        <attribute name="number" type="integer" use="required"/>
      </complexType>

      <complexType name="addressDetailsRequestOptionsType">
        <all>
          <element minOccurs="0" name="Timeout" type="positiveInteger"/>
          <element minOccurs="0" name="AddressType" type="hpw:addressTypeString"/>
        </all>
      </complexType>

      <complexType name="addressExpandRequestOptionsType">
        <all>
          <element minOccurs="0" name="Timeout" type="positiveInteger"/>
        </all>
      </complexType>

      <complexType name="addressSearchRequestOptionsType">
        <all>
          <element minOccurs="0" name="MaxMatches" type="positiveInteger"/>
          <element minOccurs="0" name="Timeout" type="positiveInteger"/>
          <element minOccurs="0" name="SearchMethod" type="hpw:searchMethodString"/>
          <element minOccurs="0" name="IncludeWelsh" type="hpw:languagesString"/>
          <element minOccurs="0" name="IncludePersonNames" type="hpw:yesNoString"/>
        </all>
      </complexType>

      <complexType name="addressSearchByIndexRequestOptionsType">
        <all>
          <element minOccurs="0" name="MaxMatches" type="positiveInteger"/>
          <element minOccurs="0" name="Timeout" type="positiveInteger"/>
          <element minOccurs="0" name="IncludePersonNames" type="hpw:yesNoString"/>
        </all>
      </complexType>

      <complexType name="addressSearchByRadiusRequestOptionsType">
        <all>
          <element minOccurs="0" name="MaxMatches" type="positiveInteger"/>
          <element minOccurs="0" name="Timeout" type="positiveInteger"/>
          <element minOccurs="0" name="IncludePersonNames" type="hpw:yesNoString"/>
        </all>
      </complexType>

      <complexType name="addressSearchByNameRequestOptionsType">
        <all>
          <element minOccurs="0" name="MaxMatches" type="positiveInteger"/>
          <element minOccurs="0" name="Timeout" type="positiveInteger"/>
        </all>
      </complexType>

      <complexType name="addressType">
        <sequence>
          <element minOccurs="0" name="Name" type="string"/>
          <element minOccurs="0" name="Organisation" type="string"/>
          <element minOccurs="0" name="Department" type="string"/>
          <element minOccurs="0" name="Line1" type="string"/>
          <element minOccurs="0" name="Line2" type="string"/>
          <element minOccurs="0" name="Line3" type="string"/>
          <element minOccurs="0" name="Line4" type="string"/>
          <element minOccurs="0" name="Line5" type="string"/>
          <element minOccurs="0" name="Town" type="string"/>
          <element minOccurs="0" name="County" type="string"/>
          <element minOccurs="0" name="Postcode" type="string"/>
          <element minOccurs="0" name="DP" type="string"/>
        </sequence>
      </complexType>

      <complexType name="alternateType">
        <sequence>
          <element maxOccurs="unbounded" name="MAF" type="hpw:mafType"/>
        </sequence>
      </complexType>

      <complexType name="dataType">
        <sequence>
          <element maxOccurs="unbounded" name="Item" type="string"/>
        </sequence>
      </complexType>

      <complexType name="indexType">
        <sequence>
          <element maxOccurs="unbounded" name="Index" type="string"/>
        </sequence>
      </complexType>

      <complexType name="dataValueType">
        <sequence>
          <element maxOccurs="unbounded" name="Item" type="hpw:itemValueType"/>
        </sequence>
      </complexType>

      <complexType name="defaultType">
        <sequence>
          <element name="MAF" type="hpw:mafType"/>
        </sequence>
      </complexType>

      <complexType name="extraDataRecordType">
        <sequence>
          <element maxOccurs="unbounded" name="Item" type="hpw:itemValueType"/>
        </sequence>
        <attribute name="number" type="integer" use="required"/>
      </complexType>

      <complexType name="formattedLabelOptionsType">
        <all>
          <element minOccurs="0" name="OrganisationFormat" type="hpw:organisationFormatString"/>
          <element minOccurs="0" name="LabelFormat" type="hpw:labelFormatString"/>
          <element minOccurs="0" name="IncludeCounty" type="hpw:includeCountyString"/>
          <element minOccurs="0" name="DropCountyToFit" type="hpw:yesNoString"/>
          <element minOccurs="0" name="CaseFormat" type="hpw:caseFormatString"/>
          <element minOccurs="0" name="NumLines" type="hpw:numLinesInteger"/>
          <element minOccurs="0" name="LineWidth" type="hpw:lineWidthInteger"/>
        </all>
      </complexType>

      <complexType name="formattedLabelOptionsType2">
        <all>
          <element minOccurs="0" name="OrganisationFormat" type="hpw:organisationFormatString"/>
          <element minOccurs="0" name="LabelFormat" type="hpw:labelFormatString"/>
          <element minOccurs="0" name="IncludeCounty" type="hpw:includeCountyString"/>
          <element minOccurs="0" name="DropCountyToFit" type="hpw:yesNoString"/>
          <element minOccurs="0" name="CaseFormat" type="hpw:caseFormatString"/>
          <element minOccurs="0" name="NumLines" type="hpw:numLinesInteger"/>
          <element minOccurs="0" name="LineWidth" type="hpw:lineWidthInteger"/>
          <element minOccurs="0" name="DropNameFromLabel" type="hpw:yesNoString"/>
        </all>
      </complexType>

      <complexType name="formattedLabelType">
        <sequence>
          <element minOccurs="0" name="Line1" type="string"/>
          <element minOccurs="0" name="Line2" type="string"/>
          <element minOccurs="0" name="Line3" type="string"/>
          <element minOccurs="0" name="Line4" type="string"/>
          <element minOccurs="0" name="Line5" type="string"/>
          <element minOccurs="0" name="Line6" type="string"/>
          <element minOccurs="0" name="Line7" type="string"/>
          <element minOccurs="0" name="Line8" type="string"/>
          <element minOccurs="0" name="Line9" type="string"/>
        </sequence>
        <attribute name="status" type="hpw:statusString" use="required"/>
      </complexType>

      <complexType name="itemValueType">
        <simpleContent>
          <extension base="string">
            <attribute name="name" type="string" use="required"/>
          </extension>
        </simpleContent>
      </complexType>

      <complexType name="mafType">
        <simpleContent>
          <extension base="string">
            <attribute name="version" type="string" use="required"/>
            <attribute name="blockedReason" type="string"/>
          </extension>
        </simpleContent>
      </complexType>

      <complexType name="postcodeLookupRequestOptionsType">
        <all>
          <element minOccurs="0" name="MaxMatches" type="positiveInteger"/>
          <element minOccurs="0" name="Timeout" type="positiveInteger"/>
          <element minOccurs="0" name="AddressType" type="hpw:addressTypeString"/>
          <element minOccurs="0" name="IncludeWelsh" type="hpw:languagesString"/>
        </all>
      </complexType>

      <complexType name="searchMatchType">
        <sequence>
          <element name="SID" type="string"/>
          <element name="Text" type="string"/>
          <element name="Expandable" type="hpw:yesNoString"/>
          <element name="ExpandableToName" type="hpw:yesNoString"/>
        </sequence>
        <attribute name="number" type="integer" use="required"/>
      </complexType>

      <!-- Elements -->

      <element name="AddressDetailsRequest">
        <complexType>
          <sequence>
            <element name="SID" type="string"/>
            <element minOccurs="0" name="RequestOptions" type="hpw:addressDetailsRequestOptionsType"/>
            <element minOccurs="0" name="FormattedLabelOptions" type="hpw:formattedLabelOptionsType2"/>
            <element minOccurs="0" name="Data" type="hpw:dataType"/>
            <element minOccurs="0" name="ExtraData" type="hpw:dataType"/>
          </sequence>
        </complexType>
      </element>

      <element name="AddressDetailsResponse">
        <complexType>
          <sequence>
            <element name="StatusCode" type="integer"/>
            <element name="StatusDesc" type="string"/>
            <element minOccurs="0" name="Match" type="hpw:addressMatchType"/>
          </sequence>
        </complexType>
      </element>

      <element name="AddressExpandRequest">
        <complexType>
          <sequence>
            <element name="SID" type="string"/>
            <element minOccurs="0" name="RequestOptions" type="hpw:addressExpandRequestOptionsType"/>
          </sequence>
        </complexType>
      </element>

      <element name="AddressExpandResponse">
        <complexType>
          <sequence>
            <element name="StatusCode" type="integer"/>
            <element name="StatusDesc" type="string"/>
            <element maxOccurs="unbounded" minOccurs="0" name="Match" type="hpw:searchMatchType"/>
          </sequence>
        </complexType>
      </element>

      <element name="AddressSearchRequest">
        <complexType>
          <sequence>
            <element name="Input1" type="string"/>
            <element minOccurs="0" name="Input2" type="string"/>
            <element minOccurs="0" name="Input3" type="string"/>
            <element minOccurs="0" name="Input4" type="string"/>
            <element minOccurs="0" name="Input5" type="string"/>
            <element minOccurs="0" name="Input6" type="string"/>
            <element minOccurs="0" name="Input7" type="string"/>
            <element minOccurs="0" name="Input8" type="string"/>
            <element minOccurs="0" name="Input9" type="string"/>
            <element minOccurs="0" name="Input10" type="string"/>
            <element minOccurs="0" name="MAF" type="string"/>
            <element minOccurs="0" name="RequestOptions" type="hpw:addressSearchRequestOptionsType"/>
          </sequence>
        </complexType>
      </element>

      <element name="AddressSearchResponse">
        <complexType>
          <sequence>
            <element name="StatusCode" type="integer"/>
            <element name="StatusDesc" type="string"/>
            <element maxOccurs="unbounded" minOccurs="0" name="Match" type="hpw:searchMatchType"/>
          </sequence>
        </complexType>
      </element>
      
      <element name="AddressSearchByIndexRequest">
        <complexType>
          <sequence>
            <element minOccurs="1" name="Index" type="string"/>
            <element minOccurs="1" name="Value" type="string"/>
            <element minOccurs="0" name="MAF" type="string"/>
            <element minOccurs="0" name="RequestOptions" type="hpw:addressSearchByIndexRequestOptionsType"/>
          </sequence>
        </complexType>
      </element>

      <element name="AddressSearchByIndexResponse">
        <complexType>
          <sequence>
            <element name="StatusCode" type="integer"/>
            <element name="StatusDesc" type="string"/>
            <element maxOccurs="unbounded" minOccurs="0" name="Match" type="hpw:searchMatchType"/>
          </sequence>
        </complexType>
      </element>

      <element name="AddressSearchByNameRequest">
        <complexType>
          <sequence>
            <element minOccurs="0" name="Forename" type="string"/>
            <element minOccurs="0" name="Surname" type="string"/>
            <element minOccurs="0" name="Input1" type="string"/>
            <element minOccurs="0" name="Input2" type="string"/>
            <element minOccurs="0" name="Input3" type="string"/>
            <element minOccurs="0" name="Input4" type="string"/>
            <element minOccurs="0" name="Input5" type="string"/>
            <element minOccurs="0" name="Input6" type="string"/>
            <element minOccurs="0" name="Input7" type="string"/>
            <element minOccurs="0" name="Input8" type="string"/>
            <element minOccurs="0" name="Input9" type="string"/>
            <element minOccurs="0" name="Input10" type="string"/>
            <element minOccurs="0" name="MAF" type="string"/>
            <element minOccurs="0" name="RequestOptions" type="hpw:addressSearchByNameRequestOptionsType"/>
          </sequence>
        </complexType>
      </element>

      <element name="AddressSearchByNameResponse">
        <complexType>
          <sequence>
            <element name="StatusCode" type="integer"/>
            <element name="StatusDesc" type="string"/>
            <element maxOccurs="unbounded" minOccurs="0" name="Match" type="hpw:searchMatchType"/>
          </sequence>
        </complexType>
      </element>

      <element name="AddressSearchByRadiusRequest">
        <complexType>
          <sequence>
            <element minOccurs="1" name="GridX" type="integer"/>
            <element minOccurs="1" name="GridY" type="integer"/>
            <element minOccurs="1" name="Radius" type="integer"/>
            <element minOccurs="0" name="MAF" type="string"/>
            <element minOccurs="0" name="RequestOptions" type="hpw:addressSearchByRadiusRequestOptionsType"/>
          </sequence>
        </complexType>
      </element>

      <element name="AddressSearchByRadiusResponse">
        <complexType>
          <sequence>
            <element name="StatusCode" type="integer"/>
            <element name="StatusDesc" type="string"/>
            <element maxOccurs="unbounded" minOccurs="0" name="Match" type="hpw:searchMatchType"/>
          </sequence>
        </complexType>
      </element>

      <element name="ExtraDataRequest">
        <complexType>
          <sequence>
            <element minOccurs="0" name="MAF" type="string"/>
          </sequence>
        </complexType>
      </element>

      <element name="ExtraDataResponse">
        <complexType>
          <sequence>
            <element name="StatusCode" type="integer"/>
            <element name="StatusDesc" type="string"/>
            <element minOccurs="0" name="ExtraData" type="hpw:dataType"/>
          </sequence>
        </complexType>
      </element>
      
      <element name="IndexesRequest">
        <complexType>
          <sequence>
            <element minOccurs="0" name="MAF" type="string"/>
          </sequence>
        </complexType>
      </element>

      <element name="IndexesResponse">
        <complexType>
          <sequence>
            <element name="StatusCode" type="integer"/>
            <element name="StatusDesc" type="string"/>
            <element name="NamesAvailable" type="integer"/>
            <element name="RadiusSearchAllowed" type="integer"/>
            <element minOccurs="0" name="Indexes" type="hpw:indexType"/>
          </sequence>
        </complexType>
      </element>

      <element name="PostcodeLookupRequest">
        <complexType>
          <all>
            <element minOccurs="1" name="Postcode" type="string"/>
            <element minOccurs="0" name="Premise" type="string"/>
            <element minOccurs="0" name="MAF" type="string"/>
            <element minOccurs="0" name="RequestOptions" type="hpw:postcodeLookupRequestOptionsType"/>
            <element minOccurs="0" name="FormattedLabelOptions" type="hpw:formattedLabelOptionsType"/>
            <element minOccurs="0" name="Data" type="hpw:dataType"/>
            <element minOccurs="0" name="ExtraData" type="hpw:dataType"/>
          </all>
        </complexType>
      </element>

      <element name="PostcodeLookupResponse">
        <complexType>
          <sequence>
            <element name="StatusCode" type="integer"/>
            <element name="StatusDesc" type="string"/>
            <element maxOccurs="unbounded" minOccurs="0" name="Match" type="hpw:addressMatchType"/>
          </sequence>
        </complexType>
      </element>

      <element name="StatusRequest">
        <complexType/>
      </element>

      <element name="StatusResponse">
        <complexType>
          <sequence>
            <element name="StatusCode" type="integer"/>
            <element name="StatusDesc" type="string"/>
            <element minOccurs="0" name="Default" type="hpw:defaultType"/>
            <element minOccurs="0" name="Alternate" type="hpw:alternateType"/>
          </sequence>
        </complexType>
      </element>

      <element name="VersionRequest">
        <complexType/>
      </element>

      <element name="VersionResponse">
        <complexType>
          <sequence>
            <element name="StatusCode" type="integer"/>
            <element name="StatusDesc" type="string"/>
            <element minOccurs="0" name="SoapAddrSvr" type="string"/>
            <element minOccurs="0" name="Atlas" type="string"/>
          </sequence>
        </complexType>
      </element>
    </schema>
  </wsdl:types>

  <!-- Messages -->

  <wsdl:message name="AddressDetailsRequest">
    <wsdl:part element="tns:AddressDetailsRequest" name="AddressDetailsRequest"/>
    <wsdl:part element="wsse:Security" name="Security"/>
  </wsdl:message>

  <wsdl:message name="AddressDetailsResponse">
    <wsdl:part element="tns:AddressDetailsResponse" name="AddressDetailsResponse"/>
  </wsdl:message>

  <wsdl:message name="AddressExpandRequest">
    <wsdl:part element="tns:AddressExpandRequest" name="AddressExpandRequest"/>
    <wsdl:part element="wsse:Security" name="Security"/>
  </wsdl:message>

  <wsdl:message name="AddressExpandResponse">
    <wsdl:part element="tns:AddressExpandResponse" name="AddressExpandResponse"/>
  </wsdl:message>

  <wsdl:message name="AddressSearchRequest">
    <wsdl:part element="tns:AddressSearchRequest" name="AddressSearchRequest"/>
    <wsdl:part element="wsse:Security" name="Security"/>
  </wsdl:message>

  <wsdl:message name="AddressSearchResponse">
    <wsdl:part element="tns:AddressSearchResponse" name="AddressSearchResponse"/>
  </wsdl:message>

  <wsdl:message name="AddressSearchByIndexRequest">
    <wsdl:part element="tns:AddressSearchByIndexRequest" name="AddressSearchByIndexRequest"/>
    <wsdl:part element="wsse:Security" name="Security"/>
  </wsdl:message>

  <wsdl:message name="AddressSearchByIndexResponse">
    <wsdl:part element="tns:AddressSearchByIndexResponse" name="AddressSearchByIndexResponse"/>
  </wsdl:message>

  <wsdl:message name="AddressSearchByNameRequest">
    <wsdl:part element="tns:AddressSearchByNameRequest" name="AddressSearchByNameRequest"/>
    <wsdl:part element="wsse:Security" name="Security"/>
  </wsdl:message>

  <wsdl:message name="AddressSearchByNameResponse">
    <wsdl:part element="tns:AddressSearchByNameResponse" name="AddressSearchByNameResponse"/>
  </wsdl:message>

  <wsdl:message name="AddressSearchByRadiusRequest">
    <wsdl:part element="tns:AddressSearchByRadiusRequest" name="AddressSearchByRadiusRequest"/>
    <wsdl:part element="wsse:Security" name="Security"/>
  </wsdl:message>

  <wsdl:message name="AddressSearchByRadiusResponse">
    <wsdl:part element="tns:AddressSearchByRadiusResponse" name="AddressSearchByRadiusResponse"/>
  </wsdl:message>

  <wsdl:message name="ExtraDataRequest">
    <wsdl:part element="tns:ExtraDataRequest" name="ExtraDataRequest"/>
    <wsdl:part element="wsse:Security" name="Security"/>
  </wsdl:message>

  <wsdl:message name="ExtraDataResponse">
    <wsdl:part element="tns:ExtraDataResponse" name="ExtraDataResponse"/>
  </wsdl:message>

  <wsdl:message name="IndexesRequest">
    <wsdl:part element="tns:IndexesRequest" name="IndexesRequest"/>
    <wsdl:part element="wsse:Security" name="Security"/>
  </wsdl:message>

  <wsdl:message name="IndexesResponse">
    <wsdl:part element="tns:IndexesResponse" name="IndexesResponse"/>
  </wsdl:message>

  <wsdl:message name="PostcodeLookupRequest">
    <wsdl:part element="tns:PostcodeLookupRequest" name="PostcodeLookupRequest"/>
    <wsdl:part element="wsse:Security" name="Security"/>
  </wsdl:message>

  <wsdl:message name="PostcodeLookupResponse">
    <wsdl:part element="tns:PostcodeLookupResponse" name="PostcodeLookupResponse"/>
  </wsdl:message>

  <wsdl:message name="StatusRequest">
    <wsdl:part element="tns:StatusRequest" name="StatusRequest"/>
    <wsdl:part element="wsse:Security" name="Security"/>
  </wsdl:message>

  <wsdl:message name="StatusResponse">
    <wsdl:part element="tns:StatusResponse" name="StatusResponse"/>
  </wsdl:message>

  <wsdl:message name="VersionRequest">
    <wsdl:part element="tns:VersionRequest" name="VersionRequest"/>
    <wsdl:part element="wsse:Security" name="Security"/>
  </wsdl:message>

  <wsdl:message name="VersionResponse">
    <wsdl:part element="tns:VersionResponse" name="VersionResponse"/>
  </wsdl:message>

  <!-- Ports -->

  <wsdl:portType name="soapaddrsvrInterface">
    <wsdl:operation name="AddressDetails">
      <wsdl:input message="tns:AddressDetailsRequest" name="AddressDetailsRequest"/>
      <wsdl:output message="tns:AddressDetailsResponse" name="AddressDetailsResponse"/>
    </wsdl:operation>

    <wsdl:operation name="AddressExpand">
      <wsdl:input message="tns:AddressExpandRequest" name="AddressExpandRequest"/>
      <wsdl:output message="tns:AddressExpandResponse" name="AddressExpandResponse"/>
    </wsdl:operation>

    <wsdl:operation name="AddressSearch">
      <wsdl:input message="tns:AddressSearchRequest" name="AddressSearchRequest"/>
      <wsdl:output message="tns:AddressSearchResponse" name="AddressSearchResponse"/>
    </wsdl:operation>

    <wsdl:operation name="AddressSearchByIndex">
      <wsdl:input message="tns:AddressSearchByIndexRequest" name="AddressSearchByIndexRequest"/>
      <wsdl:output message="tns:AddressSearchByIndexResponse" name="AddressSearchByIndexResponse"/>
    </wsdl:operation>

    <wsdl:operation name="AddressSearchByName">
      <wsdl:input message="tns:AddressSearchByNameRequest" name="AddressSearchByNameRequest"/>
      <wsdl:output message="tns:AddressSearchByNameResponse" name="AddressSearchByNameResponse"/>
    </wsdl:operation>

    <wsdl:operation name="AddressSearchByRadius">
      <wsdl:input message="tns:AddressSearchByRadiusRequest" name="AddressSearchByRadiusRequest"/>
      <wsdl:output message="tns:AddressSearchByRadiusResponse" name="AddressSearchByRadiusResponse"/>
    </wsdl:operation>

    <wsdl:operation name="Version">
      <wsdl:input message="tns:VersionRequest" name="VersionRequest"/>
      <wsdl:output message="tns:VersionResponse" name="VersionResponse"/>
    </wsdl:operation>

    <wsdl:operation name="Status">
      <wsdl:input message="tns:StatusRequest" name="StatusRequest"/>
      <wsdl:output message="tns:StatusResponse" name="StatusResponse"/>
    </wsdl:operation>

    <wsdl:operation name="ExtraData">
      <wsdl:input message="tns:ExtraDataRequest" name="ExtraDataRequest"/>
      <wsdl:output message="tns:ExtraDataResponse" name="ExtraDataResponse"/>
    </wsdl:operation>

    <wsdl:operation name="Indexes">
      <wsdl:input message="tns:IndexesRequest" name="IndexesRequest"/>
      <wsdl:output message="tns:IndexesResponse" name="IndexesResponse"/>
    </wsdl:operation>

    <wsdl:operation name="PostcodeLookup">
      <wsdl:input message="tns:PostcodeLookupRequest" name="PostcodeLookupRequest"/>
      <wsdl:output message="tns:PostcodeLookupResponse" name="PostcodeLookupResponse"/>
    </wsdl:operation>
  </wsdl:portType>

  <!-- Bindings -->

  <wsdl:binding name="soapaddrsvrInterfaceSoap11" type="tns:soapaddrsvrInterface">
    <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>

    <wsdl:operation name="AddressDetails">
      <soap:operation soapAction=""/>
      <wsdl:input name="AddressDetailsRequest">
        <soap:body parts="AddressDetailsRequest" use="literal"/>
        <soap:header message="tns:AddressDetailsRequest" part="Security" use="literal"/>
      </wsdl:input>
      <wsdl:output name="AddressDetailsResponse">
        <soap:body use="literal"/>
      </wsdl:output>
    </wsdl:operation>

    <wsdl:operation name="AddressExpand">
      <soap:operation soapAction=""/>
      <wsdl:input name="AddressExpandRequest">
        <soap:body parts="AddressExpandRequest" use="literal"/>
        <soap:header message="tns:AddressExpandRequest" part="Security" use="literal"/>
      </wsdl:input>
      <wsdl:output name="AddressExpandResponse">
        <soap:body use="literal"/>
      </wsdl:output>
    </wsdl:operation>

    <wsdl:operation name="AddressSearch">
      <soap:operation soapAction=""/>
      <wsdl:input name="AddressSearchRequest">
        <soap:body parts="AddressSearchRequest" use="literal"/>
        <soap:header message="tns:AddressSearchRequest" part="Security" use="literal"/>
      </wsdl:input>
      <wsdl:output name="AddressSearchResponse">
        <soap:body use="literal"/>
      </wsdl:output>
    </wsdl:operation>

    <wsdl:operation name="AddressSearchByIndex">
      <soap:operation soapAction=""/>
      <wsdl:input name="AddressSearchByIndexRequest">
        <soap:body parts="AddressSearchByIndexRequest" use="literal"/>
        <soap:header message="tns:AddressSearchByIndexRequest" part="Security" use="literal"/>
      </wsdl:input>
      <wsdl:output name="AddressSearchByIndexResponse">
        <soap:body use="literal"/>
      </wsdl:output>
    </wsdl:operation>

    <wsdl:operation name="AddressSearchByName">
      <soap:operation soapAction=""/>
      <wsdl:input name="AddressSearchByNameRequest">
        <soap:body parts="AddressSearchByNameRequest" use="literal"/>
        <soap:header message="tns:AddressSearchByNameRequest" part="Security" use="literal"/>
      </wsdl:input>
      <wsdl:output name="AddressSearchByNameResponse">
        <soap:body use="literal"/>
      </wsdl:output>
    </wsdl:operation>

    <wsdl:operation name="AddressSearchByRadius">
      <soap:operation soapAction=""/>
      <wsdl:input name="AddressSearchByRadiusRequest">
        <soap:body parts="AddressSearchByRadiusRequest" use="literal"/>
        <soap:header message="tns:AddressSearchByRadiusRequest" part="Security" use="literal"/>
      </wsdl:input>
      <wsdl:output name="AddressSearchByRadiusResponse">
        <soap:body use="literal"/>
      </wsdl:output>
    </wsdl:operation>

    <wsdl:operation name="ExtraData">
      <soap:operation soapAction=""/>
      <wsdl:input name="ExtraDataRequest">
        <soap:body parts="ExtraDataRequest" use="literal"/>
        <soap:header message="tns:ExtraDataRequest" part="Security" use="literal"/>
      </wsdl:input>
      <wsdl:output name="ExtraDataResponse">
        <soap:body use="literal"/>
      </wsdl:output>
    </wsdl:operation>

    <wsdl:operation name="Indexes">
      <soap:operation soapAction=""/>
      <wsdl:input name="IndexesRequest">
        <soap:body parts="IndexesRequest" use="literal"/>
        <soap:header message="tns:IndexesRequest" part="Security" use="literal"/>
      </wsdl:input>
      <wsdl:output name="IndexesResponse">
        <soap:body use="literal"/>
      </wsdl:output>
    </wsdl:operation>

    <wsdl:operation name="PostcodeLookup">
      <soap:operation soapAction=""/>
      <wsdl:input name="PostcodeLookupRequest">
        <soap:body parts="PostcodeLookupRequest" use="literal"/>
        <soap:header message="tns:PostcodeLookupRequest" part="Security" use="literal"/>
      </wsdl:input>
      <wsdl:output name="PostcodeLookupResponse">
        <soap:body use="literal"/>
      </wsdl:output>
    </wsdl:operation>

    <wsdl:operation name="Status">
      <soap:operation soapAction=""/>
      <wsdl:input name="StatusRequest">
        <soap:body parts="StatusRequest" use="literal"/>
        <soap:header message="tns:StatusRequest" part="Security" use="literal"/>
      </wsdl:input>
      <wsdl:output name="StatusResponse">
        <soap:body use="literal"/>
      </wsdl:output>
    </wsdl:operation>

    <wsdl:operation name="Version">
      <soap:operation soapAction=""/>
      <wsdl:input name="VersionRequest">
        <soap:body parts="VersionRequest" use="literal"/>
        <soap:header message="tns:VersionRequest" part="Security" use="literal"/>
      </wsdl:input>
      <wsdl:output name="VersionResponse">
        <soap:body use="literal"/>
      </wsdl:output>
    </wsdl:operation>
  </wsdl:binding>

  <!-- Services -->
  <wsdl:service name="soapaddrsvrInterfaceService">
    <wsdl:port binding="tns:soapaddrsvrInterfaceSoap11" name="soapaddrsvrInterfaceSoap11">
      <soap:address location="http://cloud.hopewiser.com.au:80/soapaddrsvr/"/>
    </wsdl:port>
  </wsdl:service>
</wsdl:definitions>