W3C home > Mailing lists > Public > w3c-rdfcore-wg@w3.org > March 2003

Re: summary of reification semantics issues (material for discussion).

From: Tim Berners-Lee <timbl@w3.org>
Date: Wed, 12 Mar 2003 16:54:31 -0500
Cc: w3c-rdfcore-wg@w3.org
To: pat hayes <phayes@ai.uwf.edu>
Message-Id: <34433D78-54D5-11D7-887D-000393914268@w3.org>

Thank you Pat for this summary.  I find in it
a conclusion that de-re semantics for reification are useful,
which is not the conclusion to which I come. As this affects running
code, I will go through the message looking for differences.

On Tuesday, Mar 11, 2003, at 18:17 US/Eastern, pat hayes wrote:

> Summary of the semantic alternatives for RDF reification.
> ---------------------------
> A reification assertion such as
>
> aaa rdf:subject bbb .
>
> is saying that something is the subject of something else which is an 
> RDF triple. There are at least two orthogonal dimensions on which one 
> can choose alternatives about what exactly these 'somethings' are.
>
> aaa  might refer to a triple as an abstract grammatical form, or it 
> might refer to a particular occurrence of a triple in some actual 
> document somewhere. This has been referred to as the 
> 'statement/stating' difference.
>
> bbb might refer to a piece of syntax - the actual subject 'node', or 
> subject token in a document - which occurs in the RDf graph, or it 
> might refer to the thing that is considered to be the subject of the 
> proposition expressed by that triple. This has been referred to as the 
> 'de-dicto/de-re' difference.  This can be dramatized by asking: is the 
> rdf:subject of the triple
>
> ex:Mary ex:had ex:littleLamb .
>
> a girl or a uriref  (respectively de dicto or de re)  ?

I think you mean the other way around, no?  The de re interpretation is 
that
the subject is the thing, Mary, and the de dicto that it is that which 
was said, the
URI?

> These two choices are independent, but each influences the 
> significance of the other.
>
> Currently, the semantics document recommends that one should interpret 
> this vocabulary so that aaa is interpreted as a stating, ie referring 
> to a concrete occurrence of a triple rather than an abstract form; and 
> that bbb should be interpreted de re, ie as referring to Mary rather 
> than to Mary's URIref.
>
> The reasoning behind these choices are as follows.
>
> Statings allows one to associate provenance information with triples 
> in a document a document by using reification to talk about the 
> triples. This would be impossible (meaningless) if we imposed the 
> 'statement' interpretation.

I think this is an argument which doesn't make sense if yo try it.
You can't really distinguish between a stating and a statement until you
give a test case, which involves more relationships.

While a triple  {ex:Mary ex:had ex:littleLamb} is represented merely by
its three parts, there is no association with a particular source.
There is nothing to indicate that it is a stating.

Suppose that the triple indicates just the abstract statement.
We can reify this by giving the strings which make up its parts.

ex:s1  rdf:subjectSymbol  "http://www.example.com/pat12#Mary";
            rdf:predicateSymbol "http://www.example.com/pat12#had";
            rdf:objectSymbol "http://www.example.com/pat12#littleLamb".

(I've used "objectSymbol" as you can have "objectLiteral" as well)

We can then state that for example passing a given file gives you
among other things that:

<mgoose.rdf>   ex:includes ex:s1.

So s1 is just an abstract statement,and we have established
a relationship with a source document.  This latter triple, if you like,
is an expression of the stating.

This is practical.  In cwm, statements are like literals - they can be 
compared
and interned. When the same statement (or formula of >1 statemement,
for that matter) occures in many places, it only has to be stored once.
It also avoids giving rise to things which one doesn't need to use.

> Such uses of reification form a large class of actual use cases.

Could you give me pointers?

> On the other hand, if someone wants to describe the abstract 
> grammatical form of a statement, this can be done by using a 
> particular instance of it as an exemplar for the abstraction, eg by 
> associating a bnode with the reification by a property like  
> <ex:abstractformOf>.

If there really is a non-abstract form of the statement, then 
presumably there is
some modelling of it which we are missing which makes it distinct from 
the abstract form.

I personally find it quite satisfactory to consider that the statement 
is the abstract form,
that, say, a given formula contains a given statement, or a given 
source supports a given statement,
but I find no use in the concept of that statement as specified in a 
given file as opposed
to the same statement as specified in another file.

> The de re interpretation allows reifications to use the same 
> conventions for  interpreting URIrefs as other triples, so that a 
> URIref used as an actual subject node, and the same URIref used as the 
> object of an rdf:subject assertion, have the same meaning. In 
> contrast, the de dicto interpretation would require a reasoner to 
> distinguish these two uses, using some extra-RDF convention such as 
> quotation,

The use of a string literal to indicate the URI of a symbol as above is 
not extra-RDF.

>  or else require that subjects and objects of reified triples be given 
> distinct URIrefs which are understood in a 'meta' sense to refer to 
> the actual URIrefs in the subject and object position of the reified 
> triple. Neither of these formal techniques have emerged in practice, 
> suggesting that the de re interpretation in fact codifies existing 
> intentions of users.
>

I actually tried the de-re method in generating proofs from cwm, and 
found that I was generating garbage.  I was generating things which 
looked nice on paper but which were logical nonsense.
(The proof-checker would be working through nested formulae and then 
come across a small sheep!)

> One objection to the de re interpretation is that it does not allow 
> for the adequate representation of propositional attitudes such as 
> belief. This is controversial (see the discussion of the Russellian 
> theory in http://plato.stanford.edu/entries/prop-attitude-reports/) , 
> but in any case there is ample experience which suggests that the de 
> dicto interpretation would produce other problems with the 
> representation of such ideas, and that an fully adequate 
> representation of propositional attitudes is unobtainable using 
> reification alone.

Well, its certainly unattainable using the de-re interpretation, and 
without some quoting
of the symbols used.

But surely, the whole reason for the introduction of reification was to 
quote.
The phrase "propositional attitudes" is a scary one suggesting one 
models
degrees of human belief, and modeling of intelligence and rather more
philosophy than one would want to get into.

In fact, we are using quoting (ie de-dicto) to make quite mechanical 
and simple statements
about what a file parses to, what a rule implies, and so on.  From the 
programming
point of view it looks straightforward and I haven't found the logical
inconsistencies which the de-re interpretation produces.

To be able to talk about the formula { :Ora :wrote :MobyDick} 
abstractly,
without talking about Ora.

We have found that serious use of semantic web data often involves an 
awareness of the provenance of data.  The formulae in N3 are a form of 
quoting. A way of
giving a formula in RDF by reifying it (describing it in RDF) would be 
an interesting and
useful alternative to the use of the {}  or parseType="Quote" syntax 
extensions.

The query languages involve RDF which is not asserted, and can be 
implemented as quoted,
and the return of bindings from a query involves mentioning the 
variable names.
There are many practical ways in which quoting is needed. I had the 
impression that
that was the raison d'Ítre of the reification in the spec, but one can 
only guess at intent.

> Pat
>
> -- 
> ---------------------------------------------------------------------
> IHMC					(850)434 8903 or (650)494 3973   home
> 40 South Alcaniz St.			(850)202 4416   office
> Pensacola               			(850)202 4440   fax
> FL 32501            				(850)291 0667    cell
> phayes@ai.uwf.edu	          http://www.coginst.uwf.edu/~phayes
> s.pam@ai.uwf.edu   for spam
Received on Wednesday, 12 March 2003 16:54:26 EST

This archive was generated by hypermail pre-2.1.9 : Wednesday, 3 September 2003 09:56:13 EDT