b) How does Web services utilize a WSDL document?
A WSDL  document describes a Web service. It provides information that an application client needs to connect and communicate with a service.
WSDL defines three things about a Web service. It defines what the service does, how it communicates, and where to find it. The various parts of a Web service description can be separated into multiple documents to provide more flexibility and to increase reusability. These parts are as follows:
- The "what" part of a WSDL document, called a portType, defines the abstract interface of the Web service. It specifies what operations the service supports, and it defines the format of the messages that the applications must exchange to perform each operation.
- The "how" part of a WSDL document, called a binding, maps an abstract interface to a concrete set of protocols. The binding specifies the technical details of how to communicate with a Web service. It indicates how the input and output messages defined in the abstract interface should be packaged into a message, and it specifies what communication protocols the Web service supports. The binding also specifies how to pass system-level information, such as security credentials or transaction identifiers, with the message. A WSDL document may define multiple bindings for the same abstract interface.
- The "where" part of a WSDL document, called a service, describes a specific Web service implementation. A Web service implementation can support one or more portTypes, each with one or more bindings. Each implementation binding, called a port, specifies an endpoint, which is the URL of the service. A business might offer multiple endpoints to a particular service, each implementing a different binding to support multiple protocols.
WSDL is the basis of most Web services development tools. WSDL is a machine-readable description, which a developer can compile into a communication routine, called a proxy. The proxy contains application code that constructs the messages and manages the communication on behalf of the client application. The proxy automatically maps the XML message structures into native language objects that can be directly manipulated by the application. The proxy frees the developer from having to understand and manipulate XML. Web Services Description Language .
This was first published in June 2004