Re: RDF manipulation protocol?

On Sun, 14 Nov 1999, Will Sargent wrote:

> I have a problem I'm hoping someone help me with.  This may not be the right
> forum; if so, I apologize in advance.

No worries - You've found the right forum!

> I've been working on integrating bookmarks in Mozilla with a remote
> database, so that users can have collaborative bookmarking.  I was
> originally thinking of using serialized RDF as the protocol, but
> AFAIK, serialized RDF doesn't provide facilities for removing or
> modifying data -- there's no API for it.

Right. The specs only give us data structures right now...

> There are two strategies I can think of... one of them is to have little
> bundles of RDF I can use as commands, and have the server send back RDF
> acks... 

Seems a reasonable approach to me. And consistent with the discussion we
were having here earlier in the week concerning updates to aggregations of
RDF graphs.

The best articulated thing I've seen in this vein is Sergey's GINF work.

	http://www-diglib.stanford.edu/diglib/ginf/

In particular http://www-diglib.stanford.edu/diglib/ginf/WD/ginf-overview/
shows use of RDF models representing messages to/from networked services
of various kinds.


From a similar perspective, the 'Extensible Languages' note argues that
sending little message-bundles back and forth, using namespaces to draw on
multiple simultaneous vocabularies, is the way to go:


	http://www.w3.org/TR/NOTE-webarch-extlang
	Web Architecture: Extensible Languages 
	W3C Note 10 Feb 1998 
	Authors: 
	     Tim Berners-Lee <timbl@w3.org> W3C 
	     Dan Connolly <connolly@w3.org> W3C 

	[...]
Excerpt:
	Mixing vocabularies 

	When a message is sent across the Internet as part of a Web communications
	protocol, it is tempting as above to compare the
	message with a remote procedure call, and to adopt the characteristics of
	a procedure/method call from distributed OO systems.  A
	procedure call identifies the target object, one of a finite number of
	methods from the exported interface, and a set of typed
	parameters. 

	However, this analogy is not powerful enough.  A message should  be
	considered an expression and, if one takes an analogy with
	programming languages, the analogy should be with an expression or program
	rather than with a function call. [Or, if considered a
	function call, strictly, the parameters have to be extended to allow other
	nested function calls].  In this case, there may be many
	functions identified, in many interfaces.  In other words, don't think of
	an HTTP message or an HTML document as an RPC call, but
	rather as the transmission of a expression in some language. 



	or write my own simple protocol and just use RDF for describing new
> bookmark nodes.  I've gone with the second approach for now, but it strikes
> me that the last thing the world needs is another hack protocol, and I'd be
> interested in a better solution.

Feels like there are two pieces of work here: a protocol for transacting
with a remote (meta)data store and an RDF model for representing user
bookmarks (perhaps using Dublin Core elements? [1]). My current interest
lies more with the latter since some fairly cheesy shortcuts can (even
in current browsers) provide genuinely useful remote bookmarking
facilities... 

Dan



[1] http://purl.org/dc/

Received on Sunday, 14 November 1999 20:23:56 UTC