Update 2004-08-10: With the August 10, 2004 submission of the WS-Addressing specification to W3C, the W3C Consortium moves closer to chartering a new Working Group to bring about a convergence of addressing mechanisms and specifications, including WS-Addressing, WS-MessageDelivery, WSDL 2.0, SOAP, etc. See the news story "WS-Addressing Specification Presented to W3C as a Member Submission."
Update 2004-06-03: In an open letter the W3C AC Forum, eleven major companies have proposed the creation of a new technical activity to bring about industry convergence in the area of Web Service Referencing and Addressing. A draft "strawman" proposal calls for a new working group that would have the participation of the entire web service community. The WG would produce a WS-Addressing and Referencing Framework Recommendation based upon WS-Addressing and WS-MessageDelivery. See "Proposed Technical Specification for Web Services Addressing and Referencing Framework."
[April 26, 2004] W3C has acknowledged receipt of a WS-MessageDelivery Version 1.0 specification which defines an abstract set of message delivery properties enabling message delivery for Web services that utilize Message Exchange Patterns associated with WSDL documents.
The W3C Member Submission has been prepared by Oracle, Arjuna, Cyclone Commerce, Enigmatec, IONA, Nokia, SeeBeyond, and Sun Microsystems.
According to the W3C staff comment, the WS-MessageDelivery proposal is similar to the WS-Addressing proposal from BEA, IBM, and Microsoft: "while addressing the same scope as the WS-Addressing document, WS-MessageDelivery is more fully integrated with WSDL, by defining its relations with the WSDL Message Exchange Patterns or by introducing a WSMD description for WSDL. It also follows the current work of the W3C Web Services Description Working Group, and the service references introduced in WSDL 2.0. WS-Addressing, while relying on the WSDL concepts, does not use the WSDL service element as a service reference. WS-MessageDelivery relies on the implicit open content model of WSDL for extensions, while WS-Addressing uses an explicit 'reference properties' extension mechanism."
The WS-MessageDelivery Version 1.0 specification abstract summarizes: "[This] specification defines a mechanism to reference Web services (WSRef), essential abstract message delivery properties (AMDP), a SOAP binding for those properties, and the relationship of those properties to WSDL definitions and message exchange patterns. These properties enable SOAP messages to be transport independent — extending messaging capability to use separate transport protocol sessions or even using different transport protocols within the context of a message exchange pattern (MEP). Message delivery details are surfaced to the application layer, extending SOAP processors to use a wider range of message patterns and transport protocols to accomplish a Web service interaction. The abstract message delivery properties include web service references, message identification and message references. This specification outlines in detail how to build message exchange patterns consistent with WSDL 1.1 or WSDL 2.0 using the definitions in the specification. The semantics and mapping for the Callback Pattern, a commonly used message exchange pattern as a composite pattern, is defined. The Web service References (WSRef), Abstract Message Delivery Properties and a SOAP binding are designed for interoperability and extensibility."
The submission request provides royalty-free license terms from the eight sponsor companies for use of the WS-MessageDelivery technology.
WS-MessageDelivery Version 1.0. W3C Member Submission. 26-April-2004. 54 pages. Authors: Anish Karmarkar (Oracle Corporation, Editor), Ümit Yalçinalp (Oracle Corporation, Editor), Mark Hapner (Sun Microsystems Inc.), Frederick Hirsch (Nokia Corporation), Dave Ingham (Arjuna Technologies Limited), Mark Little (Arjuna Technologies Limited), Michael Mahan (Nokia Corporation), Jeff Mischkinsky (Oracle Corporation), Dale Moberg (Cyclone Commerce Inc.), Eric Newcomer (IONA Technologies), Steve Ross-Talbot (Enigmatec Corporation), and Pete Wenzel (SeeBeyond Technology Corporation). Version URL: http://www.w3.org/Submission/2004/SUBM-ws-messagedelivery-20040426/. Latest version URL: http://www.w3.org/Submission/ws-messagedelivery/. Also available in PDF format.
WS-MessageDelivery Version 1.0 Overview
Message delivery is fundamental to all aspects of Web services, making the message delivery properties of targeting of Web services, message identification and message referencing essential. This is especially important when building various message exchange patterns such as a callback pattern. The specification of message delivery properties must take into account how WSDL definitions are used to create message exchange patterns and enable and leverage such usage. At the same time, such specifications must be minimal to support interoperability at this core of Web services. This specification defines a Web service reference, Abstract Message Delivery Properties, a SOAP binding, and the relationship to WSDL without introducing additional information that may hinder interoperability. The schemas are designed to be extensible, but the core definition is minimal.
A WSDL document defines the exchange of messages that enable the interaction with a Web service. There are four Message Exchange Patterns (MEP) defined in a WSDL 1.1 document and they constitute the building blocks for specifying complex interactions. The Message Exchange Patterns, referred as transmission primitives, in WSDL 1.1 are implicit and suggested by the conventions used by the operations that utilize them. The WSDL 2.0 specification, which is currently in progress, will formally specify a set of MEPs and will allow additional patterns to be defined and used.
As Web services are deployed for non-trivial business applications involving MEPs, it is necessary to address the problems of delivering a message to a node that participates in an MEP. These include responding asynchronously to requests, correlating messages to enable an MEP and referring to a Web service in a message in a transport independent manner.
It is important to allow different transport sessions or even different transport protocols to be used for separate paths of a message exchange pattern, and the abstract message delivery properties outlined in this specification support this usage. These properties surface message binding information to the SOAP application layer, allowing a Web service greater flexibility to choose the appropriate transport that meets business requirements. For instance, in the mobile environment, devices are typically not HTTP addressable and this is problematic for use cases involving asynchronous messaging or events. This specification provides a mechanism to pass the correct mobile binding information to the SOAP node that forwards the message to the mobile device...
Complex business applications require support for notification, asynchronous request-response, and long-lived conversations within a context. This requires that messages that are sent to/from a Web service be allowed to identify the Web service or a client that is the intended destination/source for the message. Further, messages may travel over multiple links possibly over multiple transports and may be acted upon asynchronously. Therefore, it is necessary to identify a set of properties that are independent of the transport that enable message delivery in the context of Web services.
This document specifies an abstract set of message delivery properties that enable message delivery for Web services that utilize Message Exchange Patterns associated with WSDL documents. We show how these properties apply to MEPs defined in WSDL 1.1 documents each time a message is exchanged in a specific direction. We also illustrate how they enable a common message exchange pattern, Callback (CB) pattern, defined as a composite pattern in this document. A composite pattern is a message exchange pattern that is composed of one or more well defined patterns in WSDL that define a logical unit of exchange.
Although the focus of this document is enabling message delivery for Web services that use WSDL 1.1 descriptions, the properties and techniques introduced here are also applicable in the future. They are shown to apply within the context of additional MEPs currently being defined by the WSDL 2.0 specification.
This document defines:
- Web service References (WSRef)
- Abstract Message Delivery Properties (AMDP) and their mapping to SOAP 1.1 and SOAP 1.2
- Use of AMDP in the context of MEPs defined in WSDL 1.1
- Callback pattern implementation using AMDP
- Use of AMDP in the context of MEPs in defined in WSDL 2.0 [from the spec Introduction]
From the W3C Team Comment on the WS-MessageDelivery Submission
The WS-MessageDelivery specification fills in a portion of the Web Services architecture by presenting a simple mechanism to deliver and correlate messages in the context of message exchange patterns (MEPs), found in the service description. It is especially useful when more than two agents are in use.
WS-MessageDelivery can be used with the Web Services Description Language (WSDL), and the MEPs introduced in WSDL 1.1 and WSDL 2.0. It also defines the concept of Web Services references by reusing the WSDL 1.1 service element. For example, using WS-MessageDelivery, one can indicate that the destination of an 'Out' message when using the MEP In-Out should be different from the sender of the message 'In'. Another example would be the use of WSDL MEPs for asynchronous exchanges. WSDL 2.0 also introduces the concept of service reference, but this is still work in progress.
Web Service Reference: When more than two agents are involved in a message exchange, one needs a mechanism to reference an agent. A Web Service Reference could be:
- an identifier, i.e., a Uniform Resource Identifiers (URI) representing the address of an agent
- a service endpoint
- a subset of a service endpoint, when the interface and/or the interface binding are not determined
Delivering messages: Multiplexing messages in Web Services is very analog to delivering emails using SMTP. Thus, WS-MessageDelivery introduces similar notions...
Next Steps: [...] The WS-MessageDelivery approach suggests a strategy for possible standardization:
- ensure that we have consensus on the relation between WSDL and the service references, as used to deliver messages
- allow the use of such service references for the WSDL 2.0 Message Exchange Patterns
- define the abstract component to allow delivery
- provide the necessary extensions for SOAP 1.2 and WSDL 2.0
Such work should be developed in a separate group (i.e., different from the XMLP, WSD, or WS Choreography Working Groups)..." [excerpted from the W3C Comment]
Specification Author Contacts
Inquiries from the public or press about the WS-MessageDelivery Specification should be directed to representatives of the author/sponsor companies:
- Dave Ingham (Arjuna Technologies Limited)
- Bill Hankes (Cyclone Commerce Inc.)
- Ginette Walton (Enigmatec Corporation)
- Robert Morton (IONA Technologies)
- Bjorn.Wigforss (Nokia Corporation)
- Rob Cheng (Oracle Corporation)
- Kristi Rawlinson (SeeBeyond Technology Corporation)
- Laura Ramsey (Sun Microsystems Inc)
From the Announcement 2004-05
Today, Arjuna Technologies Ltd., Enigmatec Corporation Ltd., Hitachi, IONA Technologies, Inc., Nokia Corporation, Oracle, SeeBeyond, Sonic Software, and Sun Microsystems, Inc. announced support for the WS-MessageDelivery specification recently submitted to the World Wide Web Consortium (W3C) in accordance with the W3C's royalty-free licensing requirements.
WS-MessageDelivery will make it easier to build complex applications using Web services by standardizing the way Web service endpoints are referenced when multiple Web services are engaged in common message exchange patterns. Designed to facilitate the patterns outlined in Web Services Description Language (WSDL), this specification lays a foundation to achieve far more sophisticated message-based interactions without sacrificing the loosely coupled model that underlies Web services.
An example of a message exchange pattern enabled by WS-MessageDelivery is the "callback pattern" — where one service sends a request to a second service, but instead of waiting idly for a reply, continues doing other work until notified that the second service has finished processing the request. Prior to WS-MessageDelivery, proprietary messaging constructs were needed to identify the callback service, limiting the development and interoperability of this key capability between vendors.
A fundamental tenet of WS-MessageDelivery is to reduce the complexity application developers encounter when implementing real world business applications composed of Web services. It does this by taking a WSDL-centric approach for referencing Web service endpoints building on existing structures. It is also designed to be extensible and composable so that other specifications can utilize its foundation.
"The WS-MessageDelivery specification adds an important, fundamental piece to the open Web services architecture," said David Ingham, CTO at Arjuna Technologies. "The availability of a royalty-free addressing standard is crucial as a foundation for higher-level Web services specifications and for the adoption of Web services in general."
"Enigmatec is happy to support WS-MessageDelivery as it will move forward the adoption of the Enterprise Grid and Web services," said Steve Ross-Talbot, Chief Scientist, Enigmatec Corporation.
"Hitachi applauds the introduction of WS-MessageDelivery to the W3C," said Takao Nakamura, Senior General Manager, Software Division, Hitachi, Ltd. "Addressing and transport characteristic abstraction of SOAP messaging along with definition of message exchange patterns expands applicability of Web services in many constructive ways. The introduction of key Web services technologies free of intellectual property hindrances is fundamental to wide-spread adoption and market acceptance."
"We are quite pleased that the W3C has acknowledged the submission of WS-MessageDelivery," said Eric Newcomer, CTO, IONA. "Addressing is a crucial aspect of moving enterprise Web services forward, and an open, standard addressing model will be of tremendous benefit to the industry."
"Nokia is pleased to be a co-author of the W3C WS-MessageDelivery Note. The open specification of Web services message delivery will be a fundamental component for wide adoption of Web services. We also welcome additional contributions of Web services specifications to open standards processes, which are basic drivers for wide adoption of Web services," said Frederick Hirsch, Senior Architect at Nokia.
"As one of the authors of the WS-MessageDelivery specification, Oracle believes that its submission to the W3C is a key step toward enabling organizations to provide business critical services over the Internet," said Donald Deutsch, vice president, standards strategy and architecture, Oracle Corp. "We encourage other vendors interested in open interoperability and wide applicability of Web services to collaborate with us on this important royalty-free specification."
"The proposal of the WS-MessageDelivery specification serves as yet another important step towards maturing the set of technologies necessary to support the proliferation of Web services," said Alex Andrianopoulos, vice president of Product Management & Standards for SeeBeyond. "As a leader in the delivery of a fully integrated platform for composite application development, SeeBeyond continues to stand behind the elimination of proprietary vendor technologies that inhibit the evolution of complete interoperability."
"The introduction of WS-MessageDelivery brings a royalty-free and standards-focused technology to bear on referencing and delivery, pillars of the Web services world that have not yet been addressed in a truly open forum," said Glen Daniels, Standards Strategist at Sonic Software. "Sonic strongly supports both community innovation and convergence in this space, so we stand behind this submission to the W3C and look forward to future work by all players to solidify this important area."
"Sun is very pleased by the W3C's acknowledgment of our WS-MessageDelivery submission. We expect this technology to enable standardized addressing and message correlation mechanisms that our Java Enterprise System can then use to lessen application developers' burden," said Mark Bauhaus, Vice President Java Web Services, Sun Microsystems. "We hope that all companies interested in this important activity will join us and collaborate in its further development, openly and under royalty free terms."
- "Web Service Leaders Rally Behind WS-MessageDelivery Specification. Companies Support Key Royalty-Free Building Block for Complex Web Services." Announcement 2004-05-24.
- WS-MessageDelivery Version 1.0. W3C Member Submission. 26-April-2004.
- WS-MessageDelivery . In PDF format. [cache]
- WS-MessageDelivery Submission Request to W3C. Submitted April 13, 2004.
- Team Comment on the WS-MessageDelivery Submission. From Philippe Le Hégaret (W3C Architecture Domain Leader).
- Web Services Description Language (WSDL) Version 2.0, Part 2: Message Exchange Patterns. W3C Working Draft. 26-March-2004. See also the 2.0 Part 1: Core Language, XML Schema for WSDL 2.0, and WSDL 2.0 validation tools (Eclipse WSVT).
- Web Services Description Language (WSDL) 1.1. W3C Note 15-March-2001.
- W3C Web Services Description Working Group
- Web Services Architecture. W3C Working Group. Note 11-February-2004.
- Acknowledged Member Submissions to W3C
- Published Team Submissions to W3C
- W3C Technical Reports
- See also: "Web Services Description Language (WSDL)."
- See also: "Web Services Addressing (WS-Addressing)."