Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ


Choose your language

InfoQ Homepage News WSDL 2.0 approved as an official W3C Recommendation

WSDL 2.0 approved as an official W3C Recommendation

WSDL 2.0 has finally been approved as an official World Wide Web Consortium (W3C) recommendation on June 27 2007. The Web Services Description Working Group has been working on the standards for more than 6 years. The recommendation was due on the 31st of December 2006 but has received an extension to the 30th of June this year.

There has been much debate about whether WSDL 2.0 is the long awaited and improved successor of WSDL 1.1 (the de facto standard up to now) or of no relevance at all. Mark Little has written an extensive post on this matter here on InfoQ. The main changes from WSDL 1.1 to 2.0 are:

  • Changes in the naming of WSDL components, e.g. portType has been renamed to interface
  • Removal of message constructs
  • Support of additional Message Exchange Patterns
  • Support of other type systems than XML Schema
  • HTTP binding, which supports POX(Plain Old XML)/REST-style services

The article "WSDL 2.0: A Pragmatic Analysis and an Interoperation Framework" gives an up-to-date overview of the changes and discusses the interoperability issue between WSDL 1.1 and 2.0:

Adopting WSDL 2.0 will lead to interoperability issues with existing WSDL 1.1 implementations. Most Web Service implementations are based on WSDL 1.1 on both the producer and consumer side. Interoperability issues with respect to the adoption of the new standard can arise in two ways. First, issues related to exposing already hosted services through the WSDL 2.0 specification and second, issues related to the consumption of the services from the client side using the WSDL based on the WSDL 2 specification.

Eran Chinthaka, pioneering member of the Apache Axis2 project, examines the support of POX/REST-style services in WSDL 2.0 within his article "Enable REST with Web services, Part 1: REST and Web services in WSDL 2.0":

The motivation of WSDL 2.0 HTTP binding is that it allows services to have both SOAP and HTTP bindings. The service implementation deals with processing application data, often represented as an XML element, and the service doesn't know whether that data came inside a SOAP envelope, HTTP GET, or HTTP POST. WSDL 2.0 HTTP binding enables you to expose a service as a resource to be invoked using HTTP methods. At the same time, you need to understand that HTTP binding doesn't enable you to implement a full REST style system. This is often debated by a lot of people, and it all depends on how much you believe in what REST can deliver.

Although the title of the article promises REST support in WSDL 2.0, the résumé at least seems to show the author is aware that what WSDL 2 supports is POX over HTTP, not REST. The key point is that WSDL is centered around a single URI, the service, which provides an arbitrary number of operations. REST just works the opposite way.

WSDL 2.0 might offer some interesting changes. However when looking at the history of SOAP it seems very unlikely that WSDL 2.0 will become relevant in the near future. SOAP 1.2 has reached recommendation status in June 2003, 3 years after SOAP 1.1 had been submitted, and still it isn't widely used and sometimes not even supported. In addition one of the few if only implementations of WSDL 2.0 is provided by Apache Axis2. Judging from past experience WSDL 2.0 has a long way to go. What do you think?

Rate this Article