What is WSDL (Web Services Description Language)?
WSDL, or Web Services Description Language, is an XML-based interface description language that describes functionality offered by web services.
The acronym is also used for any specific WSDL description of a web service which provides a machine-readable description of how services can be called, the parameters expected, and any returned data structures.
Note that older versions and references to WSDL might refer to “Definition” where the D is concerned. Today’s WSDL versions refer to “Description.” WSDL descriptions may also be referred to as WSDL files.
How does WSDL work?
WSDL serves as a collection of network endpoints or ports and provides a file in XML format. Abstract definitions of ports and messages are separated from their concrete use or instance, allowing their definitions to be reused.
Ports are defined by associating network addresses with a reusable binding, and a collection of ports represents a service. Messages are abstract descriptions of the data being exchanged. Port types are abstract collections of supported operations.
Protocols and data format specifications for specific port types constitute a reusable binding, where operations and messages are then bound to a concrete network protocol and message format. This is the way WSDL describes the public interface to the web service.
What is the difference between WSDL and SOAP?
The Web Services Description Language (WSDL) describes the functionality offered by a web service. SOAP stands for Simple Object Access Protocol and is a protocol for exchanging structured data between connected applications over the Internet.
WSDL is often combined 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 datatypes used are embedded in the WSDL file as XML Schema. The client can then use SOAP to call one of the operations listed in the WSDL file, using, for example, XML over HTTP.