Re: Semantic Web needed for RESTful Web services? (RE: Binding)

On Tue, Jan 07, 2003 at 06:18:34AM -0700, Champion, Mike wrote:
> In your last couple of posts you've mentioned Semantic Web technologies more
> then they have come up recently, Mark.

I try to avoid mentioning them where possible.  I'm familiar with the
knee-jerk reaction its mention usually triggers amoungst many Web
services proponents; "Merge the graphs!" 8-)

>  I'm not trying to re-explore our
> OTHER favorite rathole (shudder!), just trying to clarify this "uniform
> interface" business.  I *think* you're saying that the RESTful interfaces
> allow a machine to store and retrieve data  without a priori agreement on
> its syntax/semantics,

Right, though more than just "store and retrieve" is possible.

> and then some combination of XML  and SW technologies
> can be used to work with the syntax and semantics.  OK so far?

I'm a bit fuzzy on what you mean by that last bit, but based on some
comments below I'm confident you get it.

> > > However, REST does not aide in the ability for one to 
> > deploy a service 
> > > that has a prayer of being
> > > used by a consumer that has not been written by the author 
> > of the service. 
> > 
> > Whoa, I see it as just the opposite.
> 
> Could you explain why? ... cutting and pasting from whichever previous post
> you probably made the point in?  This thread is simply too long for me to
> keep track of!  The only way I can see "the opposite" from your arguments is
> by reference to semantic web techniques.  

It's just the late binding slash low coordination cost issue again,
mostly due to the uniform interface, rather than the Semantic Web.

Sometimes I think we're missing the forest for the trees in this
discussion.  You can always go back to think about how the current Web
works to try to understand some point about REST.  That's how I learned;
I played the "what if I was a Web client automata" game.

So in this case, deployed code such as wget (a handy *nix command line
tool for invoking GET, for those not familiar with it) can get data from
Web sites that didn't exist when it was created.  That seems totally
obvious and trivial, yet I've heard Ron Schmelzer of Zapthink say that
in 5 years or so, Web services may get this advanced capability!

However, while getting the data isn't the whole story, it's an important
part of it.  Once you've agreed on that, you can bootstrap new stuff
through that data ... which has its own problems, but those are also
manageable.

> > > Was I supposed to be doing an 
> > > HTTP GET on these URI? How did I know they were URI to begin with?
> > 
> > These are all things an application has to deal with.  REST isn't
> > a totally free ride. 8-)  Luckily what those things mean are fairly
> > well defined in RFC 2616. 
> 
> OK, I think I get another glimmer here ... you're saying that the semantics
> of HTTP itself can be used to constrain what a client application can do
> with the data, and that there is a lot of unexploited potential here that
> doesn't require the semantic web?

Bingo.  Exactly.

And 10 bonus points for using the word "constrain"! 8-)

>  OK, I follow for hypermedia-ish
> operations like redirects, but those seem like corner cases in this
> discussion.  

I'd say that it's only a corner case if your data can't practically be
converted to hypermedia (such as in a telnet session).  Otherwise it's
very useful.  For example, in my Hypermedia Workflow note[1], I
described how to use the 300 response code to implement a workflow
"split".

You might also use 301 if you sold something.  For example, if I sold my
house to somebody else, and they created a URI for it, I might do a 301
redirect from my URI to theirs, telling HTTP agents that I am no longer
the authority for that resource.

> > > I think that that future is a long, long ways off. 
> > 
> > TimBL thinks two years.  I think four.
> 
> Two, four, eight, or sixteen years, whatever.  I was under the impression
> all these long months of this permathread that you thought that RESTful Web
> services were ready for prime time now!  If the argument is that the Web
> won't need humans someday, somewhere over the rainbow, I have no problem
> with the logic.  (I'll believe it when I see it, but I do understand the
> logic).

Sorry if I wasn't clear.  I was referring to the Semantic Web.  I still
consider non-Semantic Web RESTful Web services to be superior to
vanilla Web services.

> > I know Mike said no appeals to authority, but I've known Roy Fielding
> > for a few years, and he's the smartest guy I know on planet Earth.  He
> > says REST is just fine for automata.  Are you *sure* he's wrong?
> 
> Hmmm.  I get the impression from the TAG list that Roy is not the world's
> biggest fan of the Semantic Web.  Something just doesn't add up here!

I don't think he's made it clear in public one way or the other.  He has
said that RDF needs to do some things differently (using fragment
identifiers being the biggie).  I see that as constructive criticism.
I haven't talked to about it though, so I don't know for sure.

> Anyway, all Roy said on this list recently is that REST is well suited to
> automata such as spiders; I've yet to see a definitive statement from Roy
> that REST is all you need for Web services use cases, without some a priori
> agremeements among humans about the syntax and semantics of the
> representations being passed around.  

Hmm, I didn't read it that way.  He used MOMspider as an example, but
I'm certain that his statement referred to automata in general, since he
refuted Chris' assertion that said;

"REST is based on the premise that the agent receiving the data has 
but one responsibility; to render it for (typically) human consumption."

Perhaps we could ask him?  I won't, at your no-appeals-to-authority
request, but he's a very accomodating guy.

> Perhaps we can ALL agree that if either a) humans have made a priori
> agreements on the syntax and semantics of the representations being passed
> around or b) Semantic Web technologies can be used to describe the semantics
> of the XML representations being passed around, then RESTful Web services
> are quite possible and practical.  

Sure, I can agree to that.

Wow, I never expected to get any mention of the Semantic Web in any
(proposed) agreement text! 8-)

> [Is this faint hope for closure on this issue doomed to be shattered?  Be 
> still, my beating heart :-) ]

See, now you've gone and spoiled my fun.  What am I going to do all
day, if I'm not sending www-ws-arch emails? I guess I'll have to go find
some work. 8-)

 [1] http://www.markbaker.ca/2002/12/HypermediaWorkflow/

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

Received on Tuesday, 7 January 2003 11:21:47 UTC