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

Re: nature of anon resource [was Re: log:forSome]

From: Brian McBride <bwm@hplb.hpl.hp.com>
Date: Sat, 16 Jun 2001 10:07:28 +0100
Message-ID: <3B2B21D0.DCD55280@hplb.hpl.hp.com>
To: jos.deroo.jd@belgium.agfa.com
CC: Jan.Grant@bristol.ac.uk, w3c-rdfcore-wg@w3.org
Hi Jos,

jos.deroo.jd@belgium.agfa.com wrote:
> 
> Hi Brian,
> 
> Great, I really find this interesting too!
> 
> I think there are 3 kinds of variables
>  [1] free variables
>  [2] existentially quantified variables
>  [3] universally quantified variables

So just to help me a little along the path to understanding,
could you explain a bit more about what you mean by a free
variable.  Some examples that I can relate to would be good.
For example is the x in 5x+1=6 a free variable?  Thats what
I was calling an unknown.  Wheras the x in x+y=0 is a
variable.  At least that's the distinction I thought you
were making. 

> 
> and I think the misunderstanding is that
> anonymous resources are (sometimes)
> 'treated' as [1] whereas I think they
> should always be treated as [2].

Can you give examples of the difference?

> 
> If somebody writes the following .nt
>   _:a <uriref1> <uriref2>.
> and says that this is a statement, then
> (s)he is basically talking a free variable
> (somewhere floating around in triple space)

Not being sure about what you mean by a 'free variable' I don't
understand that.  I would have said _:a is an unknown.  The difference
between a free variable and an unknown is that a free variable
may be bound to many things, an unknown can bind to just one.

> I think this is wrong because there is no
> quantification: the floating thing should
> be existentially quantified

Doesn't existential quantification turn a free variable into
an unkown?  That's why skolemization works - we can give an
existentially qualified variable a name (assuming for the
moment we are not in the scope of a universal quanitifer,
because we don't have any of those in rdf).

Now if that were true, then you and I have the same model
for what what is going on here.  _:a is both an existentially
qualified variable and an 'unknown' because they are the
same thing (in this context - because we have no universal
quantification)

So if that is the case, then what's the problem here?

Maybe the problem is that you are of the view that it does no
hard to assign a name to an anonymous resource.  That's just
skolemization.  You might then argue, with Sergey, that there
is no need to represent anonymous resources in the model.  And
Jan's problem that RDF/XML cannot represent an arbritary model
is not a problem.

By the way I've changed the title from log:forSome.  This may
be another misunderstanding on my part, but I'm talking about
anon resources as they would be defined in the lowest layers
of the rdf model.  At that layer log:forSome is not defined
so we can't use it here.

If you are taling about a logic language layered on top of the
core, that could explain a lot.

> and I think
> the best way to do that is to *point*
> to it. That can be simply done with
> a statement *using* that term e.g.
>   <uriref3> <uriref4> _:a.
> or it can be done with
>   <scope-uri> <the-log-forSome-uri> _:a.
> I have recently experimented with
> implicit scoping, but I think this is
> not a scalable approach.

Now you have lost me.

> 
> If we have terms existentially quantified,
> then I think that a lot can be done with
> such terms, but that's another topic...

What is a term?  RDF doesn't define such a concept.

Brian
Received on Saturday, 16 June 2001 05:09:20 EDT

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