W3C home > Mailing lists > Public > xml-dist-app@w3.org > February 2003

RE: What is a SOAP Message

From: Noah Mendelsohn/Cambridge/IBM <noah_mendelsohn@us.ibm.com>
Date: Wed, 12 Feb 2003 16:43:42 -0500
To: "David Orchard" <dorchard@bea.com>
Cc: "'Mark Baker'" <distobj@acm.org>, xml-dist-app@w3.org
Message-ID: <OF785AA155.A7C93FF3-ON85256CCB.00601375@lotus.com>

I'm not so sure I see SOAP as being always REST and representations. 
Certainly we have gone a long way to make it possible to use SOAP in that 
manner, and I believe that such usage should be encouraged wherever 
practical.  Still, I believe that use of REST is optional, as is use of 
HTTP.  I think I'm correct in saying that the term "representation" is 
best used in the context of REST. 

Consider a binding of SOAP to some transport such as MQ series.  That 
binding may support the WebMethod feature, and hence operations such as 
GET and POST, but it need not.    I don't see anything in SOAP that 
requires all such uses to map to representations, or even to naming 
destinations with URIs (though that is encouraged with a SHOULD, as I 
recall...I'm disconnected at the moment and can't easily check the text.)

SOAP can be used for many levels of messaging.  It could be used as a 
structured replacement for or enhancement to UDP, for example.  Of course, 
at some trivial level one can map every conceivable message to something 
like REST.  After all, maybe even an individual IP packet can be viewed as 
updating the state of some resource at its destination, but we don't 
conventionally view IP or UDP that way. 

So, I think that terms like "representation" are best used in the 
specific, admittedly common case where SOAP is used with a binding that 
supports the WebMethod feature, and hence REST semantics.   I don't see 
how every SOAP message is by definition carrying a representation of 
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>
Sent by: xml-dist-app-request@w3.org
02/10/2003 01:11 PM

        To:     "'Mark Baker'" <distobj@acm.org>
        cc:     <xml-dist-app@w3.org>, (bcc: Noah Mendelsohn/Cambridge/IBM)
        Subject:        RE: What is a SOAP Message

I believe that your counter example is still a representation.  It's 
a representation of a request. Same way that form data encoded into a POST
is a representation of the form.

In my mind, the web is about exchanging messages.  In those messages are
representations and message metadata - and that representations consist of
representation data and metadata.  In typical web usage, the message
metadata and representation metadata are HTTP Headers.

Even RPC-style SOAP messages are representations (the allegedly "bad" SOAP
POST examples).  Therefore there is a direct and easily describable
relationship between SOAP and the Web.  Something like:
- SOAP Messages are Web Messages, with content-type soap+xml and related
processing model.  Separately, this is an additional constraint upon the 
architecture.  Probably some motivation about what properties are achieved
by this would be helpful in the ws-arch document.
- SOAP Messages contain representations.  Where I get a little fuzzy is 
relationship of the envelope to the representation.  It seems to me that a
SOAP representation is an envelope + some stuff outside the envelope.
Indeed the content-type defines more than just the envelope.

The point being, the SOAP architecture fits very well into the web
architecture, once one clearly defines the relationship between these 


> -----Original Message-----
> From: xml-dist-app-request@w3.org
> [mailto:xml-dist-app-request@w3.org]On
> Behalf Of Mark Baker
> Sent: Tuesday, February 04, 2003 8:39 PM
> To: David Orchard
> Cc: xml-dist-app@w3.org
> Subject: Re: What is a SOAP Message
> +1 to Noah's last message, but I also wanted to respond to Dave's
> questions ...
> On Tue, Feb 04, 2003 at 07:08:09PM -0800, David Orchard wrote:
> > woah, that seems a bit extreme.
> >
> > Does that mean if I have a method in an HTML form - like
> GetStockQuote :-) -
> > that the HTML result isn't a representation as well?
> No, response messages of any kind are almost always representations,
> independant of the form of request message.
> - getStockQuote("SUNW") returns a representation
> - GET /foo returns a representation
> As an example of what it means to return a non-representation, imagine
> sending a request, and getting a response that was really another
> request that the protocol said you had to treat as a request, not just
> opaque data.
> > So dereferencing URIs can result in representations and
> non-representations?
> Just representations.
> MB
> --
> Mark Baker.   Ottawa, Ontario, CANADA.        http://www.markbaker.ca
> Web architecture consulting, technical reports, evaluation & analysis
Received on Wednesday, 12 February 2003 16:47:00 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 6 January 2015 22:01:22 UTC