Clarified one-way MEP

David Hull <[email protected]> Fri, 16 Jun 2006 08:46:04 -0400
Newsgroups gmane.text.xml.distributed
Message-ID <[email protected]>
In a spare moment, I put together a revision of the one-way MEP which
tries to be more explicit about the questions I mentioned before.  The
formatting may be a bit funky, due to the HTML editor I was using.
one-way-mep-june-2006.html (text/html, 14.3 KB)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en">
<head>
  <meta http-equiv="Content-Type"
 content="text/html; charset=ISO-8859-1">
  <title>SOAP 1.2 Part 3: One-Way MEP</title>
  <style type="text/css">
code           { font-family: monospace; }

div.constraint,
div.issue,
div.note,
div.notice     { margin-left: 2em; }

li p           { margin-top: 0.3em;
                 margin-bottom: 0.3em; }

div.exampleInner pre { margin-left: 1em;
                       margin-top: 0em; margin-bottom: 0em}
div.exampleOuter {border: 4px double gray;
                  margin: 0em; padding: 0em}
div.exampleInner { background-color: #d5dee3;
                   border-top-width: 4px;
                   border-top-style: double;
                   border-top-color: #d3d3d3;
                   border-bottom-width: 4px;
                   border-bottom-style: double;
                   border-bottom-color: #d3d3d3;
                   padding: 4px; margin: 0em }
div.exampleWrapper { margin: 4px }
div.exampleHeader { font-weight: bold;
                    margin: 4px}
  </style>
  <link rel="stylesheet" type="text/css"
 href="http://www.w3.org/StyleSheets/TR/base.css">
</head>
<body>
<div class="head">
<h1><a name="title" id="title">SOAP 1.2 Part 3: One-Way MEP</a></h1>
<h2><a name="w3c-doctype" id="w3c-doctype">Editors Copy $Date:
2006/03/30 09:53:43 $ 16 June 2006</a></h2>
<dl>
  <dt><a name="w3c-doctype" id="w3c-doctype">This version:</a></dt>
  <dd><a href="/">/</a></dd>
  <dt>Editors:</dt>
  <dd>David Orchard, BEA Systems</dd>
  <dd>David Hull, TIBCO Software Inc<br>
  </dd>
</dl>
<p class="copyright">&copy;&nbsp;2006&nbsp;<a href="http://www.w3.org/"><abbr
 title="World Wide Web Consortium">W3C</abbr></a><sup>&reg;</sup> (<a
 href="http://www.lcs.mit.edu/"><abbr
 title="Massachusetts Institute of Technology">MIT</abbr></a>, <a
 href="http://www.inria.fr/"><abbr
 title="Institut National de Recherche en Informatique et Automatique"
 lang="fr">INRIA</abbr></a>, <a href="http://www.keio.ac.jp/">Keio</a>),
All Rights Reserved. W3C <a
 href="http://www.w3.org/Consortium/Legal/ipr-notice-20000612#Legal_Disclaimer">liability</a>,
<a
 href="http://www.w3.org/Consortium/Legal/ipr-notice-20000612#W3C_Trademarks">trademark</a>,
<a
 href="http://www.w3.org/Consortium/Legal/copyright-documents-19990405">document
use</a>, and <a
 href="http://www.w3.org/Consortium/Legal/copyright-software-19980720">software
licensing</a> rules apply.</p>
</div>
<hr>
<div>
<h2><a name="abstract" id="abstract">Abstract</a></h2>
<p><a name="abstract" id="abstract">SOAP Version 1.2 Part 2 provides a
request-response MEP and a response-only MEP. This, the SOAP 1.2 Part
3, provides a one-way MEP.</a></p>
</div>
<div>
<h2><a name="status" id="status">Status of this Document</a></h2>
<p><a name="status" id="status"><strong>This document is an editors'
copy that has no official standing.</strong></a></p>
<p><a name="status" id="status"><em>This section describes the status
of this document at the time of its publication. Other documents may
supersede this document. The latest status of this document series is
maintained at the W3C.</em></a></p>
</div>
<div class="toc">
<h2><a name="contents" id="contents">Table of Contents</a></h2>
<p class="toc"><a name="contents" id="contents">1 </a><a href="#intro">Introduction</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;1.1 <a href="#notcon">Notational Conventions</a><br>
2 <a href="#singlereqmep">SOAP One-way Message Exchange Pattern</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;2.1 <a href="#mepname">SOAP Feature Name</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;2.2 <a href="#bindinfdesc">Description</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;2.3 <a href="#bindformdesc">Property
Description</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;2.4 <a href="#bindfaulthdn">Fault Handling</a><br>
3 <a href="#refs">References</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;3.1 <a href="#refs-norm">Normative References</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;3.2 <a href="#refs-inform">Informative
References</a><br>
</p>
<h3><a name="appendices" id="appendices">Appendix</a></h3>
<p class="toc"><a name="appendices" id="appendices">A </a><a
 href="#changelog">Change Log</a> (Non-Normative)<br>
