2790RE: [rest-discuss] Groove Web Services
- Nov 5, 2002Mark Baker wrote:
> Seairth Jacobs wrote:One of the big benefits that one should receive from taking a RESTful
> > It is just as RESTful to create ones own set of verbs that
> > actually provide the exact functionality needed.
> No it isn't. You've been here long enough to know that Seairth!
> 8-O With REST, you're constrained to using methods that you could
> use on anything. So "CREATE" isn't a REST method, because I
> don't know what it would mean to invoke that on a URI identifying
> a stock quote.
approach is purification and simplification of an otherwise ugly situation
that will only get uglier. If Groove uses 'Create', then someone else will
use 'myCreate', then someone else will use hungarian notiation with
'urilstCreate', and then in a few years we circle back to the same recursive
scope creep scenario that led to the creation of SOAP in the first place.
People agreeing on HTTP and its verbs is a key success factor of REST.
> This is a severe constraint on *form*, but does not in any wayI went back and read the entire article , written by Jon Udell at
> constrain *function*. i.e. every problem has a solution with a
> system built with this constraint in mind.
InfoWorld. I can't tell if my problem comes from what I perceive as a
writer trying to sound smart, Groove trying to cash in on hype, or from
those who created the notion of RESTful SOAP trying to start a riot.
Udell says GWS is a textbook example of "RESTful SOAP" - is that good or
bad? To elaborate on what that means, he references the SOAP 1.2 working
draft, saying that URIs should be used as resource identifiers. DUH!! Then
comes this paragraph:
For example, the root of GWS is a SOAP service with an address
like http://localhost:9080/GWS/Groove/1.0/Accounts. Since a
Groove account is a container of identities, a Read operation
on this resource produces an XML document that enumerates them.
Each identity includes an element like
/GWS/Groove/1.0/Spaces/grooveIdentity/123...xyz -- that is, the
URI of the SOAP service that enumerates the shared spaces for
that identity. Traversal of spaces, tools, and data proceeds
in a similar fashion. It's all organized as a web of linked
XML documents controlled by a handful of verbs such as Create,
Read, Update, and Delete.
First (if I was claiming to be RESTful), I would replace every instance of
'SOAP service' with 'resource'. Then, I would replace 'Create, Read,
Update, and Delete' with 'PUT, GET, POST, and DELETE'. To clarify my point,
I might reword the last sentence to say "...web of linked resources accessed
by a handful of verbs that allow you to create, read, update, and delete
them." I would then elaborate on the connection between a RESTful style and
HTTP and make sure I reference Fielding's thesis.
This e-mail may contain confidential and/or privileged information. If you
are not the intended recipient (or have received this e-mail in error)
please notify the sender immediately and destroy this e-mail. Any
unauthorized copying, disclosure or distribution of the material in this
e-mail is strictly forbidden. TradeWeb reserves the right to monitor all
e-mail communications through its networks.
- << Previous post in topic Next post in topic >>