Re: RDF 2 Wishlist

On Sun, 2009-11-01 at 12:51 -0500, Sandro Hawke wrote:
> So, what should W3C standardize next in the area of RDF, if anything?

I was actually talking about something similar on IRC the other day.
Here's my wishlist:

A superset of the RDF model should be defined. I'm calling this "RDF
2.0", but other names might be possible. This model would be something
like the SPARQL model.

a) Tt would remove the restriction on subjects being literals. 

b) It would have named graphs. It would clarify the relationship
between named graph URIs and document URIs. Should the document itself,
and the graph gleaned by processing a document share a URI? Probably
not, but in practise, this is what many people do. It makes it hard to
represent different graphs gleaned from the same document (e.g. parsing
an XHTML file with RDFa and with GRDDL).

c) URI aliases: an owl:sameAs-like feature as part of the data model. A
blank node is treated the same as a URI - it just has one less URI
alias. Thus blank nodes are allowed as predicates.

d) Clearer support for reification. I should be able to write a reified
triple and then have tools understand its unreified meaning too - and
perhaps only do so depending on some criteria. e.g. treat [ a
rdf:Statement; foaf:maker <#bob> ] as an unreified triple only if I
trust <#bob>.

(a) is somewhat incompatible with RDF1, but could be projected back to
RDF1 via inverses. In RDF 2.0:

 "W3C" ex:abbreviates <> .

In RDF 1:

 <> i:be245f99 "W3C" .
 i:be245f99 rdf2compat:inverseOf ex:abbreviates .

(b) is also incompatible with RDF1 as it is defined, but is fairly
compatible with RDF1 as it's used in the wild. Tonnes of people already
use named graphs. For those that need to backport RDF 2.0 data that uses
named graphs to an RDF1 tool with no support for named graphs, either
the graph can be dropped (if the person doesn't care about it) or the
data could be reified.

The URI alias feature (c) can be backported to RDF1 by adding
rdf2compat:sameAs triples into the graph. The blank node predicate
feature can be backported by assigning an arbitrary temporary URI to the
blank node in question.

(d) is pretty compatible with the RDF1 data model, and is just an area
where tools could add better features.

The rdf2compat vocabulary would define a bunch of terms for backporting
RDF 2.0 data to RDF1. Such as:

 rdf2compat:inverseOf rdfs:subPropertyOf owl:inverseOf .
 rdf2compat:sameAs rdfs:subPropertyOf owl:sameAs .
 rdf2compat:sourceGraph rdfs:domain rdf:Statement .

Toby A Inkster

Received on Monday, 2 November 2009 09:53:37 UTC