Re: reification test case

From: "Seth Russell" <seth@robustai.net>
Subject: Re: reification test case
Date: Wed, 6 Feb 2002 09:35:11 -0800

> From: "Peter F. Patel-Schneider" <pfps@research.bell-labs.com>
> 
> > Well one might argue that
> >
> > 1/ there is at most one statement with a given predicate, subject, and
> object
> 
> Ok, but can we restate that?  There is at most one *triple* with a given
> predicate, subject, object.

> > 2/ each triple, i.e., each potential statement, has at most one
> reification
> >    in the form of a member of rdf:Statement
> 
> I believe that rdf:Statement is a class and not a set, so your use of the
> word 'member' here is problematic.  Don't forget there is normally no global
> identity to a node of rdf:type statement; it is just a Bnode, and as such
> there is nothing that is special about the rdf:subject, rdf:predicate, and
> rdf:object properties of that Bnode - they do not confer any special kind of
> identity to the node, and the current MT does not smush them together.

OK, but to completely fit in with M&S something like the following is needed:

1/ There is exactly one triple with a given pred, sub, and obj,
   so there can be at most one element of Statements with a given
   pred, sub, and obj.

2/ For each triple, consisting of a given predicate, subject, and object,
   there is at most one resource that is the sub of four elements of
   Statements; one with pred rdf:type and obj rdf:Statement, one with pred
   rdf:predicate and obj predicate, one with pred rdf:subject and obj
   subject, and one with pred rdf:object and obj object.


> > Why?  Well precisely so that one can uniquely identify a potential statement
> > and make statements about that statement.
> 
> Now I suppose we could put some kind of identity on a reified statement that
> could imply that it referred to the one and only triple in the current tidy
> graph, or even perhaps to the one and only abstract triple in the sky - but
> me thinks we should invent a new property arc for that purpose.   Perhaps
> that might be a way for us to have it both of our ways :)

But why not use the current M&S stuff as it is?  If you want multiple
``reifications'', then why not use some other mechanism?

> >For example, one could in this
> > way relate the statement to log:false via log:truthvalue, or use it in a
> > log:implies construct.
> 
> I don't see why we can't do that right now.  I could write
> 
> <rdf:description>
> <rdf:type>:Statement</rdf:type>
> <rdf:subject>:Gore</rdf:subject>
> <rdf:predicate>:wonThe</rdf:predicate>
[ <rdf:object>:election</rdf:object> ]
> <log:truthValue>False</log:truthValue>
> </rdf:description>
>
> which holds for all such statings.
>
> But I could also write:
> 
> <rdf:description>
> <rdf:type>:Statement</rdf:type>
> <rdf:subject>:Gore</rdf:subject>
> <rdf:predicate>:wonThe</rdf:predicate>
> <dc:author>:Seth</dc:author>
> <log:truthValue>False</log:truthValue>
> </rdf:description>
> 
> which holds for a smaller collection of statings.

HUH?  What is the difference here?  How do you distinguish between these
two uses?  As far as I can see both resources have equivalent status as far
as RDF is concerned.

> Seth Russell


Peter F. Patel-Schneider
Bell Labs Research

Received on Wednesday, 6 February 2002 13:01:28 UTC