Calc.wsdl


examine a generated WSDL file with bindings for

<?xml version="1.0" encoding="utf-8"?>
<definitions
   targetNamespace="http://example.org/ws"
   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:s0="http://example.org/ws"
   xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
   xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/"
   xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/"
   xmlns="http://schemas.xmlsoap.org/wsdl/">
  <types>
    <s:schema elementFormDefault="qualified" targetNamespace="http://example.org/ws">
      <s:element name="Add">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="1" maxOccurs="1" name="x" type="s:float" />
            <s:element minOccurs="1" maxOccurs="1" name="y" type="s:float" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="AddResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="1" maxOccurs="1" name="AddResult" type="s:float" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="float" type="s:float" />
    </s:schema>
  </types>

  <!-- WSDL Messages -->
  <message name="AddSoapIn">
    <part name="parameters" element="s0:Add" />
  </message>
  <message name="AddSoapOut">
    <part name="parameters" element="s0:AddResponse" />
  </message>
  <message name="AddHttpGetIn">
    <part name="x" type="s:string" />
    <part name="y" type="s:string" />
  </message>
  <message name="AddHttpGetOut">
    <part name="Body" element="s0:float" />
  </message>
  <message name="AddHttpPostIn">
    <part name="x" type="s:string" />
    <part name="y" type="s:string" />
  </message>
  <message name="AddHttpPostOut">
    <part name="Body" element="s0:float" />
  </message>

  <!-- WSDL Port Types -->
  <portType name="CalcSoap">
    <operation name="Add">
      <input message="s0:AddSoapIn" />
      <output message="s0:AddSoapOut" />
    </operation>
  </portType>
  <portType name="CalcHttpGet">
    <operation name="Add">
      <input message="s0:AddHttpGetIn" />
      <output message="s0:AddHttpGetOut" />
    </operation>
  </portType>
  <portType name="CalcHttpPost">
    <operation name="Add">
      <input message="s0:AddHttpPostIn" />
      <output message="s0:AddHttpPostOut" />
    </operation>
  </portType>

  <!-- WSDL Bindings -->
  <binding name="CalcSoap" type="s0:CalcSoap">
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document" />
    <operation name="Add">
      <soap:operation soapAction="http://example.org/ws/Add" style="document" />
      <input>
        <soap:body use="literal" />
      </input>
      <output>
        <soap:body use="literal" />
      </output>
    </operation>
  </binding>
  <binding name="CalcHttpGet" type="s0:CalcHttpGet">
    <http:binding verb="GET" />
    <operation name="Add">
      <http:operation location="/Add" />
      <input>
        <http:urlEncoded />
      </input>
      <output>
        <mime:mimeXml part="Body" />
      </output>
    </operation>
  </binding>
  <binding name="CalcHttpPost" type="s0:CalcHttpPost">
    <http:binding verb="POST" />
    <operation name="Add">
      <http:operation location="/Add" />
      <input>
        <mime:content type="application/x-www-form-urlencoded" />
      </input>
      <output>
        <mime:mimeXml part="Body" />
      </output>
    </operation>
  </binding>

  <!-- WSDL Service Description -->
  <service name="Calc">
    <port name="CalcSoap" binding="s0:CalcSoap">
      <soap:address location="http://greyarea/dotnet2/calc.asmx" />
    </port>
    <port name="CalcHttpGet" binding="s0:CalcHttpGet">
      <http:address location="http://greyarea/dotnet2/calc.asmx" />
    </port>
    <port name="CalcHttpPost" binding="s0:CalcHttpPost">
      <http:address location="http://greyarea/dotnet2/calc.asmx" />
    </port>
  </service>
</definitions>