<?xml version="1.0"?>

<!-- A target namespace was not specified -->
<!--   - using the default URI 'ThisWebServiceNamespace'. -->
<!--  the file bignum-server.wsdl.  An example file associated with -->
<!--    the tech corner entry 'The WSDL generation facility in Allegro  -->
<!--    CL/SOAP API (added 6/14/04)'. -->

<definitions
       xmlns="http://schemas.xmlsoap.org/wsdl/"
       xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
       xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
       xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
       xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
       xmlns:xsi="http://www.w3.org/2000/10/XMLSchema-instance"
       xmlns:xsd="http://www.w3.org/2000/10/XMLSchema"
       targetNamespace="ThisWebServiceNamespace">
  <types>
    <xsd:schema>
      <xsd:complexType name="arrayOfBigits">
        <xsd:complexContent>
          <xsd:restriction base="soapenc:Array">
            <xsd:attribute ref="soapenc:arrayType" arrayType="xsd:int[]" />
          </xsd:restriction>
        </xsd:complexContent>
      </xsd:complexType>
    </xsd:schema>
  </types>
  <message name="calculate">
    <part name="opname" type="xsd:string" />
    <part name="num1" type="xsd:string" />
    <part name="num2" type="xsd:string" />
  </message>
  <message name="calculateResponse">
    <part name="calcResult" type="xsd:string" />
  </message>
  <message name="encodeNum">
    <part name="bigits" type="arrayOfBigits" />
    <part name="base" type="xsd:int" />
  </message>
  <message name="encodeNumResponse">
    <part name="encResult" type="xsd:string" />
  </message>
  <message name="decodeNum">
    <part name="num" type="xsd:string" />
    <part name="base" type="xsd:int" />
  </message>
  <message name="decodeNumResponse">
    <part name="decResult" type="arrayOfBigits" />
  </message>
  <portType name="SOAPServerPort">
    <operation name="calculate">
      <input message="calculate" />
      <output message="calculateResponse" />
    </operation>
    <operation name="encodeNum">
      <input message="encodeNum" />
      <output message="encodeNumResponse" />
    </operation>
    <operation name="decodeNum">
      <input message="decodeNum" />
      <output message="decodeNumResponse" />
    </operation>
  </portType>
  <binding name="SOAPServerBinding" type="SOAPServerPort">
    <soap:binding style="rpc" />
    <operation name="calculate">
      <soap:operation soapAction="calculate" />
      <input>
        <soap:body
             use="encoded"
             namespace="ThisWebServiceNamespace"
             encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
      </input>
      <output>
        <soap:body
             use="encoded"
             namespace="ThisWebServiceNamespace"
             encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
      </output>
    </operation>
    <operation name="encodeNum">
      <soap:operation soapAction="encodeNum" />
      <input>
        <soap:body
             use="encoded"
             namespace="ThisWebServiceNamespace"
             encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
      </input>
      <output>
        <soap:body
             use="encoded"
             namespace="ThisWebServiceNamespace"
             encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
      </output>
    </operation>
    <operation name="decodeNum">
      <soap:operation soapAction="decodeNum" />
      <input>
        <soap:body
             use="encoded"
             namespace="ThisWebServiceNamespace"
             encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
      </input>
      <output>
        <soap:body
             use="encoded"
             namespace="ThisWebServiceNamespace"
             encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
      </output>
    </operation>
  </binding>
  <service name="BigNumService">
    <port name="SOAPServerPort" binding="SOAPServerBinding">
      <soap:address location="http://localhost:1776/SOAP" />
    </port>
  </service>
</definitions>