W3C Web Services Description Language (WSDL) Version 2.0: Additional MEPs W3C Working Draft 23 May 2007 This version: http://www.w3.org/TR/2007/WD-wsdl20-additional-meps-20070523 Latest version: http://www.w3.org/TR/wsdl20-additional-meps Previous version: http://www.w3.org/TR/2007/WD-wsdl20-additional-meps-20070326 Editor: Amelia A. Lewis, TIBCO Software This document is also available in these non-normative formats: PDF, PostScript , XML, and plain text. Copyright © 2007 W3C^® (MIT, ERCIM, Keio), All Rights Reserved. W3C liability, trademark and document use rules apply. ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Abstract This specification defines additional message exchange patterns (MEPs) to be used in WSDL 2.0 and are provided as examples of the extensibility of WSDL 2.0. Status of this Document This section describes the status of this document at the time of its publication. Other documents may supersede this document. A list of current W3C publications and the latest revision of this technical report can be found in the W3C technical reports index at http://www.w3.org/TR/. This is a W3C Working Draft of Web Services Description Language (WSDL) Version 2.0: Additional MEPs. It has been produced by the Web Services Description Working Group, which is part of the W3C Web Services Activity. This document contains additional MEPs that were previously defined in WSDL Version 2.0 Part 2: Adjuncts [WSDL 2.0 Adjuncts]. The Working Group intends this document as a Working Group Note once WSDL 2.0 reached W3C Recommendation status. Implementers are invited to send feedback to the public public-ws-desc-comments@w3.org mailing list (public archive). Issues about this document are recorded in the issues list maintained by the Working Group. A diff-marked version against the previous version of this document is available. Publication as a Working Draft does not imply endorsement by the W3C Membership. This is a draft document and may be updated, replaced or obsoleted by other documents at any time. It is inappropriate to cite this document as other than work in progress. This document is governed by the 24 January 2002 CPP as amended by the W3C Patent Policy Transition Procedure. W3C maintains a public list of any patent disclosures made in connection with the deliverables of the group; that page also includes instructions for disclosing a patent. An individual who has actual knowledge of a patent which the individual believes contains Essential Claim(s) must disclose the information in accordance with section 6 of the W3C Patent Policy. Table of Contents 1. Introduction 2. Additional Message Exchange Patterns 2.1 Fault Propagation Rules 2.2 Message Exchange Patterns 2.2.1 In-Optional-Out message exchange pattern 2.2.2 Out-Only message exchange pattern 2.2.3 Robust Out-Only message exchange pattern 2.2.4 Out-In message exchange pattern 2.2.5 Out-Optional-In message exchange pattern 2.3 Security Considerations 3. References 3.1 Normative References Appendices A. Acknowledgements (Non-Normative) B. Part 2 Change Log (Non-Normative) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1. Introduction The Web Services Description Language Version 2.0 (WSDL 2.0) [WSDL 2.0 Core Language] provides a model and an XML format for describing Web services. WSDL 2.0 enables one to separate the description of the abstract functionality offered by a service from concrete details of a service description such as "how" and "where" that functionality is offered. This document defines additional message exchange patterns (MEPs) to be used in WSDL 2.0 and are provided as examples of the extensibility of WSDL 2.0. This document is the product of the Web Services Description Working Group, but its contents are non-normative. 2. Additional Message Exchange Patterns Web Services Description Language (WSDL) [WSDL 2.0 Adjuncts] defines several message exchange patterns (hereafter simply 'patterns'), as well as rules for defining additional patterns. This specification defines several message exchange patterns for use with WSDL Version 2.0 Part 1: Core Language [WSDL 2.0 Core Language]. The template defined in [WSDL 2.0 Adjuncts] was used for the further contents of this document. These patterns were originally intended for inclusion in WSDL Version 2.0 Part 2: Adjunct [WSDL 2.0 Adjuncts]. The Working Group ultimately decided that including only those patterns which were referenced by the bindings defined in that specification was clearer for implementors and users, and resolved to publish these remaining patterns separately as a Note. 2.1 Fault Propagation Rules These patterns use the fault propagation rulesets defined in [WSDL 2.0 Adjuncts ]. 2.2 Message Exchange Patterns WSDL patterns are described in terms of the WSDL component model, specifically the Interface Message Reference and Interface Fault Reference components. 2.2.1 In-Optional-Out message exchange pattern The in-optional-out message exchange pattern consists of one or two messages, in order, as follows: 1. A message: □ indicated by a Interface Message Reference component whose {message label} is "In" and {direction} is "in" □ received from some node N 2. An optional message: □ indicated by a Interface Message Reference component whose {message label} is "Out" and {direction} is "out" □ sent to node N The in-optional-out message exchange pattern uses the rule Message Triggers Fault. An operation using this message exchange pattern has a {message exchange pattern} property with the value "http://www.w3.org/ns/wsdl/in-opt-out". 2.2.2 Out-Only message exchange pattern The out-only message exchange pattern consists of exactly one message as follows: 1. A message: □ indicated by a Interface Message Reference component whose {message label} is "Out " and {direction} is "out" □ sent to some node N The out-only message exchange pattern uses the rule No Fault. An operation using this message exchange pattern has a {message exchange pattern} property with the value "http://www.w3.org/ns/wsdl/out-only". 2.2.3 Robust Out-Only message exchange pattern The robust out-only message exchange pattern consists of exactly one message as follows: 1. message: □ indicated by a Interface Message Reference component whose {message label} is "Out" and {direction} is "out" □ sent to some node N The robust out-only message exchange pattern uses the rule Message Triggers Fault. An operation using this message exchange pattern has a {message exchange pattern} property with the value "http://www.w3.org/ns/wsdl/robust-out-only". 2.2.4 Out-In message exchange pattern The out-in message exchange pattern consists of exactly two messages, in order, as follows: 1. A message: □ indicated by a Interface Message Reference component whose {message label} is "Out" and {direction} is "out" □ sent to some node N 2. A message: □ indicated by a Interface Message Reference component whose {message label} is "In" and {direction} is "in" □ sent from node N The out-in message exchange pattern uses the rule Fault Replaces Message. An operation using this message exchange pattern has a {message exchange pattern} property with the value "http://www.w3.org/ns/wsdl/out-in". 2.2.5 Out-Optional-In message exchange pattern The out-optional-in message exchange pattern consists of one or two messages, in order, as follows: 1. A message: □ indicated by a Interface Message Reference component whose {message label} is "Out" and {direction} is "out" □ sent to some node N 2. An optional message: □ indicated by a Interface Message Reference component whose {message label} is "In" and {direction} is "in" □ sent from node N The out-optional-in message exchange pattern uses the rule Message Triggers Fault. An operation using this message exchange pattern has a {message exchange pattern} property with the value "http://www.w3.org/ns/wsdl/out-opt-in". 2.3 Security Considerations Security considerations are discussed in [WSDL 2.0 Adjuncts]. 3. References 3.1 Normative References [WSDL 2.0 Core Language] Web Services Description Language (WSDL) Version 2.0 Part 1: Core Language, R. Chinnici, M. Gudgin, J-J. Moreau, S. Weerawarana, Editors. World Wide Web Consortium, 23 May 2007. This version of the "Web Services Description Language (WSDL) Version 2.0 Part 1: Core Language" Specification is available at http://www.w3.org/TR/2007/PR-wsdl20-20070523. The latest version of "Web Services Description Language (WSDL) Version 2.0 Part 1: Core Language" is available at http://www.w3.org/TR/wsdl20. [WSDL 2.0 Adjuncts] Web Services Description Language (WSDL) Version 2.0 Part 2: Adjuncts, R. Chinnici, H. Haas, A. Lewis, J-J. Moreau, D. Orchard, S. Weerawarana, Editors. World Wide Web Consortium, 23 May 2007. This version of the "Web Services Description Language (WSDL) Version 2.0 Part 2: Adjuncts" Specification is available at http://www.w3.org/TR/2007/ PR-wsdl20-adjuncts-20070523. The latest version of "Web Services Description Language (WSDL) Version 2.0 Part 2: Adjuncts" is available at http://www.w3.org/TR/wsdl20-adjuncts. A. Acknowledgements (Non-Normative) This document is the work of the W3C Web Service Description Working Group. Members of the Working Group are (at the time of writing, and by alphabetical order): Charlton Barreto (Adobe Systems, Inc), Allen Brookes (Rogue Wave Softwave), Dave Chappell (Sonic Software), Helen Chen (Agfa-Gevaert N. V.), Roberto Chinnici (Sun Microsystems), Kendall Clark (University of Maryland), Glen Daniels (Sonic Software), Paul Downey (British Telecommunications), Youenn Fablet (Canon), Ram Jeyaraman (Microsoft), Tom Jordahl (Adobe Systems), Anish Karmarkar (Oracle Corporation), Jacek Kopecky (DERI Innsbruck at the Leopold-Franzens-Universität Innsbruck, Austria), Amelia Lewis (TIBCO Software, Inc.), Philippe Le Hegaret (W3C), Michael Liddy (Education.au Ltd.), Kevin Canyang Liu (SAP AG), Jonathan Marsh (WSO2), Monica Martin (Sun Microsystems), Josephine Micallef (SAIC - Telcordia Technologies), Jeff Mischkinsky (Oracle Corporation), Dale Moberg (Cyclone Commerce), Jean-Jacques Moreau (Canon), David Orchard (BEA Systems, Inc.), Gilbert Pilz (BEA Systems, Inc.), Tony Rogers (Computer Associates), Arthur Ryman (IBM), Adi Sakala (IONA Technologies), Michael Shepherd (Xerox), Asir Vedamuthu (Microsoft Corporation), Sanjiva Weerawarana (WSO2), Ümit Yalçınalp (SAP AG), Peter Zehler (Xerox). Previous members were: Eran Chinthaka (WSO2), Mark Nottingham (BEA Systems, Inc.), Hugo Haas (W3C), Vivek Pandey (Sun Microsystems), Bijan Parsia (University of Maryland), Lily Liu (webMethods, Inc.), Don Wright (Lexmark), Joyce Yang (Oracle Corporation), Daniel Schutzer (Citigroup), Dave Solo (Citigroup), Stefano Pogliani (Sun Microsystems), William Stumbo (Xerox), Stephen White (SeeBeyond), Barbara Zengler (DaimlerChrysler Research and Technology), Tim Finin (University of Maryland), Laurent De Teneuille (L'Echangeur), Johan Pauhlsson (L'Echangeur), Mark Jones (AT&T), Steve Lind (AT &T), Sandra Swearingen (U.S. Department of Defense, U.S. Air Force), Philippe Le Hégaret (W3C), Jim Hendler (University of Maryland), Dietmar Gaertner (Software AG), Michael Champion (Software AG), Don Mullen (TIBCO Software, Inc.), Steve Graham (Global Grid Forum), Steve Tuecke (Global Grid Forum), Michael Mahan (Nokia), Bryan Thompson (Hicks & Associates), Ingo Melzer (DaimlerChrysler Research and Technology), Sandeep Kumar (Cisco Systems), Alan Davies (SeeBeyond), Jacek Kopecky (Systinet), Mike Ballantyne (Electronic Data Systems), Mike Davoren (W. W. Grainger), Dan Kulp (IONA Technologies), Mike McHugh (W. W. Grainger), Michael Mealling (Verisign), Waqar Sadiq (Electronic Data Systems), Yaron Goland (BEA Systems, Inc.), Ümit Yalçınalp (Oracle Corporation), Peter Madziak (Agfa-Gevaert N. V.), Jeffrey Schlimmer (Microsoft Corporation), Hao He (The Thomson Corporation), Erik Ackerman (Lexmark), Jerry Thrasher (Lexmark), Prasad Yendluri (webMethods, Inc.), William Vambenepe (Hewlett-Packard Company), David Booth (W3C), Sanjiva Weerawarana (IBM), Asir Vedamuthu (webMethods, Inc.), Igor Sedukhin (Computer Associates), Martin Gudgin (Microsoft Corporation), Rebecca Bergersen (IONA Technologies), Ugo Corda (SeeBeyond). The people who have contributed to discussions on www-ws-desc@w3.org are also gratefully acknowledged. B. Part 2 Change Log (Non-Normative) ┌────────┬──────┬─────────────────────────────────────────────────────────────┐ │ Date │Author│ Description │ ├────────┼──────┼─────────────────────────────────────────────────────────────┤ │20070227│aal │Add markup to pattern names, consistent with part 2, per jjm.│ ├────────┼──────┼─────────────────────────────────────────────────────────────┤ │20070226│aal │Editorial fixes per feedback from jjm, jm, and tj. │ ├────────┼──────┼─────────────────────────────────────────────────────────────┤ │20061107│aal │Removed the template, too. │ ├────────┼──────┼─────────────────────────────────────────────────────────────┤ │20061107│aal │More cleanup, especially references. │ ├────────┼──────┼─────────────────────────────────────────────────────────────┤ │20061107│aal │First pass revision/cleanup, mostly removing things. │ ├────────┼──────┼─────────────────────────────────────────────────────────────┤ │20061025│JJM │Created skeleton document from Part 2. │ └────────┴──────┴─────────────────────────────────────────────────────────────┘