Re: SOAP & REST

Hi Stuart,

> > The difference is that in the former form, a user doesn't know whether
>                                                ^^^^person, browser or
> program?

All of the above.  The URI is opaque.  In the absence of other
information (i.e. before invoking GET), given only the URI, nobody knows
what it does.

> > the operation being performed is multiplication or division.
> 
> Hmmm... if I were using it to calculate my taxes that would seem like a bad
> thing to me.

But you wouldn't use just any URI that you found on a napkin to do
that job.  You'd use one from some entity you trusted, that when you
invoked GET on it, described to your satisfaction that this service
was a multiplier.  Machines can work exactly the same way, though
obviously they'd need a machine processable assertion of the fact that
the service was a multiplier, returned on the GET.

> > In the latter form, the client is required to specify the desired
> > operation.
> 
> I find this a little perplexing... on one level these are just large
> 'opague' strings.

In the former URI, the string "multiply" is opaque to the client.  In the
latter URI, it is not (see below), modulo the hidden form field kludge I
mentioned, where the server specifies it as a sort of "callback method" -
but the *server* specifies it, not the client.

> You seem to be suggesting that in one case a "client" needs to "know" what
> arithmetic operation is "being performed" and in the other case it doesn't.

No, not at all.  Obviously, in both cases you need to know that
multiplication is occuring.  It's *how* this is known that is
accomplished differently in hypertext and RPC.

> What I don't understand here is how it can be argued that the sequence of
> characters 'm', 'u', 'l', 't', 'i', 'p','l' and 'e'  has any more or less
> significance to the client depending on whether it is preceded by a '/' and
> followed by a '?' than when it is preceded by the character sequence
> '/','?','o','p','e','r','a','t','i','o','n', '=' and '"' and followed by '"'
> and '+'. 

See the Opacity axiom, specifically this sentence;

  "Query strings are clearly not opaque to the client."

MB
-- 
Mark Baker, Chief Science Officer, Planetfred, Inc.
Ottawa, Ontario, CANADA.      mbaker@planetfred.com
http://www.markbaker.ca   http://www.planetfred.com

Received on Thursday, 7 February 2002 10:34:42 UTC