W3C home > Mailing lists > Public > www-rdf-interest@w3.org > November 2000

Re: summary of 'a triple is not unique' and 'statements/reified' statements

From: Graham Klyne <GK@Dial.pipex.com>
Date: Wed, 29 Nov 2000 20:17:02 +0000
Message-Id: <4.3.2.7.2.20001129194249.02293f00@pop.dial.pipex.com>
To: Libby Miller <Libby.Miller@bristol.ac.uk>
Cc: www-rdf-interest@w3c.org
At 02:46 PM 11/28/00 +0000, Libby Miller wrote:

>Hi all,
>
>I've been following the threads about statements with interest, and I've
>had a go at summarising them. There's a document at
>
>http://ilrt.org/discovery/2000/11/statements/

Libby,

this is a useful attempt on a difficult subject.  By "difficult", I mean 
that there are clearly many subtleties that cause different people to see 
things differently -- it all seems quite simple to me ... for today at 
least ;-)

I think my earlier message 
(http://lists.w3.org/Archives/Public/www-rdf-interest/2000Nov/0280.html), 
which you cite, captures my view.  Based on that, I have some comments on 
your interpretation:


>1. 'reified statements are statings'
>
>Jonas Liljegren, Seth Russell(?), Graham Klyne, Pierre-Antoine Champin, 
>Jonathan Borden
>
>On this view, although a reified statement represents a statement, it is 
>only one possible representation of it. There is therefore not
>necessarily a one-to-one correspondence between a statement and its 
>reification (Graham Klyne).

Precisely.

>Statements may or may not be unique (there seems to be a preference for 
>uniqueness, in some sense, maybe within a context (space) or
>model). Introduction of spaces: Jonathan Borden.

The RDF model seems to say that statements are unique.  Contexts don't 
change this.

>This means that reified statements should be regarded as unique of 
>themselves and as statings. Each stating is unique. If someone else makes
>a reified statement with the same subject, predicate and object 
>properties, then we cannot regard that stating as being the same as the first.
>The loss of information that occurs in Liljegren's example would not occur.

Here, I differ slightly:  IMO, uniqueness of a reification depends entirely 
on the URI that identifies the statement resource; i.e. the 'r' in:

    [r]--rdf:type------->[rdf:Statement]
    [ ]--rdf:predicate-->[p]
    [ ]--rdf:subject---->[s]
    [ ]--rdf:object----->[o]

If one document or context makes an assertion about the statement [r], and 
some other document makes a different assertion using the same URI for [r], 
then they are assertions about the *same* stating, even though the 
reification is invoked in very different places.

>However, when a reified statement is given a URI via the ID attribute then 
>this implies that any reified statement with that URI is referring to
>the same stating.

Yes.


>problems
>
>      loss of some information, because the distinction between the 
> statement and the stating is being lost, so that we are removing the
>      possibility of aggregation of this part of the data.

I don't agree with this.  The distinction still exists.  The fact that the 
statement is an abstraction that is not directly represented in RDF does 
not remove the distinction.


[As I write this, I think I see one of the misunderstandings...]

Reification should NOT be regarded as synonymous with 
"stating".  Reification is the mechanism we have to create a resource that 
models a statement;  asserting that a statement was stated in some context 
(i.e. describing a "stating") is just one thing we can do with a reification:

    [r1]--rdf:type------->[rdf:Statement]
    [  ]--rdf:subject---->[Foo]
    [  ]--rdf:predicate-->[heightInMillimetres]
    [  ]--rdf:object----->"25.4"
    [  ]--statedBy------->[Somebody]

But, we might alternatively wish to assert that two statements are 
equivalent, without asserting the truth of either, or even asserting that 
anybody made such a claim (stating):

    [r1]--rdf:type------->[rdf:Statement]
    [  ]--rdf:subject---->[Foo]
    [  ]--rdf:predicate-->[heightInMillimetres]
    [  ]--rdf:object----->"25.4"

    [r2]--rdf:type------->[rdf:Statement]
    [  ]--rdf:subject---->[Foo]
    [  ]--rdf:predicate-->[heightInInches]
    [  ]--rdf:object----->"1"

    [r1]--equivalentStatement-->[r2]

To reiterate:  the second example uses above reifications of two (abstract) 
RDF statements to make the assertion that the statements are 
equivalent.  Neither of these reifications are "statings".

#g
--


------------
Graham Klyne
(GK@ACM.ORG)
Received on Wednesday, 29 November 2000 16:07:39 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Monday, 7 December 2009 10:51:47 GMT