</p>
</div>
<hr>
<div class="body">
<div class="div1">
<h2><a name="intro" id="intro">1 Introduction</a></h2>
<p><a name="intro" id="intro">SOAP Version 1.2 Part 2 provides a
request-response MEP and a response-only MEP. This, the SOAP 1.2 Part
3, provides a one-way MEP. </a></p>
<div class="div2">
<h3><a name="notcon" id="notcon">1.1 Notational Conventions</a></h3>
<p><a name="notcon" id="notcon">The keywords "MUST", "MUST NOT",
"REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT",
"RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be
interpreted as described in RFC 2119 </a><a href="#RFC2119">[RFC 2119]</a>.</p>
<p>With the exception of examples and sections explicitly marked as
"Non-Normative", all parts of this specification are normative.</p>
</div>
</div>
<div class="div1">
<h2><a name="singlereqmep" id="singlereqmep">2 SOAP One-way Message
Exchange Pattern</a></h2>
<p><a name="singlereqmep" id="singlereqmep">This section defines the
message exchange pattern (MEP) called "One-way". The description is an
abstract presentation of the operation of this MEP. It is not intended
to describe a real implementation or to suggest how a real
implementation should be structured.</a></p>
<div class="div2">
<h3><a name="mepname" id="mepname">2.1 SOAP Feature Name</a></h3>
<p><a name="mepname" id="mepname">This message exchange pattern is
identified by the URI (see SOAP 1.2 Part 1 </a><a href="#SOAP-PART1">[SOAP
Part 1]</a><a
 href="http://www.w3.org/TR/2003/REC-soap12-part1-20030624//#soapfeature">SOAP
Features</a>):</p>
<ul>
  <li>
    <p>"http://www.w3.org/2006/03/soap/mep/one-way/"</p>
  </li>
</ul>
</div>
<div class="div2">
<h3><a name="bindinfdesc" id="bindinfdesc">2.2 Description</a></h3>
<p><a name="bindinfdesc" id="bindinfdesc">The SOAP One-way MEP defines
properties for the exchange of a SOAP message.<br>
</a></p>
<p><a name="bindinfdesc" id="bindinfdesc">In an instance of this MEP, a
single sending SOAP node establishes a message consisting of a set of
properties as defined below and sends it in a binding-specific
way.&nbsp; A binding MUST define</a><br>
</p>
<ul>
  <li>A&nbsp; mechanism for sending nodes to send a message.</li>
  <li>A mapping from the ImmediateDestination property of the message
to zero or more receiving SOAP nodes.&nbsp; This mapping MAY vary from
instance to instance of the MEP.</li>
  <li>A mechanism for receiving nodes to be notified of receipt of a
message.<br>
  </li>
</ul>
In normal operation<br>
<ul>
  <li>Each receiving node is notified of receipt of the sent message
exactly once.<br>
  </li>
  <li>The properties of each received message are identical to the
properties of the sent message.</li>
  <li>Each receiving node processes the received message according to
the SOAP Processing Model (see SOAP 1.2 Part 1 <a
 href="soap12-part3-1.html#SOAP-PART1">[SOAP Part 1]</a><a
 href="http://www.w3.org/TR/2003/REC-soap12-part1-20030624//#procsoapmsgs">Processing
SOAP messages</a>). </li>
</ul>
In abnormal operation, any of the following may happen:<br>
<ul>
  <li>Nodes in the receiving set MAY fail to be notified of message
receipt or may be notified more than once.<br>
  </li>
  <li>Nodes in the receiving set MAY receive messages not identical to
the sent message.</li>
  <li>Nodes not in the receiving set MAY be notified of message
receipt, regardless of whether nodes in the receiving set have been
notified of receipt.</li>
  <li>The sending node and/or any of the reciving nodes MAY receive a
