The Trouble With Triples?

by Peter Saint-Andre

2003-08-21

Diz links to a apologia for RDF by Edd Dumbill, who in turns links to What is RDF? by Tim Bray. None of these three link to the skeptic's view, best expressed by Cory Doctorow in a rant entitled metacrap. RDF uses XML syntax, but is built around the notion of "triples", which should be familiar from logic class (you did take logic, didn't you?): "property P of resource R has value V" (or "entity E has a dimension D whose value is V"). Examples: "the author of JEP-0045 is stpeter", "the blog-URL of stpeter is http://stpeter.im/journal/", "one friend of stpeter is dizzyd". We can often express these in terms of relationships: "stpeter authored JEP-0045", "dizzyd knows stpeter" (should be familiar from the foaf:knows element). In RDF, every resource (or entity, if you prefer that terminology) can be addressed as a URI (HTTP address, mailto, JabberID, what have you). And a value can be (but need not be) a resource. It's the property that captures the relationship. So if you can think in terms of relating a resource to a property by means of a specific value, you're halfway there.

But not all the way. RDF provides a model, but we still need to define the properties and relationships. That's where specific vocabularies like FOAF come in. While there are some missing pieces in the FOAF story, those pieces are being defined and refined over time, which I think will result in a fairly complete language for defining meta-data about people, entities, and their various relationships on the network.

One of the big questions is whether Doctorow's skepticism is warranted. Both Doctorow and Bray seem to be thinking mainly about a web of documents. Doctorow rightly claims that many people are too lazy to define metadata about their web pages, while Bray seems overly pessimistic regarding the ability of brute-force searching (his article was written before Google) and overly optimistic regarding the feasibility of spreading metadata throughout the document web. But the document web is not the whole network. In particular, FOAF concentrates on something new on the network: finding not information but people. Lo and behold, Jabber is mainly focused on people, too. And one thing we've been missing on the Jabber network since day one is a triumphant way to find people (and chatrooms, news feeds, pubsub nodes, etc.). Imagine that you create a Jabber account, provide some information about yourself (or upload an existing FOAF file), including your interests as well as URLs or mailtos for some friends -- and immediately you receive invitations to a chatroom or two, subscription requests from friends who've been waiting for you to create an account, notification of news feeds of interest, and the like -- that is the way we'll truly build a Jabber web.


Peter Saint-Andre > Journal