- From: pat hayes <phayes@ai.uwf.edu>
- Date: Thu, 26 Jul 2001 12:02:59 -0700
- To: Graham Klyne <Graham.Klyne@Baltimore.com>
- Cc: Brian McBride <bwm@hplb.hpl.hp.com>, w3c-rdfcore-wg@w3.org
>At 10:15 PM 7/23/01 -0700, pat hayes wrote: >>It isnt clear to me what the scope of anonymous node is intended to >>be, but it if it is the document containing the node, then indeed >>it should be impossible for any other source to say anything about >>the thing it refers to, so this is a genuine difference. However, >>the same is true of a non-anonymous URI if its use is restricted to >>this one source. > >I've been thinking recently about encoding inference rules in RDF, >where a rule may have a variable that is scoped by the rule; e.g. > > Dog(?x) -> Animal(?x) OK, you have left me behind already. I don't see any way to get anything remotely like that into RDF. I presume this is supposed to mean that for any ?x, if it is a dog then it is an animal, right? How do we encode universal quantifiers in an exist-conj logic like RDF? >Originally, I was thinking that, when encoding this in RDF the >variable represented by ?x must somehow be scoped within the RDF. >But when I started looking at candidate RDF encodings this need for >scoping just melts away: the variable is represented by a new, >unique resource: ??? Wait. Resources are the things in the world, the things that are denoted by URI's, right? One doesnt get quantification by putting variables into the *domain* (whatever that means: I'm not sure what it means, to be honest. ) > that resource has global scope (and, hence, if it has a URI it is >one that is not shared by any other resource). The only place where >the concept of scope is needed is in the original expression. Some >other expression; e.g. > > Cat(?x) -> Animal(?x) > >Has a different scope for its ?x, but the resource that represents >the variable in the encoding of this is a different resource than >the one that represents ?x in the previous example. > >From this exercise, I tentatively suggest that the scope of any >resource (node) is global -- the entire universe of discourse. Well, I think I follow your point, and indeed one can do something like this in conventional logic, where its often called 'standardizing apart', ie no variable name is ever used twice, so there is no risk of getting them confused. But (1) it is unworkable in practice, and (2) you still need some way to indicate, or determine, the scopes. For example, consider the difference between foo & (cat(?x) -> animal(?x) ) and (foo & cat(?x)) -> animal(?x) >(I'm trying to be clear that this is an encoding of inference rules >in RDF, not an attempt to make inference rules part of RDF.) Maybe this is my problem. I'm not sure what this distinction amounts to. RDF has a 'meaning' already, so how does one get its meaning changed so it can do this encoding for you? Pat Hayes --------------------------------------------------------------------- (650)859 6569 w (650)494 3973 h (until September) phayes@ai.uwf.edu http://www.coginst.uwf.edu/~phayes
Received on Thursday, 26 July 2001 15:02:50 UTC