fault, regardless of whether nodes in the receiving net have been
notified of receipt.<br>
  </li>
</ul>
<ul>
  <li><a name="bindinfdesc" id="bindinfdesc"></a></li>
  <li><a name="bindinfdesc" id="bindinfdesc"></a></li>
</ul>
<p><a name="bindinfdesc" id="bindinfdesc">Bindings MAY define more
detailed behavior in the case of abnormal operation.</a>&nbsp; Bindings
MAY choose to support multiple instances of this MEP simultaneously.</p>
</div>
<div class="div2">
<h3><a name="bindformdesc" id="bindformdesc">2.3 Property Description</a></h3>
<p><a name="bindformdesc" id="bindformdesc">The One-way MEP defines the
properties described below.</a></p>
<table id="tabonewayprops" border="1">
  <caption>Property definitions for One-way MEP</caption><tbody>
    <tr>
      <th rowspan="1" colspan="1">Property Name</th>
      <th rowspan="1" colspan="1">Property Description</th>
      <th rowspan="1" colspan="1">Property Type</th>
    </tr>
    <tr>
      <td rowspan="1" colspan="1"><code>http://www.w3.org/2003/05/soap/mep/OutboundMessage</code></td>
      <td rowspan="1" colspan="1">An abstract structure that represents
the current outbound message in the message exchange. This abstracts
both SOAP Envelope and any other information structures that are
transferred along with the envelope.</td>
      <td rowspan="1" colspan="1">Not specified</td>
    </tr>
    <tr>
      <td rowspan="1" colspan="1"><code>http://www.w3.org/2003/05/soap/mep/ImmediateDestination</code></td>
      <td rowspan="1" colspan="1">The identifier of the immediate
destination of an outbound message.</td>
      <td rowspan="1" colspan="1">xs:anyURI</td>
    </tr>
    <tr>
      <td rowspan="1" colspan="1"><code>http://www.w3.org/2003/05/soap/mep/ImmediateSender</code></td>
      <td rowspan="1" colspan="1">The identifier of the immediate
sender of an inbound message.</td>
      <td rowspan="1" colspan="1">xs:anyURI</td>
    </tr>
  </tbody>
</table>
<p><a name="bindformdesc" id="bindformdesc">There may be other
properties related to the operation of the message exchange and are
processed according to their own feature specifications. </a></p>
</div>
<div class="div2">
<h3><a name="bindfaulthdn" id="bindfaulthdn">2.4 Fault Handling</a></h3>
<p><a name="bindfaulthdn" id="bindfaulthdn">This MEP makes no claims
about the disposition or handling of SOAP faults generated by the
sending SOAP node or the receiving SOAP nodes.</a></p>
</div>
</div>
<div class="div1">
<h2><a name="refs" id="refs">3 References</a></h2>
<div class="div2">
<h3><a name="refs-norm" id="refs-norm">3.1 Normative References</a></h3>
<dl>
  <dt class="label"><a name="SOAP-PART1" id="SOAP-PART1">SOAP Part 1</a></dt>
  <dd><a href="http://www.w3.org/TR/2003/REC-soap12-part1-20030624/">W3C
