Re: REST and agents

Mark Baker <[email protected]>
Newsgroups gmane.comp.web.services.ws-arch
Message-ID <[email protected]>
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
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.