23 September 2004

RDFlets and Kowari Descriptors

Saw an interesting post yesterday on the DAWG list from Alberto Reggiori at @semantics. He talks about a technology they've developed on top of RDFStore called RDFlets. Very cool... At a first glance, these look very similar to our descriptors, which are XSL stylesheets that allow the execution of iTQL queries, getting the results in XML, and the massaging of the results using XSLT. When Keith and I initially designed them a few years back, Simon came to us with the idea of applying a transformation to an RDF datastore, in an analogous manner to the way transformations are applied to XML files. This is the way I like to think of them, although others like to explain them as stored procedures. And of course you can pass whatever parameters to them you like, and use them in whatever way XSL allows variables to be used. As the documentation states, descriptors really consist of:
  • Extensions to XSL: 1) a <query> tag to issue iTQL commands from within XSL stylesheets; and 2) a lt;descriptor> tag to allow one descriptor to call another;
  • Java objects that invoke descriptors and return their results;
  • Java Servlets that invoke descriptors using HTTP;
  • URL addressable SOAP endpoints.
So, how do RDFlets and descriptors stack up (points stolen from K...)?
  • RDFlets don't seem to be integrated into XSL so they require a container of sorts, i.e Apache using SSIs;
  • RDFlets don't allow for the cascading of queries like descriptors do (unless SSIs give you this for free). So say we're querying metadata on a document, you can use a top level descriptor to get the top most document properties, then call off to other specialised descriptors for each of those properties. This lets you get optional properties back very nicely.
  • Descriptors expose their interface (parameters passed in and out) in a queriable fashion, as it's defined in RDF. This lets you do cool things like "show me all the descriptors that work against RSS feeds and return XHTML".
Of course no technology is perfect, and descriptors certainly have their faults, not least of which is trying to explain to people what the hell they are...

0 Comments:

Post a Comment

<< Home