W3C home > Mailing lists > Public > www-rdf-interest@w3.org > August 2000

Re: Jena - A Java API for RDF

From: Dan Brickley <Daniel.Brickley@bristol.ac.uk>
Date: Mon, 28 Aug 2000 17:09:20 +0100 (BST)
To: "McBride, Brian" <bwm@hplb.hpl.hp.com>
cc: "RDF Interest (E-mail)" <www-rdf-interest@w3.org>
Message-ID: <Pine.GHP.4.21.0008281644230.28176-100000@mail.ilrt.bris.ac.uk>


Nice work Brian :-)

(Yet another bristol RDF implementation -- must be something in the
water!)

I like the way you've included examples to help illustrate the API
usability issues. RDF discussion all too easily drifts into the
abstract, so having concrete sample application code is useful
here. 

The 'node-centric' coding style facilitied by Jena is intriguing. I like
being able to write things like:

   person.getProperty(H.ratings)
              .getProperty(RDF.li(1))
              .getProperty(RDF.value).set(r+0.1);
or...

   Resource rating =
              model.createResource()
                   .addProperty(RDF.type, H.Rating)
                   .addProperty(RDF.value, 0.75)
                   .addProperty(H.about,
                                model.createResource("uri for album",
                                                       X.Work)); 


I've not rummaged enough in your API, but I'm curious as to how this
interacts with another nice property of RDF, ie. aggregation of multiple
RDF graphs/models. For eg., you might imagine a Java application that
had multiple graph/model objects; calling methods on a node that is
mentioned in several such data structures would presumably only interact
with data from the model that owned that node. I'm thinking out loud a
little but my first reaction is that it would be good to have both
options somehow, eg. to offer application authors some control over the
aggregate of RDF graphs that were currently 'in effect'. 

Backing up from the detail a bit, I'm pleased you've posted this as it's
very timely now Art is looking at a new W3C bundling of the SiRPAC code. 
Sergey's done some excellent work with SiRPAC bug fixes, the Stanford
API proposal, and all sorts of fun stuff (UML, alternate syntaxes etc). 
Meanwhile others have been busy with alternate ways of interfacing with
RDF (most recently Redland and Jend). It's not clear to me where this
leaves us with SiRPAC. What I'd like is for W3C to ship a stable
'application framework' style SiRPAC distribution based on Sergey's
stuff that allowed alternate parsers to be swapped in, and for a "good
enough to use" RDF API to be out there in the 'official' SiRPAC distribution.
 
This list is the best place for us all to decide where best to go with
SiRPAC. I'd like to hear Sergey's and other implementors' perspective on
the strengths/weaknesses of the SiRPAC/Stanford RDF API, and on
priorities for the W3C distribution of that code. Should we focus on
something that can 'let people get the job done' in their RDF apps, or
on improving the API with the goal of a SAX-like (?Java) developers
consensus. 

What I'd love to see (possible student project for those of you in CS
depts...?) is an RDF API Beauty Contest. There are enough
implementations and proposals floating around now for such a
thing. Rough idea being to gather some common usage scenarios (web
ratings, sitemaps, Dubline Core,  RSS channels) and see what application
code looks like from these different approaches.

Last thing to say on Brian's stuff before I have a _proper_ look is that
the built-in support for RDF container constructs is very welcome. Oh,
and that an SQL-backed version would be very welcome...

Dan

On Mon, 28 Aug 2000, McBride, Brian wrote:

> A few weeks ago I posted some suggestions for an improved java RDF API.
> I've placed an implementation of these ideas at
> http://www-uk.hpl.hp.com/people/bwm/rdf/jena/index.htm
> <http://www-uk.hpl.hp.com/people/bwm/rdf/jena/index.htm> .
>  
> The code supports in memory models.  David Megginson's RDFFilter is hooked
> in so it can parse RDF serializations.  I suggest you use the version of
> RDFFilter supplied in the distribution as it has some minor bug fixes.  Its
> alpha code - it gets through the regression tests and runs the samples but
> hasn't had much use other than that.  An SQL implementation may follow.
>  
> I think better tools will help encourage the adoption of RDF.  I'm looking
> on this as an experiment to see whether this API brings any benefits.  So
> I'd like some feedback.
>  
> Brian McBride
> HPLabs
>  
> 
Received on Monday, 28 August 2000 12:09:23 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Monday, 7 December 2009 10:51:44 GMT