Proposed Recommendation "SOAP Version 1.2 Part 1: Messaging Framework",
Martin Gudgin, Marc Hadley, Noah Mendelsohn, Jean-Jacques Moreau,
Henrik Frystyk Nielsen, 24 June 2003</a> (See
http://www.w3.org/TR/2003/REC-soap12-part1-20030624/.)</dd>
  <dt class="label"><a name="SOAP-PART2" id="SOAP-PART2">SOAP Part 2</a></dt>
  <dd><a href="http://www.w3.org/TR/2003/REC-soap12-part2-20030624/">W3C
Proposed Recommendation "SOAP Version 1.2 Part 2: Adjuncts", Martin
Gudgin, Marc Hadley, Noah Mendelsohn, Jean-Jacques Moreau, Henrik
Frystyk Nielsen, 24 June 2003</a> (See
http://www.w3.org/TR/2003/REC-soap12-part2-20030624/.)</dd>
  <dt class="label"><a name="RFC2119" id="RFC2119">RFC 2119</a></dt>
  <dd><a href="http://www.ietf.org/rfc/rfc2119.txt">IETF "RFC 2119: Key
words for use in RFCs to Indicate Requirement Levels", S. Bradner,
March 1997.</a> (See http://www.ietf.org/rfc/rfc2119.txt.)</dd>
  <dt class="label"><a name="RFC2396" id="RFC2396">RFC 2396</a></dt>
  <dd><a href="http://www.ietf.org/rfc/rfc2396.txt">IETF "RFC 2396:
Uniform Resource Identifiers (URI): Generic Syntax", T. Berners-Lee, R.
Fielding, L. Masinter, August 1998.</a> (See
http://www.ietf.org/rfc/rfc2396.txt.)</dd>
</dl>
</div>
<div class="div2">
<h3><a name="refs-inform" id="refs-inform">3.2 Informative References</a></h3>
<dl>
  <dt class="label"><a name="SOAP-PART0" id="SOAP-PART0">SOAP Part 0</a></dt>
  <dd><a href="http://www.w3.org/TR/2003/REC-soap12-part0-20030624/">W3C
Proposed Recommendation "SOAP Version 1.2 Part 0: Primer", Nilo Mitra,
24 June 2003</a> (See
http://www.w3.org/TR/2003/REC-soap12-part0-20030624/.)</dd>
  <dt class="label"><a name="CommentArchive" id="CommentArchive">XMLP
Comments</a></dt>
  <dd><a href="http://lists.w3.org/Archives/Public/xmlp-comments/">XML
Protocol Comments Archive</a> (See
http://lists.w3.org/Archives/Public/xmlp-comments/.)</dd>
  <dt class="label"><a name="DiscussionArchive" id="DiscussionArchive">XMLP
Dist-App</a></dt>
  <dd><a href="http://lists.w3.org/Archives/Public/xml-dist-app/">XML
Protocol Discussion Archive</a> (See
http://lists.w3.org/Archives/Public/xml-dist-app/.)</dd>
  <dt class="label"><a name="XMLPCharter" id="XMLPCharter">XMLP Charter</a></dt>
  <dd><a href="http://www.w3.org/2000/09/XML-Protocol-Charter">XML
Protocol Charter</a> (See
http://www.w3.org/2000/09/XML-Protocol-Charter.)</dd>
  <dt class="label"><a name="RFC2045" id="RFC2045">RFC 2045</a></dt>
  <dd><a href="http://www.ietf.org/rfc/rfc2045.txt">IETF "RFC2045:
Multipurpose Internet Mail Extensions (MIME) Part One: Format of
Internet Message Bodies", N. Freed, N. Borenstein, November 1996.</a>
(See http://www.ietf.org/rfc/rfc2045.txt.)</dd>
  <dt class="label"><a name="RFC2026" id="RFC2026">RFC 2026</a></dt>
  <dd><a href="http://www.ietf.org/rfc/rfc2026.txt">IETF "RFC 2026: The
Internet Standards Process -- Revision 3", section 4.2.3, S. Bradner,
October 1996.</a> (See http://www.ietf.org/rfc/rfc2026.txt.)</dd>
</dl>
</div>
</div>
</div>
<div class="back">
<div class="div1">
<h2><a name="changelog" id="changelog">A Change Log (Non-Normative)</a></h2>
<table border="1">
  <caption>Changes</caption><thead><tr>
    <th rowspan="1" colspan="1">Who</th>
    <th rowspan="1" colspan="1">When</th>
    <th rowspan="1" colspan="1">What</th>
  </tr>
  </thead><tbody>
    <tr>
      <td rowspan="1" colspan="1">DBO</td>
      <td rowspan="1" colspan="1">20041208</td>
      <td rowspan="1" colspan="1">Initial Revision</td>
    </tr>
    <tr>
      <td rowspan="1" colspan="1">DBO</td>
      <td rowspan="1" colspan="1">20060330</td>
      <td rowspan="1" colspan="1">2nd Revision</td>
    </tr>
    <tr>
      <td rowspan="1" colspan="1">DBO</td>
      <td rowspan="1" colspan="1">20060530</td>
      <td rowspan="1" colspan="1">Adding sending and receiver MUSTs</td>
    </tr>
    <tr>
      <td style="vertical-align: top;">DMH<br>
      </td>
      <td style="vertical-align: top;">20060616<br>
      </td>
      <td style="vertical-align: top;">Clarified semantics.<br>
      </td>
    </tr>
  </tbody>
</table>
</div>
</div>
</body>
</html>