WSDL document structure

A WSDL document is simply a set of definitions. There is a definitions element at the root and definitions inside. A WSDL document defines services as collections of network endpoints or ports. In a WSDL document, the abstract definition of endpoints and messages is separated from their concrete network deployment or data format bindings. This allows the reuse of abstract definitions: messages, which are abstract descriptions of the data being exchanged, and port types which are abstract collections of operations. The concrete protocol and data format specifications for a particular port type constitutes a reusable binding. A port is defined by associating a network address with a reusable binding. A collection of ports defines a service.

A WSDL document uses the following elements in the definition of network services:

  • Types: a container for data type definitions using some type system (such as XSD).
  • Message: an abstract, typed definition of the data being communicated.
  • Operation: an abstract description of an action supported by the service.
  • Port Type: an abstract set of operations supported by one or more endpoints.
  • Binding: a concrete protocol and data format specification for a particular port type.
  • Port: a single endpoint defined as a combination of a binding and a network address.
  • Service: a collection of related endpoints.