- From: Mark Baker <distobj@acm.org>
- Date: Mon, 15 Sep 2003 23:06:56 -0400
- To: Sergey Beryozkin <sberyozkin@zandar.com>
- Cc: www-archive@w3.org
On Mon, Sep 15, 2003 at 01:15:35PM -0400, Sergey Beryozkin wrote: > > > Can we consider doc-lit SOAP as being "mostly RESTful" ? > > > > In general, I don't think so. Resource identification and the uniform > > interface are absolutely core to REST. If the interface were "very > > general", without being strictly "uniform" (e.g. "PROPFIND", or > > "SEARCH"), but resources were identified, then I would answer "yes". > > For example, the same way as PROPFIND would be used to retrieve a property > of some identified resource and possibly create it if it's not available, > setting it to some initial value passed in a request's body ? In other > words, using PROPFIND would not be trictly "iniform" in that it'd be used > for not only retrieving a property, the same way as doc-lit SOAP sometimes > uses POST for retrieving the representation. No, PROPFIND isn't strictly uniform because it doesn't make sense for all objects; it only makes sense on properties. Think of REST's "uniform interface", as the interface that would be exposed by the root object in a hierarchy, such as java.lang.Object. You wouldn't put getStockQuote() on it, right? > > But if we're talking about very specific methods like "getInvoice", > > then I'd have to answer "No". > Do you refer to the fact that a doc-lit SOAP, while not passing method > names, can still be used to "getInvoice" with a message body being empty and > SOAPAction hinting to a handler that a getInvoice() should be invoked ? No, just what I said above. > I thought you agreed in an earlier message that if a control parameter > (SOAPAction or application/xml+soap action attribute) is a URI then it's > semantically equivalent to a case when such a control parameter is passed > within a resource URI. A resource then could still be identifiable. For > example, 1 is a (relative) URI to a subordinate resource : > > POST mainResource/1 > > and > > POST mainResource > application/xml+soap; action=1 > > seem to be equivalent, especially due to the fact that > "application/xml+soap" is a registered mime type and it might be easier for > generic intermediaries to understand that it's mainResource/1 which is > identified. > Do you agree ? Yes. When the out-of-band information (e.g. "action=1") is *identifying* information, then we're in synch. It's when the out of band information defines the interface semantics that things go wrong, because it messes with the contract. For example, a successful response now means something different; the success refers to the action, rather than to the simple submission of data for processing. > So when you said that "doc-lit SOAP is RESTful" what did you mean by that ? Did I say that? It *can* be, but 99.99% of people still put a method in the body. By definition, that's unRESTful. I think I may have said that the RESTful use of SOAP looks like doc/lit, but where there's no method in the body. i.e. where the document is just state. > I'll try to understand better what you said with respect to late-binding, > and then I'll ask more questions :-) Fire away! Mark. -- Mark Baker. Ottawa, Ontario, CANADA. http://www.markbaker.ca
Received on Monday, 15 September 2003 23:03:21 UTC