<?xml version="1.0" encoding="utf-8"?>
<definitions xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:s0="http://www.henry.com/fun/" name="HenryWeatherService" targetNamespace="http://www.henry.com/fun/" xmlns="http://schemas.xmlsoap.org/wsdl/">
  <types>
    <xs:schema elementFormDefault="qualified" targetNamespace="http://www.henry.com/fun/" xmlns:xs="http://www.w3.org/2001/XMLSchema">
      <xs:element name="GetForecast">
        <xs:complexType>
          <xs:sequence>
            <xs:element minOccurs="0" maxOccurs="1" name="zip" type="xs:string" />
          </xs:sequence>
        </xs:complexType>

      </xs:element>
      <xs:complexType name="WeatherResult">
        <xs:complexContent mixed="false">
          <xs:extension base="s0:ValueType">
            <xs:sequence>
              <xs:element minOccurs="0" maxOccurs="1" name="condition" type="xs:string" />
              <xs:element minOccurs="1" maxOccurs="1" name="high" type="xs:int" />
              <xs:element minOccurs="1" maxOccurs="1" name="low" type="xs:int" />
            </xs:sequence>

          </xs:extension>
        </xs:complexContent>
      </xs:complexType>
      <xs:complexType name="ValueType" />
      <xs:element name="GetForecastResponse">
        <xs:complexType>
          <xs:sequence>
            <xs:element minOccurs="1" maxOccurs="1" name="GetForecastResult" type="s0:WeatherResult" />
          </xs:sequence>

        </xs:complexType>
      </xs:element>
      <xs:element name="WeatherResult" type="s0:WeatherResult" />
    </xs:schema>
  </types>
  <message name="GetForecastSoapIn">
    <part name="parameters" element="s0:GetForecast" />
  </message>
  <message name="GetForecastSoapOut">

    <part name="parameters" element="s0:GetForecastResponse" />
  </message>
  <message name="GetForecastHttpGetIn">
    <part name="zip" type="s:string" />
  </message>
  <message name="GetForecastHttpGetOut">
    <part name="Body" element="s0:WeatherResult" />
  </message>
  <message name="GetForecastHttpPostIn">

    <part name="zip" type="s:string" />
  </message>
  <message name="GetForecastHttpPostOut">
    <part name="Body" element="s0:WeatherResult" />
  </message>
  <portType name="HenryWeatherServiceSoap">
    <operation name="GetForecast">
      <input message="s0:GetForecastSoapIn" />
      <output message="s0:GetForecastSoapOut" />

    </operation>
  </portType>
  <portType name="HenryWeatherServiceHttpGet">
    <operation name="GetForecast">
      <input message="s0:GetForecastHttpGetIn" />
      <output message="s0:GetForecastHttpGetOut" />
    </operation>
  </portType>
  <portType name="HenryWeatherServiceHttpPost">

    <operation name="GetForecast">
      <input message="s0:GetForecastHttpPostIn" />
      <output message="s0:GetForecastHttpPostOut" />
    </operation>
  </portType>
  <binding name="HenryWeatherServiceSoap" type="s0:HenryWeatherServiceSoap">
    <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" />
    <operation name="GetForecast">
      <soap:operation soapAction="http://www.henry.com/fun/GetForecast" style="document" />

      <input>
        <soap:body use="literal" />
      </input>
      <output>
        <soap:body use="literal" />
      </output>
    </operation>
  </binding>
  <binding name="HenryWeatherServiceHttpGet" type="s0:HenryWeatherServiceHttpGet">

    <http:binding verb="GET" />
    <operation name="GetForecast">
      <http:operation location="/GetForecast" />
      <input>
        <http:urlEncoded />
      </input>
      <output>
        <mime:mimeXml part="Body" />
      </output>

    </operation>
  </binding>
  <binding name="HenryWeatherServiceHttpPost" type="s0:HenryWeatherServiceHttpPost">
    <http:binding verb="POST" />
    <operation name="GetForecast">
      <http:operation location="/GetForecast" />
      <input>
        <mime:content type="application/x-www-form-urlencoded" />
      </input>

      <output>
        <mime:mimeXml part="Body" />
      </output>
    </operation>
  </binding>
  <service name="HenryWeatherService">
    <port name="HenryWeatherServiceSoap" binding="s0:HenryWeatherServiceSoap">
      <soap:address location="http://whitepaper.homedns.org:9000/weather.asmx" />
    </port>

    <port name="HenryWeatherServiceHttpGet" binding="s0:HenryWeatherServiceHttpGet">
      <http:address location="http://whitepaper.homedns.org:9000/weather.asmx" />
    </port>
    <port name="HenryWeatherServiceHttpPost" binding="s0:HenryWeatherServiceHttpPost">
      <http:address location="http://whitepaper.homedns.org:9000/weather.asmx" />
    </port>

  </service>
</definitions>