- From: Michael Schneider <schneid@fzi.de>
- Date: Mon, 17 Dec 2007 23:32:35 +0100
- To: "Pat Hayes" <phayes@ihmc.us>
- Cc: "Owl Dev" <public-owl-dev@w3.org>
Hi Pat! Many thanks for looking through my reasoning! The rest of this thread moved a bit in a different direction from what I had expected... Regarding your suggestion to fix the issue, you claim that it will be backwards compatible with OWL-1.0. But I do not recognize how this can really be achieved. Please see below! Pat Hayes wrote: >> I wrote: >> >>>Let's regard the following OWL-1.1-DL ontology in Functional >Syntax, which >>>makes use of QCRs: >>> >>> (A1) SubClassOf(Human ObjectExactCardinality(2 hasBodyPart Leg)) >>> (A2) SubClassOf(Dog ObjectExactCardinality(2 hasBodyPart Ear)) >>> (A3) SubClassOf(Dog ObjectExactCardinality(4 hasBodyPart Leg)) >>> (A4) ClassAssertion(pluto Dog) >>> >>>In natural English: >>> >>> "A human has exactly two legs as body parts (A1), >>> while a dog has two ears (A2) and four legs (A3). >>> There is also some dog named 'Pluto' (A4)." >>> >>>It is clear that this ontology will be satisfiable in >OWL-1.1-DL. I will >>>show that the current RDF mapping of QCRs translates this >ontology into an >>>RDF graph, which will most likely be *inconsistent* under >OWL-1.1-Full >>>semantics. Note that the above ontology does not look very >contrieved, so I >>>expect that the problem shown below will hit many >OWL-1.1-Full ontologies. >>> >>>Here is my reasoning why the above ontology will probably be >inconsistent >>>under OWL-1.1-Full semantics: >>> >>>The RDF translation for axiom (A1) is, under the current RDF >mapping for >>>QCRs, given by (leaving out obvious typing triples): >>> >>> (R11) <Human> rdfs:subClassOf _:x . >>> >>> (R12) _:x rdf:type owl:Restriction . >>> (R13) _:x owl:onProperty <hasBodyPart> . >>> (R14) _:x owl:cardinality 2 . >>> (R15) _:x owl11:onClass <Leg> . >>> >>>As Peter has already pointed out, the RDF graph >{(R12),(R13),(R14)} is >>>itself the RDF translation of an *other* OWL construct, which is an >>>UN-qualified cardinality restriction on property 'hasBodyPart'. > >Indeed. Coming to this discussion rather late, >and not having followed the threads, I have to >say that this is blindingly obvious, and the >resulting problems it will produce also >blindingly obvious. Clearly, this RDF translation >is seriously broken, and should never have been >considered for more than a moment. > >This might have been more obvious if instead of >thinking of the RDF as a mere syntactic >transcription of an alien notation, one had tried >to extend the current OWL-Full semantics directly. > >There are several ways to get around this. The >most obvious seems to be to modify R12, by >introducing a new class of Q-restrictions, so >that the RDF translation becomes > >(R'12) _:x rdf:type owl:QRestriction . >(R'13) _:x owl:onProperty <hasBodyPart> . >(R'14) _:x owl:cardinality 2 . >(R'15) _:x owl11:onClass <Leg> . > >To keep this 'clean', the other restrictions >should be in another new disjoint class, which I >will call UQRestriction. Then > >(R''12) _:x rdf:type owl:UQRestriction . >(R'13) _:x owl:onProperty <hasBodyPart> . >(R'14) _:x owl:cardinality 2 . > >is the RDF translation for the other restrictions, and we also have > >owl:UQRestriction rdfs:subClassOf owl:Restriction . >owl:QRestriction rdfs:subClassOf owl:Restriction . >owl:QRestiction owl:disjointWith owl:UQRestriction . > >I believe the appropriate semantic conditions can >then be applied without any confusion arising. >This is of course backwards compatible with OWL >1.0, in which > >owl:UQRestriction rdfs:subClassOf owl:Nothing . I think, you certainly mean owl:QRestriction rdfs:subClassOf owl:Nothing . ("there are now QCRs in OWL-1.0 ontologies"). > >also holds. First let me check whether I understand your strategy correctly: * Do you mean that the classes QRestriction and UQRestriction, together with the proposed set of axioms, should be added to the current OWL-1.0 spec (with the "empty QRestriction" axiom). So there would be a bugfix release for OWL-1.0 first, before OWL-1.1 gets released? * Or do you mean that the suggested classes and axioms should only be put into the new OWL-1.1/RDF semantics, leaving OWL-1.0 semantics as it is? The first of these two options would look unrealistical to me. But for the second option I do not see how to maintain backwards compatibility to OWL-1.0. I will refer to a hypothetical RDF compatible OWL-1.1 semantics, which contains your proposed classes and axioms, by using the name "OWL-1.1[Pat]". Let's look again at our example of an (un-qualified) cardinality restriction, coming from old OWL-1.0 days: (R11) _:x rdf:type owl:Restriction . (R12) _:x owl:onProperty <hasBodyPart> . (R13) _:x owl:cardinality 2 . This RDF graph {(R1*)} has clear OWL-1.0 semantics. But I do not see what {(R1*)} actually means in OWL-1.1[Pat]. What I /need/ to get from this graph, in order to get backwards compatibility, is that '_:x' denotes a "=1" cardinality restriction on property p under OWL-1.1[Pat] semantics. What I /actually/ know is that we /could/ derive this needed information in OWL-1.1[Pat] from the following RDF graph: (R21) _:x rdf:type owl:UQRestriction . (R22) _:x owl:onProperty <hasBodyPart> . (R23) _:x owl:cardinality 2 . But what I actually /have/ is {(R1*)} instead of {(R2*)}. What I am missing is a semantical "transition path" from {(R1*)} to {(R2*)}. Or, alternatively, a "direct" set of semantic conditions in OWL-1.1[Pat], which result in entailments directly from 1.0-style RDF graphs like {(R1*)}. But I do not find such a "transition path" by examining your suggestion, and I don't believe that the alternative idea of a "direct" set of semantic conditions for RDF graphs like {(R1*)} would work. An example for such "direct" semantic conditions would be to reuse within OWL-1.1[Pat] the original OWL-1.0 semantic conditions for cardinality restrictions (I will call such an ontology language "OWL-1.1[Pat+1.0]"). This would probably be a natural idea (the idea of getting OWL-1.1-Full from OWL-1.0-Full by simply extending its set of semantic conditions), but it *won't* work! Because starting, for example, from the QCR (R31) _:x rdf:type owl:QRestriction . (R32) _:x owl:onProperty <hasBodyPart> . (R33) _:x owl:cardinality 2 . (R34) _:x owl11:onClass <Leg> and using the OWL-1.1[Pat] axiom owl:QRestriction rdfs:subClassOf owl:Restriction would OWL-1.1[Pat+1.0]-entail the RDF graph (R31') _:x rdf:type owl:Restriction . (R32') _:x owl:onProperty <hasBodyPart> . (R33') _:x owl:cardinality 2 . (R34') _:x owl11:onClass <Leg> Now, the old 1.0-semantic conditions within OWL-1.1[Pat+1.0] would tell from the sub(!) graph {(R31'),(R32'),(R33')} that _:x is an /un-qualified/ cardinality restriction (see sec. 5.2 in [1], table "Conditions on OWL restrictions", last entry). So we would finally learn that _:x is both a qualified restriction and an un-qualified restriction. And from OWL-1.1[Pat] axiom owl:QRestiction owl:disjointWith owl:UQRestriction we would find that {(R3*)} is an *inconsistent* ontology according to OWL-1.1[Pat+1.0] semantics. So, to conclude, I do not see how your suggested solution warrants OWL-1.0 backwards compatibility. And as I demonstrated above, it will not even be possible to simply /extend/ the existing RDF compatible OWL-1.0 semantics with your suggestion, because this would, in essence, introduce exactly the same problem, as it currently exists for the proposed OWL-1.1 RDF mapping of QCRs. So, after all, I would still feel more comfortable to follow Peter's proposed solution, because for his proposal I do not see any bigger *semantical* problems (at least not at the moment ;-)). Cheers, Michael [1] OWL S&AS - §5: RDF-Compatible Model-Theoretic Semantics http://www.w3.org/TR/owl-semantics/rdfs.html -- Dipl.-Inform. Michael Schneider FZI Forschungszentrum Informatik Karlsruhe Abtl. Information Process Engineering (IPE) Tel : +49-721-9654-726 Fax : +49-721-9654-727 Email: Michael.Schneider@fzi.de Web : http://www.fzi.de/ipe/eng/mitarbeiter.php?id=555 FZI Forschungszentrum Informatik an der Universität Karlsruhe Haid-und-Neu-Str. 10-14, D-76131 Karlsruhe Tel.: +49-721-9654-0, Fax: +49-721-9654-959 Stiftung des bürgerlichen Rechts Az: 14-0563.1 Regierungspräsidium Karlsruhe Vorstand: Rüdiger Dillmann, Michael Flor, Jivka Ovtcharova, Rudi Studer Vorsitzender des Kuratoriums: Ministerialdirigent Günther Leßnerkraus
Received on Monday, 17 December 2007 22:32:51 UTC