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>