UPDATED: The World Wide Web Consortium (W3C) has completed its first draft of a description language for orchestrating how Web services interact with each other and end-users.
Version 1.0 of the Web Services
Choreography Description Language version 1.0 (WS-CDL), announced Thursday, is seen as a key component of Web services
WS-CDL, endorsed by such vendors as BEA Systems, Instead, Daly said WS-CDL complements languages such as BPEL Apple Computer,
Cisco Systems and
Computer Associates,
describes ways to tie or “choreograph” different applications together through peer-to-peer collaboration and makes sure they are routed in an efficient sequence.
Although Microsoft and IBM are conspicuously missing from the list of WS-CDL supporters, there is a reason. The companies have
authored their own specification for orchestrating Web services for business processes, called Business Process Execution Language (BPEL)
Though often described as competing standards, WS-CDL and BPEL do similar things, but approach business process and applications in two basic, but distinctive ways, W3C spokesperson Janet Daly told internetnews.com.
“Think of a troupe of dancers,” Daly said. “With BPEL each individual dancer knows what she needs to do, whether its jazz, or tap. With WS-CDL, the choreographer is the language that tells all 40 dancers how to move and in what sequence.”
Daly explained that as applications become increasingly decentralized in Web services, it becomes difficult to write behavior for every application, as
is the case with BPEL. WS-CDL can be used to orchestrate a larger
application made up of smaller ones.
Ronald Schmelzer, senior analyst with XML and Web services research firm, expanded on the distinction between BPEL and WS-CDL.
“The idea here is that while process languages like BPEL define a well-orchestrated “flow” (do this, then that, then the other thing), this choreography language describes a set of pre- and post-conditions that allow for activities to happen in certain instances, but not in a well-orchestrated “flow” (execute this task if they meet the following
criterion, and if they have executed a previous task),” Schmelzer told internetnews.com “The two are clearly related. One is more strict, and one is more loose.”
Schmelzer went on to explain that convergence of the two specifications is vital to wholesale adoption of Web services in the enterprise.
“These specs need to converge at some point to reduce, not increase, the amount of complexity in the enterprise,” Schmelzer said. “What is also notable, of course, is the absence of the “Big Two” Web Services spec creators: Microsoft and IBM. Regardless of the good intentions and aims of the many participants on this spec, if they are to get any traction (let
alone support of the WS-I), they must seek to gain their support or find some way to co-exist without threat of extinction.”
While Microsoft and IBM’s
reticence to
embrace W3C’s choreography endeavor might be cause for consternation among those in the standards body, analysts have praised both specifications for their attention to the adoption barrier of bringing Web services to the fore.
Daly said that interactions in business transactions can be viewed from a
variety of points in the transaction chain, and modeling interactions from a
global viewpoint allows software developers to take get a handle on the
“unexpected dependence on the sequence of events.”
Software industry experts say they are excited about the possibilities choreography
brings to the table for a number of reasons. One is the way the
approach addresses integration.
Web services, a market often quoted as a “sky is the
limit,” multi-billion-dollar segment, are largely keyed by the prospect of
integrating whole software stacks across different platforms.
Integration, which traditionally has been performed by enterprise
application integration processes, reduces connectivity costs, while
increasing information flow. Web services, by their very distributed nature,
free developers from custom coding chores.
Choreography cinches the value of Web services because it employs a global
model to ensure that contractual behavior across multiple services can be
achieved without complex wiring or complex wiring tools, speeding time to
market. WS-CDL adds the global model such programming languages need to
ensure that end point behavior is consistent across services.
WS-CDL, which is XML-based and supports SOAP Version 1.2 and WSDL 2.0, is
currently refining WS-CDL for the purpose of forging early implementations.