Web Services Description language (WSDL) was develop jointly by Microsoft and IBM. Web Services Description Language is the standard format for describing a Web Services.
WSDL is an XML based document which contains the information regarding Web Services like names of methods, method parameters and how to access the methods. WSDL also contains information regarding which operation the Web Service will perform.
It is use for information exchange in decentralized and distributed environments. WSDL is a part of UDDI, an XML-based worldwide business registry. It works as an interface between various web service application. WSDL is pronounce as “wiz-dull“.
The WSDL describes services as collections of network endpoints, or ports. The WSDL specification provides an XML format for documents for this purpose.
Web Services Description Language (WSDL) Functionality :
The abstract definitions of ports and messages are separate from their concrete use or instance, allowing the reuse of these definitions. A port is define by associating a network address with a reusable binding, and a collection of ports defines a service. Messages are abstract descriptions of the data being exchanged, and port types are abstract collections of supported operations.
The concrete protocol and data format specifications for a particular port type constitutes a reusable binding. Where the operations and messages are then bound to a concrete network protocol and message format.
In this way, WSDL describes the public interface to the web service. WSDL is often use in combination with SOAP and an XML Schema to provide Web services over the internet. A client program connecting to a Web service can read the WSDL file to determine what operations are available on the server.
Any special data types used are embedded in the WSDL file in the form of XML Schema. The client can then use SOAP to actually call one of the operation listed in the WSDL file using for example XML over HTTP.
Terminologies in WSDL :
(1) Service (Service) –
- Contains a set of system functions that have been expose to the Web-based protocols.
(2) Endpoint (Port) –
- Defines the address or connection point to a Web service. It is typically represent by a simple HTTP URL string.
(3) Interface (Port Type) –
- Defines a Web service, the operations that can be perform, and the messages that are use to perform the operation.
(4) Operation (Operation) –
- It defines the SOAP actions and the way the message is encode, for example, “literal”. An operation is like a method or function call in a traditional programming language.
(5) n/a (Message) –
- Typically, a message corresponds to an operation. The message contains the information needed to perform the operation
- Each message is made up of one or more logical parts. Each part is associate with a message-typing attribute.
- The message name attribute provides a unique name among all messages.
- The part name attribute provides a unique name among all the parts of the enclosing message.
- Parts are a description of the logical content of a message.
- In RPC binding, a binding may reference the name of a part in order to specify binding-specific information about the part.
- A part may represent parameter in the message. The bindings define the actual meaning of the part. Messages were remove in WSDL 2.0, in which XML schema types for defining bodies of inputs, outputs and faults are refer to simply and directly.
(6) Types (Types) –
- Types describes the data. The XML Schema language is use for this purpose.