- From: Pat Hayes <phayes@ai.uwf.edu>
- Date: Mon, 8 Oct 2001 20:25:40 -0500
- To: Drew McDermott <drew.mcdermott@yale.edu>
- Cc: www-rdf-rules@w3.org
- Message-Id: <p0510101db7e7fea0cc33@[205.160.76.193]>
> [me] > > If not, then it seems like there isn't much to discuss. As has > > already been suggested, a rule would be of the form P -> Q, where P > > and Q are both RDF graphs with some nodes variabilized. They could be > > used either forward or backward. > > [Sandro Hawke] > I'm trying to figure out a good way to "variabilize" the nodes. I > suggested earlier that we could simply use the bNodes (aka anonymous > nodes, aka document-scoped existential variables), with some special > rules for connecting their scopes. It has been pointed out to me that > linking their scopes is quite counter to RDF design; for instance, > RDF/XML has no way to name these variables. (Jonathan Borden > suggested [3] one could use XPointer, but that seems very awkward > here.) > >I'm not sure what the problem is. I guess you want to variabilize the >nodes while leaving the result a legal RDF graph. I can think of two >responses: > >a) Don't require it to be a legal RDF graph. Make it an "RDF graph >schema," that is, something containing variables that becomes an RDF >graph when nodes are substituted for the variables. That *is* a legal RDF graph. RDF graphs have blank nodes which have exactly the semantics of existential variables. In an assertion, that doesn't amount to a great deal (skolemize to get rid of them). But the *very same* graph can be understood as a query, ie held up to be proved rather than as making an assertion; and if you do that (it requires something - outside the graph itself - to indicate that it is intended to be at the sharp end of an entailment turnstile, is all) then the *very same* RDF model theory tells you that the appropriate way to use those variables is to allow them to be bound to values from another graph that might entail this query graph. (see http://www.w3.org/TR/rdf-mt/#interplemma) Same language, same syntax, same semantics, different speech-act/propositional attitude. So RDF does in fact support queries, right now, no need to change anything. (If you don't believe me, as Jos DeRoo, he has it running. :-) > >b) Take a legal RDF graph and associate variables with some of the >nodes by drawing new arcs from the nodes to the variables (i.e., >giving each nodes a new 'var_label' property). > >Both of these ideas leave the variables without explicit scope, as in >Prolog. If you want explicit scope, things get more interesting. True; the implied scope is the graph. This makes things much easier. > > I think with this kind of approach, the interpretation of bNodes as > file-scope existential variables works perfectly. In the premise, > they are just anonymous universal variables (because they are inside > the "if"), and in the conclusion they become skolem functions of the > universal variables, which is very useful. > >I think you pulled a fast one there. Not if you interpret 'premis' and 'conclusion' as applying to an inference rule (or sequent) rather than an implication. I think that is what Sandro had in mind (yes?) >If the variables are really >file-scope existentials, then a rule would look like this: > >ex x ((P x) -> (Q x)) > [the 'ex x' might actually be way outside the implication, > which is just one of many things in the file] > >This is not equivalent to > >ex x ((fa x (P x)) -> (Q x)) > >or to > >fa x ((P x) -> (Q x)) But think of the rule instead as a relation between two RDF graphs that indicates an extra-logical entailment licence, and allows one graph to be transformed into another. Then the claim makes sense, since none of the *logical* scopes go across the arrow (which really ought be written |- rather than -> ) 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 Monday, 8 October 2001 21:25:46 UTC