As a representative to the WSDL 2.0 working group in W3C, I am happy to note that WSDL 2.0 is about to enter the Candidate Recommendation phase.
It has been a long ride for WSDL 2.0. I joined the working group in 2003 and the group has been in existence over a year then. The specification has gone through two separate last call periods which entertained substantial comments and hence changes to the specification, especially for the HTTP binding in the second last call. If you have been following Kevin Liu’s postings, you may already have seen the improvements that WSDL 2.0 brings forth over WSDL 1.1, especially in providing a clean, abstract XML centric design that describes the content of messages independent of the binding considerations.
WSDL 2.0 has a comprehensive component model (which is even expressed in Z notation for accuracy and for those who are mathematically oriented!), bindings for SOAP 1.2/HTTP, HTTP bindings as well as SOAP 1.1/HTTP. There is also the RDF mapping, which has progressed more slowly among its siblings.
Among the interesting features that I personally care about and which will be important in the future are:
- styles (including RPC, which finally standardizes the wrapped document style already utilized in WS products and environments today)
- wsdli:wsdlLocation IRIs (akin to schemaLocation) for locating WSDL documents.
- the capability to refer to other services/endpoints within a message definition by using wsdlx:interface/wsdlx:binding attributes
Note that these last two items are quite important, not only for WSDL 2.0 but may be utilized in conjunction with WS-Addressing and/or WSDL 1.1.
The CR periods at W3C is designed to solicit implementations that would interoperate in order to pass the exit criteria for the specification so that the specification can move to become a Proposed Recommendation and finally become a W3C Recommendation.
As a member of the working group, I am happy that we finally reached this stage. I am also optimistically cautious.
The bag of goods that needs testing and implementation are quite comprehensive. I somewhat doubt that implementations would be able to cover all the features that are present in WSDL 2.0, especially two separate bindings SOAP 1.2/HTTP and the independent HTTP binding itself. Since it took such a long time to develop the specification despite the hurdles/delays, I do hope that there would be at least one implementation that would exhibit the features for each binding. Otherwise unimplemented portions of the spec may delay the process even further by threatening the specification’s lifecycle, since taking the unimplemented features out of the specification would reset the specification cycle to yet another last call period. This outcome would be very unfortunate in the reality of the short-attention-span industry we are in.
I do hope that it does not happen. WSDL 2.0 has come a long way and while I am looking at that light at the end of the tunnel, I am hoping that it will still be shining bright several months from now on…