A WSDL contract is, at its simplest, a collection of elements contained within a root definition
element. These elements describe a service and how an endpoint implementing that service is accessed.
When looked at closely, a WSDL contract has two distinct parts:
An abstract part that defines the service in implementation neutral terms.
A physical part that defines how an endpoint implementing the service is exposed on a network.
The logical part of a WSDL contract contains the types
, the message
, and the portType
elements. It describe the service’s interface and that data that the service uses. Within the types
element, XML Schema is used to define the structure of the data that makes up the messages. A number of message
elements are used to define the structure of the messages used by the service. The portType
element contains one or more operation
elements that define the messages sent by the operations exposed by the service.
The physical part of a WSDL contract contains the binding
and the service
elements. It describe how an endpoint that implements the service connects to the outside world. The binding
elements describe how the data units described by the message
elements are mapped into a concrete, on-the-wire data format, such as SOAP. The service
elements contain one or more port
elements which define the endpoints implementing the service.