W3C home > Mailing lists > Public > www-archive@w3.org > September 2003

Re: Few questions about REST

From: Mark Baker <distobj@acm.org>
Date: Thu, 18 Sep 2003 13:19:25 -0400
To: Siarhei Biarozkin <sberyozkin@zandar.com>
Cc: www-archive@w3.org
Message-ID: <20030918131925.S15635@www.markbaker.ca>

On Thu, Sep 18, 2003 at 12:48:46PM -0400, Siarhei Biarozkin wrote:
> > > Can you give a simple example of an unRESTful use of doc-lit SOAP ?
> > http://www.pocketsoap.com/weblog/SoapInterop/r3/doclit.html
> >
> > There, "echoPerson" and "echoDocument" are the operations, which are not
> > uniform.
> 
> But they are just WSDL tokens which help with the code generation.They
> inform a client what needs to be done in order to get Person or Document
> representation. For ex, echoPerson could translate into the uniform
> operation POST  like this :
> 
> POST http://data.org
> application/xml+soap; action="Person"
> 
> which can be considered being equivalent to http://data.org/Person
> The control attribute 'action' combines with a containing resource
> http://data.org. For a server ir means (irrespectively whether 'action' is
> present or not) that echoPerson() operation must be invoked underneath, but
> it's an implementation detail.
> 
> Perhaps, for a doc-lit SOAP, an "action" attribute could be renamed to
> "resource" ? Also, may be instead of being specified as an attribute of the
> mime type, it could be appended by a tool to a POSTed URI ? Additionally, it
> could be recommended that in WSDL it's should be set to a 'noun' value, for
> ex to 'Person' instead of, say, 'echoClient'.
> 
> It's interesting that while a doc-lit SOAP service is early bound (I mean
> that a client proxies are generated upfront, etc), it still allows for an
> identification of resources, and as such, for their visibility.
> 
> What do you think ?

Almost, but not quite 8-).  What you're missing is that POST - even when
extended as you describe - cannot RESTfully be used to have any insight
into what happens after the data has been submitted.  "echo" semantics
are such that there exists an expectation that what is submitted, is
returned.  It's that expectation which is not RESTful.

> > Can you point me to one that you think is RESTful?
> http://www.pocketsoap.com/weblog/SoapInterop/r3/doclit.html :-)

Hah! 8-)

Here's one that I think is RESTful;

http://www.w3.org/TR/soap12-part0/#Example

> > > Rpc/Encoded use of SOAP can't meet (by design) any of REST
> > > constraints, can it ?
> > If the encoded operation is uniform, then it would meet the uniform
> > interface constraint.
> 
> I'm not sure I understand/agree. Encoded operation could be uniform only in
> the scope of a given service and it'll be tunneled as part of a higher level
> uniform operation POST.
> It seems that a uniform encoded operation will look like an encoded document
> :-) with a common top element.

Hmm, are you clear what "uniform" means?  It means that it's meaningful
to all resources.

But you snipped my comment about TCP.  Using SOAP over TCP, this would
be RESTful (assume it uses the SOAP encoding);

<e:envelope xmlns=...
  <e:body>
    <m:post>
      <foobar:data>lsdfiasdfasdf</foobar:data>
    </m:post>
  </e:body>
</e:envelope>

Mark.
-- 
Mark Baker.   Ottawa, Ontario, CANADA.        http://www.markbaker.ca
Received on Thursday, 18 September 2003 13:15:46 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Wednesday, 7 November 2012 14:17:36 GMT