WSDL Specification WSDL = Web Service Description Language Similar to ASN.1 – describes the abstract on the wire data structures Multiple bindings to on the wire representations (not just SOAP) Tool Kits can build client and server stub code from WSDL
Messages Note: Query – CQL, Result Set Name, empty for Explain
PortTypes
HTTP GET Binding
HTTP GET Example &startRecord=0&maximumRecords=10 &responseSchema=zng:RS1&recordSchema=DC
SOAP/HTTP POST Binding <soap:body encodingStyle= namespace="urn:z3950:zng_prototype1" use="literal"/> <soap:body encodingStyle= namespace="urn:z3950:zng_prototype1" use="literal"/>
SOAP/HTTP Example <SOAP-ENV:Envelope xmlns:SOAP- ENV= xmlns:zng="urn:z3950:zng_prototype1“ SOAP- ENV:encodingStyle=" ncoding/"> ncoding/ Author:Smith 0 10 zng:RS1 ONIX
Misc. Encryption (if required) via https (SSL) Authentication via HTTP Authentication
Response Actual Response Schema specified in request Schema either requests an XML document (for browser clients) or a SOAP wrapped XML document Default is “RS1”
Response Schema RS1 Overview
Response Schema RS1 Result Set Reference Note – result set name server generated
Response Schema RS1 Records
Response Schema RS1 Status
Response Schema RS1 Diagnostic Used as non-surrogate in Status structure Used as surrogate in Record structure
Response Schema RS1 - Example (SOAP Wrapped) <SOAP-ENV:Envelope xmlns:SOAP-ENV= xmlns:zng="urn:z3950:zng_prototype1“ SOAP-ENV:encodingStyle=" SERVER-GENERATED-NAME 16 Oct :00:00 GMT 2 DC Smith A Book zng:diagnostic 2 Record withheld due to Access Control 1 2 Records withheld due to Access Control