- From: <noah_mendelsohn@us.ibm.com>
- Date: Tue, 4 Feb 2003 11:12:41 -0500
- To: "David Orchard" <dorchard@bea.com>
- Cc: "'Jean-Jacques Moreau'" <jean-jacques.moreau@crf.canon.fr>, xml-dist-app@w3.org
No, I think this still misses the distinction. Specifically, the data that moves from point to point in SOAP is, in general, more than what is within the scope of the application/soap+xml content type. It includes a potentially unbounded set of feature-specific data that is represented outside of that media type. One simple example is the so-called Web Method (GET/PUT/POST), which the HTTP binding represents in the obvious http-specific manner, but other bindings (MQSeries, perhaps?) will represent using some other transport-specific means. I find the term "SOAP Message" to be about right for the collection of state >that is modelled by SOAP above the binding-specific layer< and that moves from one node to another per the SOAP architecture. I think that is distinct from the envelope, which is indeed the part of the (transmission unit formerly known as message) that is indeed in media type application/soap+xml. Using my terminology, my impression of the options wrt the issue that Gudge has raised can be explained as: * Traditional (Noah): The "message" consists of all the SOAP-modeled data, including not just the envelope but potentially other properties defined by features. One such feature is the attachment feature, which defines properties for the parts [1]. The representation of such properties is at the discretion of the feature and the protocol binding. For example, DIME provides a concrete implementation of the attachment feature. In general, parts (other than the envelope itself) are modeled as being external to the envelope. * Infoset-based (Gudge): There are two infosets for each message related by a binding-specific transform (not necessarily an XSLT transform.) By definition, one of these includes in its XML Infoset some reprsentation of every piece of data that would have been in the "message", as I have defined it above. For example, a part which would otherwise be binary might be modeled in characters using a schema type of hexBinary. This first infoset provides unity for the processing model, but is often too verbose for efficient processing in memory or on the wire. The responsibility of the binding is to transmit this infoset, but it is given hints about problematic content such as that which is of hexBinary type. The binding can use such hints to provide optimized representations on the wire (carrying the binary as true binary). A transform can be used to create a second SOAP envelope which has the binary information replaced with pointers to the protocol-specific serialization (this is the second infoset listed above). The binding can, if desired, transmit this second infoset in the same manner as a traditional SOAP implementation would transmit the envelope. Presumably, not just the wire representation but also the in-memory representations of large binary objects can be optimized. Gudge: is this explanation correct? I still have many doubts about this proposal, but I think it's always healthy if one person can explain another's proposal. Thanks. [1] http://www.w3.org/TR/2002/WD-soap12-af-20020814/ ------------------------------------------------------------------ Noah Mendelsohn Voice: 1-617-693-4036 IBM Corporation Fax: 1-617-693-8676 One Rogers Street Cambridge, MA 02142 ------------------------------------------------------------------ "David Orchard" <dorchard@bea.com> 02/04/2003 10:18 AM To: "'Jean-Jacques Moreau'" <jean-jacques.moreau@crf.canon.fr>, <noah_mendelsohn@us.ibm.com> cc: <xml-dist-app@w3.org> Subject: RE: What is a SOAP Message Maybe a good word for the bag of bits that some are calling a message would be better served being called a representation? This would show a clean relationship between the web and web services at the messaging level. The TAG's work [1] isn't very far along, but it shows a start. And if we don't a call a "message" a representation, then we probably ought to provide some explanation on how a message and a representation relate. It might be as simple as "A SOAP Message is defined as a representation that contains a SOAP envelope, binding specific additional data, and has the application/soap+xml content type". Cheers, Dave http://www.w3.org/TR/webarch/#representations > -----Original Message----- > From: xml-dist-app-request@w3.org > [mailto:xml-dist-app-request@w3.org]On > Behalf Of Jean-Jacques Moreau > Sent: Tuesday, February 04, 2003 12:30 AM > To: noah_mendelsohn@us.ibm.com > Cc: xml-dist-app@w3.org > Subject: Re: What is a SOAP Message > > > > I also make the same distinction between messages and envelopes. > I have seen the confusion made in other groups as well. So, > > +1 to your suggested clarification. > > Jean-Jacques. > > noah_mendelsohn@us.ibm.com wrote: > > During today's AFTF telcon we got into a discussion as to > exactly what a > > SOAP Message is. Gudge pointed out that in several places > in part 1 it > > says or strongly implies that a SOAP Message >is< an XML > Envelope Infoset. > > I had always assumed we were clear that the "term message" > refers not just > > to the envelope, but to a set of information which includes > at minimum the > > envelope, but often other information as well (e.g., the destination > > address, WebMethod, and Action tend to be sent out of band > in SOAP http). > > [...] > > > > I think it's useful and appropriate to separate the term > "message" from > > "envelope". [...] I think we should consider clarifying our > terminology. >
Received on Tuesday, 4 February 2003 11:16:03 UTC