Re: Subjects as Literals

Ivan, all,


Le 06/07/2010 18:00, Ivan Mikhailov a écrit :
 > After 7 days of discussion, are there any volunteers to implement this
 > proposal? Or you specify the wish and I should implement it (and
 > Kingsley should pay) for an unclear purpose? Sorry, no.


Not only there are volunteers to implement tools which allow literals as 
subjects, but there are already implementations out there.
As an example, take Ivan Herman's OWL 2 RL reasoner [1]. You can put 
triples with literals as subject, and it will reason with them.
Here in DERI, we also have prototypes processing generalised triples.

Other reasoners are dealing with literals as subjects. RIF 
implementations are also able to parse triples with literals as 
subjects, as it is required by the spec.

In addition to the existing implementations, it should be noticed that 
the main standards built on top of RDF(S) (SPARQL, OWL 2, RIF) are all 
using generalised triples instead of the restrictive RDF triples. So, 
basically, all the upper levels of the Semantic Web layer cake are not 
based on RDF but on generalised RDF...

Some people mentioned scalability issues when we allow literals as 
subject. It might be detrimental to the scalability of query engines 
over big triple stores, but allowing literals as subjects is perfectly 
scalable when it comes to inference materialisation (see recent work on 
computing the inference closure of 100 billion triples [2]).

Considering this amount of usage and use cases, which is certainly meant 
to grow in the future, I believe that it is time to standardised 
generalised RDF. In addition, there are readily available serialisations 
for it (N3, or a straightforward extension of N-triple or Turtle) and a 
backward compatible extension of RDF/XML has been proposed in this 
thread (by Sandro Hawke).


A possible compromise would be to define RDF 2 as /generalised RDF + 
named graphs + deprecate stuff/, and have a sublanguage (or profile) 
RDF# which forbids literals in subject and predicate positions, as well 
as bnodes in predicate position.
Then SPARQL, OWL 2 and RIF would really refer to RDF 2 instead of each 
redifining generalised RDF. People implementing optimisations of triple 
stores would be implementing a W3C-approved part of RDF (namely, RDF#), 
just like people implementing OWL 2 QL implement part of OWL 2 for 
efficient data indexing and query answering.


Honestly, it's just about putting a W3C stamp on things that some people 
are already using and doing. Just like named graphs and other stuff. 
Plus, it's an easy one since the semantics is already there.



[1] http://www.ivan-herman.net/Misc/2008/owlrl/
[2] Jacopo Urbani, Spyros Kotoulas, Jason Maassen, Frank van Harmelen, 
and Henri Bal. "OWL reasoning with WebPIE: calculating the closure of 
100 billion triples" in the proceedings of ESWC 2010.



Regards,
AZ.
-- 
Antoine Zimmermann
Post-doctoral researcher at:
Digital Enterprise Research Institute
National University of Ireland, Galway
IDA Business Park
Lower Dangan
Galway, Ireland
antoine.zimmermann@deri.org
http://vmgal34.deri.ie/~antzim/

Received on Tuesday, 6 July 2010 19:54:57 UTC