Re: Well Behaved RDF - Taming Blank Nodes, etc.

On Dec 12, 2012, at 9:01 AM, David Booth wrote:

> I'm writing a paper to propose a profile of RDF that would enable
> simpler tools to process RDF, and I'm wondering if others have
> suggestions of constraints that may be helpful to include.  The idea is
> not to change the RDF standard, but to define a useful, voluntary subset
> -- Well Behaved RDF -- that is sufficient for most RDF applications but
> simplifies their development.
> For example, one key limitation would be in the use of blank nodes,
> which severely complicate what could otherwise be simple tasks, such as
> comparing two RDF graphs for equality.  With unrestricted blank nodes,
> this becomes a difficult graph isomorphism problem instead of a simple
> text comparison.  Some have suggested eliminating blank nodes entirely,
> but a more modest restriction would be to limit them to common idioms
> that do not cause such complexity problems:
>  A Well-Behaved RDF graph is an RDF graph that can be serialized 
>  as Turtle without the use of explicit blank node identifiers. 
>  I.e., only blank nodes that are implicitly created by the 
>  bracket "[ ... ]" or list "( ... )" notations are permitted. 

That is too restrictive. There is a real need to be able to describe things such as "Joe's father" or "a woman in a red dress" which are naturally phrased as bnodes with identifying descriptors attached to them. 

> Are there other restrictions that would be helpful to have in a Well
> Behaved RDF profile, which would simplify our lives as RDF developers,
> but still meet the needs of most RDF applications?  For example, what if
> anything might be said about non-lean RDF graphs? Should typed literals

> be required to be well formed per their type semantics?

FWIW, the RDF2 WG may well decide to make graphs with illformed literals inconsistent, which is equivalent to saying that the type semantics is imposed by the simple use of the literal. 

>  Should the use
> of rdf:first and rdf:rest be limited to well-formed, rdf:nil-terminated
> lists, i.e., those that can be serialized as Turtle lists ( . . . )?

That makes perfect sense. The 2004 specs suggest this, in fact: they permit applications to treat 'silly' list descriptions as errors. 


> Etc.  What do others think?
> -- 
> David Booth, Ph.D.
> Opinions expressed herein are those of the author and do not necessarily
> reflect those of his employer.

IHMC                                     (850)434 8903 or (650)494 3973   
40 South Alcaniz St.           (850)202 4416   office
Pensacola                            (850)202 4440   fax
FL 32502                              (850)291 0667   mobile

Received on Wednesday, 12 December 2012 17:44:25 UTC