- From: Eric Jain <Eric.Jain@isb-sib.ch>
- Date: Wed, 25 Aug 2004 18:24:42 +0200
- To: Bob MacGregor <macgregor@isi.edu>
- CC: "'RDF interesting groupe'" <www-rdf-interest@w3.org>
Bob MacGregor wrote: > Reification in RDF is basically a huge mistake. I disagree, see comments below. > As you noted, storage space explodes. Only if implemented naively. Not much extra space is needed if reification is implemented by adding an identifier column to the statement table. > Furthermore, > queries quickly become unreadable when using reification. This again is only true if your query language/engine does not directly support reification. Example: SELECT ?protein, ?location, ?date WHERE [?protein rdf:type :Protein] AND ?s <- [?protein :encodedIn ?location] AND [?s :modified ?date] USING 'http://www.w3.org/1999/02/22-rdf-syntax-ns#' AS rdf, 'urn:lsid:uniprot.org:ontology:' > The right solution is to use contexts. Contexts can be implemented > using quads instead of triples, > or by using a scheme for encapsulating groups of statements, as is done > in the Triple system. Contexts are an excellent idea, but for different use cases, in my opinion. It seems a bit problematic to go about creating lots of contexts for the sole purpose of describing individual statements. > Meanwhile, representation of provenance data in RDF is > next-to-impossible from a practical standpoint. Unfortunately you may be right here - few tools support reification well, at the moment.
Received on Wednesday, 25 August 2004 16:24:31 UTC