- From: Brian McBride <bwm@hplb.hpl.hp.com>
- Date: Sat, 16 Jun 2001 10:07:28 +0100
- 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 UTC