Re: use/mention and reification

On Mon, 21 Jan 2002, Jan Grant wrote:

> On 18 Jan 2002, Dan Connolly wrote:
>
> > As I said in today's telcon, I think
> > the rdf:subject of "Mary likes Bob"
> > should be a word that starts with M,
> > not a female person.
> >
> > I sent the gory details to rdf-logic
> > a while ago:
> >
> > Message-ID: <3B0FEF6A.BE6740CC@w3.org>
> > Date: Sat, 26 May 2001 13:01:14 -0500
> > From: Dan Connolly <connolly@w3.org>
> > To: Jonathan Borden <jborden@mediaone.net>
> > CC: Drew McDermott <drew.mcdermott@yale.edu>, www-rdf-logic@w3.org
> > Subject: use/mention and reification: rdf:predicate/subject/object [was:
> > RDF   Abstract Syntax...]
> > http://lists.w3.org/Archives/Public/www-rdf-logic/2001May/0359.html
>
> I still don't understand why you can't pronounce
>
> 	<sentence> <rdf:Subject> <mary> .
>
> as "the sentence has a subject whose referent is (the person) Mary" -
> ie, if you just change your intuition about what rdf:Subject "means"
> does this go away?

Not really. For one, this approach forces the quoting content to share
worldview with the quoted content about whether the terms used denote. If
we assume that all URIs denote, and that the term->world mapping is
static, maybe this isn't a problem. But I'm not sure we've committed to
those claims yet.

If we define rdf:statement/predicate/subject/object unclearly, we'll make
some pretty basic mistakes. For example, we might want to define
'attitude' properties that relate an agent to a statement: 'requests',
'believes', 'fears' etc. Imagine we had

<Person foaf:name="Jan">
  <foaf:mbox rdf:resource="mailto:jan.grant@bristol.ac.uk"/>
  <claims>
 	<rdf:Statement>
          <rdf:subject rdf:resource="mary"/> <!-- some uri for the cia -->
          <rdf:predicate rdf:resource="http://example.com/worksFor"/>
          <rdf:object rdf:resource="cia"/> <!-- some uri for the cia -->
         </rdf:Statement>
   </claims>
</Person>

If we adopt your re-reading of rdf:subject etc., we lose the ability to
capture important detail of the content ascribed to Jan.  We would have no
basis for concluding that you (ie. the person we're ascribing this content to)
had ever encountered the URI 'some-uri-for-mary'). Since we're solely
using that URI to point to the individual who is mary.

Imagine we also know that Jan claims '<worksFor> <mary> <kremlin>' and
'<worksFor> <mary> <MI5>'. It would be easy to slip into thinking that
this licenses us to believe that Jan is familiar with the fact that the
uri 'mary' denotes mary, and that he'd understand rdf/xml that used the
uri 'mary' within rdf:about and rdf:resource as being about this same
individual.  That isn't so.  We would however be licensed to believe that
there was some individual (who possibly-unbeknownst-to-jan happens to be
named by the URI 'mary') who Jan is claiming worksFor the kremlin, cia and
MI5.  (sorry for the cheesy example; maybe daml folk might have a better
one... ;-)

Hiding (and preserving) URIs within literals protects us from some of this
slipperyness; our applications will have direct access to the terms used
in the original content. This is similar to, but less extreme than,
keeping the original rdf/xml content (complete with charset info, base
URIs etc) around. There's what they said, and how they said it; the
reading you suggest is very much 'what they said (but not how they said
it)'. I think the above example shows that this can put some big limits on
its uses.

Dan

Received on Monday, 21 January 2002 08:42:17 UTC