B. OrderService WSDL Definitionen

<?xml version="1.0"?>
<definitions name="OrderService"

   targetNamespace="http://www.infogrips.ch/geoshop/order/"
   xmlns:tns="http://www.infogrips.ch/geoshop/order/"
   xmlns:types="http://www.infogrips.ch/geoshop/types/"
   xmlns:xsd="http://www.w3.org/2001/XMLSchema"
   xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
   xmlns="http://schemas.xmlsoap.org/wsdl/">
  
   <types>
      <xsd:schema targetNamespace="http://www.infogrips.ch/geoshop/types/">
         <xsd:complexType name="StringList">
            <xsd:sequence>
               <xsd:element name="item" type="xsd:string" 
                    minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:complexType> 
         <xsd:complexType name="Order">
            <xsd:sequence>
               <xsd:element name="orderno" type="xsd:int"/>
               <xsd:element name="orderurl" type="xsd:string"/>
               <xsd:element name="price" type="xsd:float"/>
               <xsd:element name="currency" type="xsd:string"/>
            </xsd:sequence>
         </xsd:complexType> 
         <xsd:complexType name="Parameter">
            <xsd:sequence>
               <xsd:element name="name" type="xsd:string"/>
               <xsd:element name="value" type="xsd:string"/>
            </xsd:sequence>
         </xsd:complexType> 
         <xsd:complexType name="Parameters">
            <xsd:sequence>
               <xsd:element name="parameter" type="types:Parameter" 
                    minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
         </xsd:complexType>
      </xsd:schema>
   </types>

   <message name="calculatePriceRequest">
      <part name="user" type="xsd:string"/>
      <part name="password" type="xsd:string"/>
      <part name="product" type="xsd:string"/>
      <part name="parameters" type="types:Parameters"/>
   </message>
   <message name="calculatePriceResponse">
      <part name="priceinfo" type="types:StringList"/>
   </message>
  
   <message name="sendOrderRequest">
      <part name="user" type="xsd:string"/>
      <part name="password" type="xsd:string"/>
      <part name="product" type="xsd:string"/>
      <part name="parameters" type="types:Parameters"/>
   </message>
   <message name="sendOrderResponse">
      <part name="order" type="types:Order"/>
   </message>
  
   <portType name="GeoShopPortType">
      <operation name="calculatePrice">
         <input message="tns:calculatePriceRequest"/>
         <output message="tns:calculatePriceResponse"/>
      </operation>
      <operation name="sendOrder">
         <input message="tns:sendOrderRequest"/>
         <output message="tns:sendOrderResponse"/>
      </operation>
   </portType>
  
   <binding name="GeoShopBinding" type="tns:GeoShopPortType">

      <soap:binding 
         style="rpc"
         transport="http://schemas.xmlsoap.org/soap/http"/>

      <operation name="calculatePrice">
         <soap:operation soapAction=""/>
         <input name="calculatePriceRequest">
            <soap:body 
               use="literal"
               namespace="http://www.infogrips.ch/geoshop/order/"/>
         </input>
         <output name="calculatePriceResponse">
            <soap:body
               use="literal"
               namespace="http://www.infogrips.ch/geoshop/order/"/>
         </output>
      </operation>

      <operation name="sendOrder">
         <soap:operation soapAction=""/>
         <input name="sendOrderRequest">
            <soap:body 
               use="literal"
               namespace="http://www.infogrips.ch/geoshop/order/"/>
         </input>
         <output name="sendOrderResponse">
            <soap:body
               use="literal"
               namespace="http://www.infogrips.ch/geoshop/order/"/>
         </output>
      </operation>

   </binding>

   <service name="OrderService">
      <documentation>
         Price / Order service for GeoShop Server
      </documentation>
      <port name="GeoShopPort" binding="tns:GeoShopBinding">
         <soap:address location="http://localhost:3501/soap/OrderService.igs"
         />
      </port>
   </service>

</definitions>