RE: abstract model

At 10:10 PM 9/14/00 +0100, McBride, Brian wrote:
> > I
> > think I am
> > forced to conclude that it represents an *extension* to the
> > RDF model as
> > defined.
>That may well be :(
> > Specifically, the "mapping called Reification" is a
> > new concept
> > that is not present in the original, and the only way to find
> > that mapping
> > using the original model is to find the set of 4 statements
> > that comprise
> > the reification.
>Please forgive my stupidity, but I don't follow the argument.
>M&S does have the idea that a reified statement is represented
>by a resource.  I think the mapping called Reification is a
>component of the abstract model described by m&s.  I think it
>can be positioned as a clarification of what is already

I agree that M&S has the concept of a reified statement represented by a 

My view is that the _mapping_ -- the function or relation that associates 
the resource representing a reified statement with the actual statement it 
represents -- is not there.

Consider, if you have an RDF model (per M&S section 5 formal model) containing:

   [A] --type------> [Statement]
   [A] --subject---> [S]
   [A] --property--> [P]
   [A] --object----> [O]

   [B] --type------> [Statement]
   [B] --subject---> [S]
   [B] --property--> [P]
   [B] --object----> [O]

   [S] --P---------> [O]

There is no way to know if [A] or [B] is the reification of "[S] --P--> [O]".

Thus, I suggest the formal model does not contain the information needed to 
construct the mapping you describe.

(However it could be said that either [A] or [B] reifies the statement "[S] 
--P--> [O]".)

>I suspect my problem is that we are thinking in different modes.
>For me, as a mathematical abstraction it can work as defined.
>I'm thinking of abstract model here, not of implementation.
>Maybe you could spell out the problem for me.

Let me also take a stab from a mathematical abstraction PoV.

IIRC, a mapping from some domain {d[i] in D} to some range {r[j] in R} is 
defined a set of pairs

   { <d[ik],r[jk]> }

that defines the mapping correspondence between members of D and R.  It is 
this set of pairs that is absent in the formal RDF model.

>Let me go through briefly the results of a conversation with a
>colleague of mine.   Stuart asked me what would the semantics of
>an incomplete reification be.  I think the answer hangs together
>reasonably well and may be useful to this discussion.

Sure, I think it hangs together just fine.

>If we apply the same thinking to reification, and I'm assuming
>here that the resource modeling the reified statement is
>anonymous, then given a set of statements like:
>    S = anon:S
>    {
>      (S, [rdf:type], [rdf:Statement]),
>      (S, [rdfs:subject], []),
>      (S, [foo:assertedBy, "Graham")
>    }
>This is a statement about an incomplete reification of a
>statement.  What does it 'mean'.  Informally, using the same
>reasoning as above, its semantics would be "Graham has
>made a statement about my internal HP homepage", but it
>doesn't say exactly what statement.
>That's the intiution.  What do you think?  If it stands up
>to initial scrutiny, I'll maybe have a go at expressing
>it in a more formal language.

It seems plausible to me.  My only reservation is that it introduces a new 
type of symbol into the formal model (anon:S doesn't really work as a URI, 
I think).  But I think that may be handled in other ways while retaining 
your basic approach to partial reification.

I'm not sure why you feel you need the _mapping_ between statements and 


Graham Klyne

Received on Thursday, 14 September 2000 19:26:14 UTC