- From: Peter F. Patel-Schneider <pfps@research.bell-labs.com>
- Date: Mon, 17 Sep 2001 14:04:05 -0400
- To: sandro@w3.org
- Cc: www-rdf-rules@w3.org
From: Sandro Hawke <sandro@w3.org> Subject: Re: What is an RDF Query? Date: Mon, 17 Sep 2001 13:18:50 -0400 > > > Since I have trouble thinking in RDF graphs sometimes, I translate > > > them to a small subset of FOL for this kind of work. Specifically, I > > > use the subset with only constants, existential variables, 2-ary > > > predicates, and conjunction. (No universal variables, no negation, no > > > disjunction, no equality, and no logic functions.) > > > > Again, this sort of thing is possible, and provides good insights into the > > meaning of RDF(S). However RDFS is not captured by this subset of FOL, as > > RDFS requires that rdfs:subPropertyOf be transitive. To make this > > intuition precise, you have to capture all of whatever you are considering, > > as even very small changes in the formalism have large consequence. > > Before considering the entirely of your message, I'd like to check on > what you're saying here. In saying "...RDFS is not captured by this > subset of FOL..." it sounds like you're presuming the KB should > capture the meaning of rdfs:subPropertyOf before we even get to our > "rules". Absolutely! How can it be any other way? > I'm presuming instead that our "rules" will capture the > meaning of rdfs:subPropertyOf. So far, you seem to be requiring that some basic entities of RDF(S) be given meaning by constructs that come from an extension to RDF(S). Where I come from this is called a recursive definition and is to be avoided like the plague. > That is, I'm assuming a basic system > will know nothing of rdfs (or reification or containers or even > rdf:types) until a set of rules providing the axiomatic semantics for > such things are loaded (in the same manner, whatever it may be, as > any other rules are loaded). Oh. You are redefining RDF(S). This could work, sort of, but would require a redefinition of RDF(S) into a core formalism and the full formalism. It also would require work on the rule system to be completed before full RDF(S) can be defined. Further, some aspects of RDFS cannot be captured in Horn rules, at least not without some ``extensions''. For example, how are you going to capture the meaning of domain and range restrictions? You can't do something like domain(?r,?c), ?r(?x,?y) -> ?c(?x) because neither ?r nor ?c can be in the predicate position. Neither can you capture inheritance, for similar reasons. You could, if you really wanted to, use some sort of holds predicate, but then you have lost the intuitive connection between RDF and Horn rules, which you probably don't want. (See the KIF axiomatization of DAML+OIL for an example of this sort of game.) > Does my approach here seem reasonable? My view is that this approach is not reasonable, for (at least) the above reasons. > My big concern with it is that > I hear DAML+OIL cannot be expressed axiomatically in Horn logic. > Obviously there may be performance issues to this approach, but I > think that can be addressed behind the scenes, without changing the > general query/rule model. Certainly there are many portions of DAML+OIL that cannot be captured in Horn rules, including number restrictions. > -- sandro
Received on Monday, 17 September 2001 14:03:49 UTC