4.1 & 4.3 Anatomy of a WSDL Definition Document
WSDL (Web Services Description Language) is an XML grammar defined by W3C to describe what a web service does, how to invoke it, and where to find it on the network. A WSDL document is partitioned into Abstract Definitions (interface contract) and Concrete Definitions (network implementation details):
- 1. <types> (Abstract): Defines the data types used in messages using standard XML Schema (XSD).
- 2. <message> (Abstract): Defines the typed data elements transmitted. A one-way operation has 1 message; request-response has 2 (Input and Output).
- 3. <portType> (Abstract - called <interface> in WSDL 2.0): The programmatic interface defining the operations supported by the service. Operations can be: One-Way, Request-Response, Solicit-Response, or Notification.
- 4. <binding> (Concrete): Specifies concrete wire protocol formats (SOAP 1.1, SOAP 1.2, HTTP GET/POST) and data serialization style (document/literal or rpc/literal).
- 5. <port> / <endpoint> (Concrete): Specifies the concrete network address URL where the binding can be accessed.
- 6. <service> (Concrete): The root collection of related ports.