| <?xml version="1.0" encoding="UTF-8"?> <wsdl:definitions name="cxfstp04Service" targetNamespace="http://www.example.org/cxfstp04/" xmlns:ns1="http://www.example.org/cxfstp04/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"> <wsdl:types> <xsd:schema targetNamespace="http://www.example.org/cxfstp04/">     <xsd:element name="BookOrder" type="ns1:BookOrder"/>     <xsd:element name="BookOrderResponse" type="ns1:BookOrderResponse"/> 
       <xsd:complexType name="Address">          <xsd:sequence>             <xsd:element name="name" type="xsd:string"></xsd:element>             <xsd:element name="street" type="xsd:string"                 maxOccurs="unbounded">             </xsd:element>             <xsd:element name="city" type="xsd:string"></xsd:element>             <xsd:element name="country" type="xsd:string"></xsd:element>          </xsd:sequence>       </xsd:complexType> 
       <xsd:complexType name="Book">          <xsd:sequence>             <xsd:element name="title" type="xsd:string"></xsd:element>             <xsd:element name="quantity" type="xsd:unsignedShort"></xsd:element>             <xsd:element name="wholesale-price" type="xsd:float"></xsd:element>          </xsd:sequence>       </xsd:complexType> 
       <xsd:complexType name="UKAddress">               <xsd:complexContent>                  <xsd:extension base="ns1:Address">                      <xsd:sequence>                         <xsd:element name="postcode"                             type="xsd:string">                         </xsd:element>                      </xsd:sequence>                  </xsd:extension>               </xsd:complexContent>       </xsd:complexType> 
       <xsd:complexType name="USAddress">               <xsd:complexContent>                  <xsd:extension base="ns1:Address">                      <xsd:sequence>                         <xsd:element name="state"                             type="xsd:string">                         </xsd:element>                         <xsd:element name="zip"                             type="xsd:string">                         </xsd:element>                      </xsd:sequence>                  </xsd:extension>               </xsd:complexContent>       </xsd:complexType> 
       <xsd:complexType name="BriefUSAddress">         <xsd:complexContent>             <xsd:restriction base="ns1:USAddress">                 <xsd:sequence>                    <xsd:element name="name" type="xsd:string">                    </xsd:element>                    <xsd:element name="street" type="xsd:string">                    </xsd:element>                    <xsd:element name="zip" type="xsd:string">                    </xsd:element>                 </xsd:sequence>             </xsd:restriction>          </xsd:complexContent>       </xsd:complexType> 
       <xsd:simpleType name="Total">          <xsd:restriction base="xsd:float">             <xsd:maxExclusive value="100000"></xsd:maxExclusive>             <xsd:minExclusive value="0"></xsd:minExclusive>             <xsd:pattern value="[0-9]+\.[0-9]{2}"></xsd:pattern>          </xsd:restriction>       </xsd:simpleType> 
       <xsd:complexType name="BookOrder">               <xsd:sequence>                  <xsd:element name="accountName" type="xsd:string"></xsd:element>                  <xsd:element name="accountNumber"                      type="xsd:unsignedShort">                  </xsd:element>                  <xsd:element name="shipAddress"                      type="ns1:Address">                  </xsd:element>                  <xsd:element name="billAddress"                      type="ns1:Address">                  </xsd:element>                  <xsd:element name="book" type="ns1:Book"></xsd:element>                  <xsd:element name="total" type="ns1:Total"></xsd:element>               </xsd:sequence>               <xsd:attribute name="orderDate" type="xsd:date"></xsd:attribute>         </xsd:complexType> 
     <xsd:complexType name="BookOrderResponse">        <xsd:sequence>            <xsd:element minOccurs="0" name="return" type="xsd:string"/>            <xsd:element name="returninfo" type="xsd:string" maxOccurs="unbounded"/>        </xsd:sequence>     </xsd:complexType> 
 
 </xsd:schema> </wsdl:types> <wsdl:message name="BookOrderResponse">     <wsdl:part name="result" element="ns1:BookOrderResponse">     </wsdl:part> </wsdl:message> <wsdl:message name="BookOrder">     <wsdl:part name="parameters" element="ns1:BookOrder"> </wsdl:part> </wsdl:message> <wsdl:portType name="OrderBook">     <wsdl  peration name="OrderBookOper">      <wsdl:input name="BookOrder" message="ns1:BookOrder">       </wsdl:input>       <wsdl  utput name="BookOrderResponse" message="ns1:BookOrderResponse">      </wsdl  utput>    </wsdl:operation> </wsdl:portType> <wsdl:binding name="cxfstp04ServiceBinding" type="ns1:OrderBook">     <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>     <wsdl:operation name="OrderBookOper">       <soap:operation soapAction="" style="document"/>       <wsdl:input name="BookOrder">         <soap:body use="literal"/>       </wsdl:input>       <wsdl:output name="BookOrderResponse">         <soap:body use="literal"/>       </wsdl:output>     </wsdl:operation> </wsdl:binding> <wsdl:service name="cxfstp04Service">     <wsdl:port name="OrderBookPort" binding="ns1:cxfstp04ServiceBinding">       <soap:address location="http://localhost:9090/OrderBook"/>     </wsdl:port> </wsdl:service> </wsdl:definitions> 
 |