Update 2004-04-26: An initial Public Working Draft of the Web Services Choreography Description Language Version 1.0 was released by W3C on April 26, 2004. This document, the first in a series of WS-CDL working drafts, has been produced by members of the W3C Web Services Choreography Working Group as part of the Web Services Activity. The WS-CDL XML-based language "describes peer-to-peer collaborations of Web Services participants by defining, from a global viewpoint, their common and complementary observable behavior, where ordered message exchanges result in accomplishing a common business goal. The Web Services Choreography specification is targeted for composing interoperable peer-to-peer collaborations between any type of Web Service participant regardless of the supporting platform or programming model used by the implementation of the hosting environment." According to the W3C announcement, the Web Services Choreography Description Language is a "necessary complement to end point languages such as BPEL and Java. WS-CDL provides them with the global model they need to ensure that end point behavior — the 'rules of engagement' — is consistent across cooperating services. Business transactions, especially those envisioned by Web services, grow from complex interactions. These interactions can be viewed from a variety of points in the transaction chain, not simply the start or the expected endpoint. Modeling these interactions from a global viewpoint allows software developers to take into account the distributed race conditions (unexpected dependence on the sequence of events) that may exist — in much the same way they exist in non-Web business processes. Choreography provides the set of rules that explains how different components may act together, and in what sequence, giving a flexible systemic view of the process."
[2003-01-16] W3C has announced the creation of a Web Services Choreography Working Group as part of the W3C Web Services Activity. "Choreography describes linkages and usage patterns between Web services. The Working Group is chartered to create the definition of a choreography, language(s) for describing a choreography, as well as the rules for composition of, and interaction among, such choreographed Web services. The language(s) should build upon the foundation of the WSDL 1.2 (Web Service Description Language Version 1.2)." According to the published Charter, the Working Group will consider various input documents to refine the scope and factorization of the choreography space: Web Services Architecture and Web Service Choreography Interface (WSCI) 1.0 will be given formal consideration. The choreography specifications produced by the group are minimally to define behavior and language constructs for the following choreography concepts: (1) Composition features (recursive composition model, definition of the choreography's externally observable behavior, stateful choreographies, definition of the identity of an instance of an execution of a choreography, life-cycle management, message exchange interactions between Web services, behavior definitions, scoping rules, activities); (2) Associations (roles based on Web service use, linkages between Web services, references to Web services); (3) Message exchanges (conversations, correlations and their life cycle management, correlation relationships with choreography instances and state); (4) State Management (definition, manipulation, query capabilities).
Working Group Goals and Scope [excerpted from the WG Charter]:
"Existing specifications for Web services describe the indivisible units of interactions. It has become clear that taking the next step in the development of Web services will require the ability to compose and describe the relationships between lower-level services. Although differing terminology is used in the industry, such as orchestration, collaboration, coordination, conversations, etc., the terms all share a common characteristic of describing linkages and usage patterns between Web services." In the W3C context, choreography is the name given to this space.
"Two technical Submissions, WSCL, and WSCI, have recently been published by the W3C as Technical Notes. There are other industry efforts in the area of choreography languages, such as BPML (defined by BPMI.org), BPSS (defined by ebXML), IBM's WSFL, Microsoft's XLANG, and IBM/Microsoft/BEA's BPEL4WS and their companion specifications WS-Coordination and WS-Transaction, etc. These developments make clear that there is a great deal of interest within the industry in addressing this problem area."
"Some observers predict that if no steps are taken to develop a choreography specification in a vendor-neutral forum, the Web services marketplace may be divided into a number of non-interoperable sub-networks. A vendor-neutral choreography specification which commands consensus and wide support, on the other hand, can make it much easier and cheaper to create composite Web services which integrate services from multiple vendors. Small and medium-sized enterprises will be able to create more complex and more useful Web services. This in turn will help the market grow much more vigorously than would be possible without a vendor-neutral specification for choreography."
"WSDL has proved very useful for describing a single service. Currently complex natural language descriptions outlining the obligations of the participants and detailing how to use a service (sequencing, state management, etc.) have to accompany a WSDL description. The next step is to partially replace these somewhat imprecise instructions with precise language. This will simplify the daunting task companies now face when trying to use Web services to integrate their business processes. In a B2B context such a specification could reduce the cost of integrating with new trading partners and responding to changes in existing interfaces. In addition, creating a standard language to describe the relationships between document exchanges will be helpful to other standards bodies, such as RosettaNet or CIDX, giving them a standard infrastructure for message choreography and enabling them to focus on the core competencies relevant to their domain..."
Earlier commentary:
- "E-Business Process Modeling: The Next Big Step." By Selim Aissi, Pallavi Malu, and Krishnamurthy Srinivasan (Intel Labs). IEEE Computer Volume 35, Number 5 (May 2002), pages 55-62.
- "W3C, Vendors Dust Down Over WS-Choreography?" By [Gavin Clarke]. In The Register (December 20, 2002).
- "Proposal to Unify Web Services Standards Gets Backing" (James Niccolai and Paul Krill, September 13, 2002)
- "Sun Official Urges Convergence on Web Services" (Paul Krill, September 18, 2002)
Principal references:
- W3C Web Services Choreography Working Group website
- W3C Web Services Choreography Working Group Charter
- "W3C Publishes Web Services Choreography Description Language (WS-CDL)."
- Web Services Choreography Description Language Version 1.0. W3C Working Draft, 27-April-2004.
- Public mailing list archives for 'public-ws-chor'
- Web Services Architecture. W3C Working Draft 14-November-2002.
- Web Service Choreography Interface (WSCI) 1.0. W3C Note 8-August-2002
- W3C Web Services Description Working Group
- W3C Web Services Activity
- Web Services Architecture. See also the Web Services Architecture Working Group website and WG Charter.
- Working Group Chairs: Martin Chapman (Oracle) and Steve Ross-Talbot (Enigmatec Corporation).
- "W3C Acknowledges Receipt of Web Service Choreography Interface (WSCI) Submission." News story 2002-08-12.
- Press:
- "W3C to Ponder Web Services Choreography." By Paul Krill. In InfoWorld (January 14, 2003).
- See also: ebPML.org website, dedicated to the architecture and technologies of Business Process Management Systems (BPMS)
- See also: "Business Process Execution Language for Web Services (BPEL4WS)."