W3C home > Mailing lists > Public > w3c-rdfcore-wg@w3.org > June 2001

Re: log:forSome (Was: Model-specific identity for anon resources, and its representation: A new issue?

From: pat hayes <phayes@ai.uwf.edu>
Date: Thu, 21 Jun 2001 14:53:09 -0500
Message-Id: <v04210115b757fca481a9@[205.160.76.206]>
To: Brian McBride <bwm@hplb.hpl.hp.com>
Cc: w3c-rdfcore-wg@w3.org
>Hi Jos,
>
>With regard to the recent discussion with Jan, I think there might be
>some miscommunication.  What I think than Jan is saying is that, given
>the model:
>
>  <http://descr1> <http:/prop> _:anon .
>  <http://descr2> <http:/prop> _:anon .
>
>it is not possible to express this exactly in the RDF/XML syntax.
>
>The reason is that the only way this can be done is to assign an ID
>or a URI to the anonymous resource.  That 'resource' then ceases to
>be anonymous.  In effect, it is no longer a variable.

No, being anonymous isn't what makes it a variable. See below.

>Try
>translating the above n-triple example to RDF/XML and you will see
>what I mean.
>
>Reading your message again, maybe I get an inkling of what you are
>saying.  We are talking here about what is an anonymous resource.
>We have been saying that it is an existentially qualified variable.

It can be thought of that way, but then so can a named resource.

>I have been understanding that to mean that it denotes some specific
>resource with certain properties, i.e.
>
>  _:anon <rdf:type> <rdf:Class> .
>
>says there is some specific resource, _:anon, which has type class.
>Is that what you would call a 'constant'?  Ah.  This is beginning
>to make sense to me.  If it were a constant, then you wouldn't
>mind at all that a URI had been assigned to it.   That would not
>change its nature.
>
>I think you may be saying that what I thought of as a variable
>is not really a variable.  It does not bind to multiple values.

Existentially quantified variables do not bind to multiple values either.

>Instead it represents a single value (constant) though I don't
>know what the value is.   Hmmm.  Now consider:
>
>   5+x=1
>
>Is x a variable?  No.  Its an unknown, until I solve the equation.
>Have we been calling anon resources variables, when we should have
>called them unknowns?


No!! This mathematical usage of variable-as-unknown doesnt fit with 
the logical terminology (what are you *asserting* when you say 5+x = 
1 ? What binds that 'x' ?)

>
>If what I previously thought of as a variable, is not really a
>variable, how would you explain what a variable is, without
>having to refer to concepts defined in a logic layer above
>rdfcore?

Don't introduce the mathematical sense of 'variable' meaning unknown, 
please. The logic of 'unknowns' is impossible. RDF is supposed to 
consist of assertions, not equations, and they are pretty simple 
assertions of the logical form (V s o) . Those s's and o's are 
logical names = logical constants, ie they denote things, one thing 
each in a given interpretation. Now, logical names are *just* like 
existentially quantified variables where the quantifers are at the 
top level (the only level there is in RDF), ie not inside any 
universal quantifiers. That is, one can think of any such name as 
being a token for such an existentially quantifed variable, often 
called a skolem constant. They are so like them, in fact, that many 
formal logics don't even bother to make the distinction, or (clausal 
logics such as Prolog) just don't bother with the existential 
quantifier at all.

But,  'existentially quantified' is very different from 'universally 
quantified'. In particular, you can't just arbitrarily substitute 
anything for an ex.q. variable like you can for a u.q. one, so you 
can't (validly) unify it with anything (except itself). So calling it 
a 'variable' is potentially misleading if you think of variables in 
terms of substitution and unification. It wouldnt be a variable in 
Prolog, for example: it would be a constant.

The RDF distinction between anonymous nodes and named nodes is 
logically invisible, as far as I can see. All nodes have an identity, 
so giving one of them a URI doesnt really change anything about it or 
what it means. All nodes could be non-anonymous and nothing would 
change in the meanings of any RDF. Anonymity seems to be a kind of 
syntactic sweetener which works by removing some bitterness rather 
than by adding sugar.

Pat Hayes

---------------------------------------------------------------------
IHMC					(850)434 8903   home
40 South Alcaniz St.			(850)202 4416   office
Pensacola,  FL 32501			(850)202 4440   fax
phayes@ai.uwf.edu 
http://www.coginst.uwf.edu/~phayes
Received on Thursday, 21 June 2001 15:53:11 EDT

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