Re: REST and agents

On Wed, Jan 08, 2003 at 10:12:12AM -0800, Francis McCabe wrote:
> However, in the spirit of trying to help I would like to draw a 
> comparison between what I understand of this debate is and a similar 
> debate going on in a different arena.

And an excellent comparison it is!

> 1. Like the GET, FIPA ACL defines some standard verbs at the top-level. 
> The two most important are INFORM and REQUEST. GET is sort of analogous 
> to REQUEST and INFORM is sort of analogous to POST.

Yes, they sound quite similar, which shouldn't really be a surprise
since both the agents & Web communities start from a similar place
with respect to low interaction/coordination costs, i.e. when one
agent meets another, they both know that they can invoke REQUEST on
each other.

> Most importantly, as with HTTP/HTML, FIPA ACL expects the `meat' of the 
> message to be encoded in a propositional content.

Right.

> So, for example, to get a stock quote, you might REQUEST the value of 
> IBM's stock quote. The `value of IBM's stock quote' is the 
> propositional content and the REQUEST communicates your intention. With 
> a powerful enough language for expressing the propositional content you 
> can do whatever you want; in a way that's exactly analogous to 
> HTTP/HTML for browsers.
> 
> It should be noted that although FIPA has tried to be agnostic on the 
> form of the propositional content I do not believe that that position 
> is tenable -- for the same reason that HTTP without HTML is pretty 
> useless.

Absolutely not!!  HTTP doesn't need HTML.  They are completely
independant specifications.

> In the context of REST-style Web services, this would amount 
> to having a standard for GET but no standard for the form of the 
> response. I think that this is at the heart of 90% of the flak directed 
> at Mark: without such a standard just having GET will get you not very 
> far. (He of course disagrees)

Having GET will get you as far as having REQUEST, and (probably -
without knowing the details) no further.

> 2. Suppose that one goes along with GET for a little while? Let us see 
> what benefits there might be? I would say that (assuming that you also 
> fix a few other issues) you get some additional support for automation. 
> Having standard ways of expressing top-level verbs will help, and 
> certainly not hinder, many of the potential uses of Web services. Its 
> hard to quantify this of course; and I think that most of the benefits 
> evaporate unless ...
>
> 3. you also have a standard way of encoding the `propositional 
> content'. I.e., an analogue of HTML but for Web services. I.e., such a 
> content language would allow Web service providers to express their 
> specific semantics in a common notation that all Web service clients 
> would be expected to `understand' in a hard-wired kind of a way.
> 
> This is not the same as XML, SOAP or even WSDL, but something more 
> powerful.

Absolutely agreed.

> Because, in a truly RESTful way you would have to be able to 
> communicate actions as well as data.

No.  You'd just use whatever form of propositional content you wanted,
and return it in response to GET.  I don't know much about FIPA at all,
but I don't see any reason why you couldn't use your form of
propositional content in this manner.

> Unfortunately it doesn't look like anyone is seriously pursuing such an 
> idea.

Hmm.  What you've described is the Semantic Web project; they're
just focusing on RDF because HTTP is already done.

MB
-- 
Mark Baker.   Ottawa, Ontario, CANADA.        http://www.markbaker.ca
Web architecture consulting, technical reports, evaluation & analysis

Received on Thursday, 9 January 2003 10:02:42 UTC