WSDL (Web Services Description Language)

WSDL, the Web Services Description Language, is an XML vocabulary for describing what a web service does and how to invoke it. A WSDL document tells a consumer what operations a service offers, what data each operation takes and returns, which protocol and message format to use, and at what network address the service can be reached. Because the description is machine-readable, development tools can read a WSDL file and automatically generate the client stubs and server skeletons needed to call or implement the service.

The W3C published Web Services Description Language (WSDL) Version 2.0 as a Recommendation on 26 June 2007. Part 1, “Core Language,” defines the abstract model and XML syntax. A WSDL 2.0 description is organized around a set of core components: types (the data structures used in messages, usually defined with XML Schema), interfaces (collections of related operations), bindings (which fix the concrete message format and transport for an interface), and services (which expose a binding at one or more endpoints). This separation of an abstract interface from its concrete binding lets the same operations be offered over multiple protocols.

WSDL began as a vendor effort. The widely deployed WSDL 1.1 was submitted to the W3C as a Note in 2001 by IBM, Microsoft, and Ariba, combining earlier description languages from those companies. The W3C Web Services Description Working Group then revised the language substantially, renaming WSDL 1.1’s portType to interface and port to endpoint, and producing WSDL 2.0 as a formal Recommendation. In practice, much of the installed base continued to use WSDL 1.1 even after 2.0 was standardized, because existing tooling was built around the earlier version.

WSDL is most closely associated with SOAP. A typical SOAP service publishes a WSDL document that describes its operations and the XML schema of its request and response messages; client toolkits in Java, .NET, and other ecosystems consume that WSDL to produce strongly typed proxy classes. This “contract-first” workflow, where the WSDL is the authoritative agreement between client and server, was a defining feature of service-oriented architecture in the 2000s.

While WSDL was designed to be protocol-independent and can describe non-SOAP bindings, its fortunes have largely tracked those of SOAP and the WS-* stack. As simpler REST-and-JSON APIs gained ground, machine-readable description shifted toward formats like the OpenAPI Specification. WSDL remains in service across enterprise systems where formal, generated contracts for SOAP services are still in active use.

Sources

Last verified June 8, 2026