Skip to main content

XML format

WSDL

The machine-readable contract for a SOAP service: operations, messages, bindings and endpoints.

A WSDL is what generates client code for a SOAP service, which makes it the single most consequential document in a SOAP integration. Its types section is usually inline XSD, so a WSDL is really two schema languages in one file.

WSDL 1.1 is a W3C Note, not a Recommendation, and it is what essentially every deployed service uses. WSDL 2.0 changed the namespace and renamed portType to interface, and never achieved adoption.

Constraints that bite

  • WSDL 1.1 and 2.0 use different namespaces and different element names.
  • The types section is normally inline XSD — validate it as a schema, not just as XML.
  • soapAction and the endpoint address are the parts most likely to drift between environments.
  • Imported schemas may live at separate URLs; a WSDL alone is often not self-contained.
Root element
<definitions>
Media type
application/wsdl+xml
Extensions
.wsdl, .xml
Namespaces
  • http://schemas.xmlsoap.org/wsdl/
XMLDir label
xml

Specification: WSDL 1.1 note

A minimal valid document

Every example on this site is checked against the same parser the workspace uses, so what you see below is known to be well-formed.

wsdl.xml
<?xml version="1.0" encoding="UTF-8"?>
<definitions xmlns="http://schemas.xmlsoap.org/wsdl/"
             xmlns:xs="http://www.w3.org/2001/XMLSchema"
             targetNamespace="https://example.com/orders">
  <message name="GetOrderRequest"/>
  <portType name="OrdersPort">
    <operation name="GetOrder">
      <input message="GetOrderRequest"/>
    </operation>
  </portType>
</definitions>

Get started

Bring order to the XML your team can't afford to ignore.

Create a free account and get a private workspace to search, validate, diff, and monitor your XML feeds, sitemaps, schemas, and vendor integrations.