- From: Sergey Melnik <melnik@db.stanford.edu>
- Date: Wed, 22 Nov 2000 15:48:06 -0800
- To: Jonathan Borden <jborden@mediaone.net>
- CC: ML RDF-interest <www-rdf-interest@w3c.org>
Jonathan Borden wrote: > > Sergey Melnik wrote: > > > Pierre-Antoine CHAMPIN wrote: > > > ... > > > First, Statements and Reified statements are not the same thing. > > > > Although this is consistent with the spec, I believe there are > > significant advantages both for understanding and manipulating reified > > statements if these two notions are merged into one. > > By merging into one, do you mean drop the notion of statement > reification? If a statement and a reified statement are the same thing, I'm > sure loads of people would prefer forget reification exists. Don't drop reification, it's heavy ;) I'd rather make it a lightweight built-in feature by explicitly making every statement a resource. > > Can you (or anyone) list some use cases where it is beneficial to make > > this distinction? I can think of several cases, in which distinguishing > > statements vs. reified statements makes things a lot more complicated. > > Just consider a database query that retrieves all assertions made about > > a statement (by anyone). > > How about: > > <Statement ID="S1"> > <predicate resource="bar"/> > <subject resource="foo"/> > <object resource="baz"/> > </Statement> > > <Statement ID="S2"> > <predicate resource="asserts"/> > <subject resource="John"/> > <object resource="S1"/> > </Statement> The model I'd generate for this is: (John asserts (foo bar baz)) > > The M&S spec clearly states that statements are *non-atomic* entities in > > the RDF model, i.e. they have 3 identifiable parts. Why then getting > > into trouble of defining another mechanism ("quad reification") for > > identifying these same parts in a less efficient (in all senses) manner? > > In order to assign a URI to a triple. Why not make it computable if necessary (Skolem)? Can save a lot of space... > > The "fix" or interpretation I advocate is the following: > > > > - STATEMENTS ARE RESOURCES (that implies that every statement is unique > > and equivalent to reified statement) > > A resource is something identified by a URI (by definition). Begging the > question: what would the URI of a statement be in this case? There are a lot of algorithms that can be used to generate statement URIs. One could use either a lossless one (like a separated concatenation of subj pred and obj labels) or a one-way hash function like SHA-1 as implemented in Stanford API. Sergey
Received on Wednesday, 22 November 2000 18:30:12 UTC