Re: Comments on Section 3

On Tue, Apr 15, 2003 at 11:52:33AM -0400, David R. Karger wrote:
>    Statements don't have "addresses" so there is no address
>    distinction to maintain. Reified statements do have addresses,
>    URI's or bNodes.
> 
> Yes, and I think the URI of the reified statement should be an MD5 of
> the statement.  This means I think that there is only one name to
> represent the reification of a given statement.  But I don't see this
> as a problem.  It is perfectly reasonable for two different
> repositories to contain assertions about a given statement, assertions
> that may contradict one another.
> 

Actually this was the old behavior of Jena as well.  Unfortunately it
isn't standards compliant, as the statings identified by the reified
statement must be distinguishable from one another.  Thus the redesign
of reification for Jena2.

>    Thus I would suggest that both people are asserting the truth of
>    the same "statement" but are doing so via different "statings". If
>    you wish to represent the stating explicitly within the RDF data
>    model then use reification. As defined in the RDF Model theory you
>    can't collapse multiple reifications (statings), they are different
>    resources, but you *can* collapse multiple statements.
> 
> Indeed, the statements "Joe asserts statement" and "Dave asserts
> statement" are distinct statements (but each can now be named by an
> MD5 URI)
> 

The implication of the standard is that in those two statements, the
'statement' field is actually a stating since the instance node of the 
reified statement is the resource that is placed in the object, and 
that can vary (and be represented multiply) depending on the subgraph 
that is created, and independently of its contents.

>    > Your argument that the users intent all along should have been to
>    > assert the same instance as had been asserted previously is presuming
>    > to know the intent of the user.   If the user had that intent, then
>    > there is no reason for them not to use the preexisting statement
>    > directly.
> 
> "assert the same instance" is a circular objection.  It implies there
> is more than one instance of a statement.  I see no point to having
> such.
> 

The point in having multiple instances is to maintain the distinction
of addressability, and possibly of mutability and transient state.

Your recommendation of using an MD5 URI cannot work, as the statement
so described must needs be addressable, and the MD5 URI cannot maintain
the distinction of identity of the instance described.

Genesis also encounters this problem with invariant objects, and we
have a solution that is described in our position paper, which I can't
describe on this list yet.

-- 
========================================================
   Kevin Smathers                kevin.smathers@hp.com    
   Hewlett-Packard               kevin@ank.com            
   Palo Alto Research Lab                                 
   1501 Page Mill Rd.            650-857-4477 work        
   M/S 1135                      650-852-8186 fax         
   Palo Alto, CA 94304           510-247-1031 home        
========================================================
use "Standard::Disclaimer";
carp("This message was printed on 100% recycled bits.");

Received on Tuesday, 15 April 2003 12:25:05 UTC