þ This document describes the GreatH Web service. Additional application-level requirements for use of this service -- beyond what WSDL 2.0 is able to describe -- are available at http://greath.example.com/2004/reservation-documentation.html Long Syntax Summary =================== ? . . . * . . . * . . . * * * * * * * xs:anyType ? xs:QName ? * * * * * * * * * Interface ----------------------------- examples of using xsd import and include When the schema is defined in separate files, they can be imported or included into wsdl Option 1, when the whole schema is defined in a single file, one may use xs:import as a child of wsdl:type to import that schema Example 2.1 - use xs:import as child of wsdl:types Option 2, when some elements are embedded under wsdl:type, some other elements defined in different files, one may using xs:import as a child of xs:schema to import elements with different namespace, and use xs:include to include elements under same namespace Example 2.2 - using xs:import and xs:include under xs:schema file 1 file 2 (stored at http://greath.example.com/2004/schemas/resSvc1.xsd) Some elements are embedded in the WSDL file. ... Example 3 - intra-types schema reference using fragmental id .... ... ... Example 4 - defining reusable faults using interface inheritance ... Note that the schema of the input and output messages of operation "opMakeReservation" meets all the rules of the RPC style, so if desired, the operation "makeResercation" can be marked using RPC style. Example 5 - using RPC style ... ... ... Binding section ----------------- Assume the soap binding of our "reservationInterface" interface uses two soap modules: one for reliability with the uri of "http://example.com/reliability" and is appliable to all messages exchanged with the service, the other for security with the uri of "http://example.com/security" and is only appliable to the input message of operation "opCheckAvailability". Example 6 shows how to include these soap modules in the soap 1.2 binding. Example 6 - Defining soap headers in soap1.2 binding ... ... ... the corresponding run time input message for opCheckAvailability would be something like POST /reservation HTTP/1.1 Host: http://greath.example.com Content-Type: application/soap+xml; charset="utf-8" Content-Length: nnnn ... ... 2008-11-11 2008-11-28 King Example 7 - soap1.1 binding (To be done, pending the work of soap1.1 binding) Example 8 - http binding ... ... The corresponding HTTP message is something like: POST /reservation HTTP/1.1 Host: http://greath.example.com Content-Type: application/xml; charset="utf-8" Content-Length: nnnn 2008-11-11 2008-11-28 King Advanced Topics ------------------- Example 9 - Alternative authoring styl for the reservation service in Example 1 Using wsdl import and include file 1: http://greath.example.com/2004/schemas/resSvc File 2 - http://greath.example.com/2004/wsdl/resSvc-interface.wsdl File 3 - http://greath.example.com/2004/wsdl/resSvc-binding.wsdl File 4 - the complete service definition Example 10 - using media type and MTOM for attachment support Let's say that the opCheckAvailability operation may return a vedio file for a virtual tours of the room availale. Example 10 shows how to indicate in WSDL that MTOM may be used to optimize the transmission. The schema of the response message in Example 1 needs to be modified to indicate the expected media type. ... ... Then in the binding, use a feature to indicate the use of MTOM ... ... ... ... ]]>