A WSDL document defines services as collections of network endpoints,
or ports. In WSDL, 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
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, and a collection of ports define
a service. Hence, 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. The binding is usually SOAP and the encoding and
data formatting regulations used (also known as the style) is usually literal
(this includes document/literal, and sometimes rpc/literal).
- Port: a single endpoint defined as a combination
of a binding and a network address.
- Service: a collection of related endpoints.
For more information on WSDL, refer to
various WSDL elements can be structured in many ways. It can be in one single
WSDL file or in multiple WSDL files.