- From: Alan Wu <alan.wu@oracle.com>
- Date: Tue, 12 Aug 2008 14:04:24 -0400
- To: Ian Horrocks <ian.horrocks@comlab.ox.ac.uk>
- CC: Ivan Herman <ivan@w3.org>, Michael Schneider <schneid@fzi.de>, public-owl-wg@w3.org
Ian, I have a simple question that needs your confirmation. I thought I was clear but I am now no longer positive. Putting all the disagreement on the semantics aside, if a reasoner implements the rule set as is (nothing more, nothing less), can this reasoner claim that it is OWL RL compliant? Thanks, Zhe Ian Horrocks wrote: > > Ivan, > > This conversation becomes more and more confusing. > > You say that being competitive isn't an argument for you, but then you > say that being able to keeping the rules separate has the 'advantage' > that implementers of those rules would be able to declare themselves > sound and complete w.r.t that semantics. This is exactly the > "competitive" argument. > > Let's just examine this argument in a bit more detail. Motivated by > the needs of large scale applications we introduced a profile suitable > for for rule based implementation. Such implementations are sound for > OWL Full entailments, but not complete for all ontologies/entailments > -- this is a well known trade off that such applications are used to > in order to achieve the scalability they need. Now we say, but > couldn't we "have it all" by inventing a new semantics that > corresponds exactly to the entailments we get from the rules and > declaring ourselves to be sound and complete w.r.t. this semantics? > Brilliant! > > But hang on a minute. This new semantics isn't closely related to the > existing ones, so we can't really argue that they are to all intents > and purposes the same for a large class of ontologies (as we can for > DL and Full) -- such a new semantics would really be a *major* change > to OWL. By way of illustration, this new semantics says that (C and D) > isn't a subclass of D! That doesn't sound good from a wider OWL > interoperability perspective (and that is only the tip of the > iceberg). And if we want the new semantics to at least entail RDFS > axioms, then the rules would have to (potentially) generate infinitely > many triples if they are to be complete. That doesn't sound too good > from a scalability perspective! Of course we could give up on > completeness w.r.t. this new semantics -- but then the justification > for its existence goes out of the window. > > The case against introducing this third semantics seems so glaringly > obvious that I can't believe that I have spent so much time on it. I > really have better things to do, but the prospect of spending the next > several years apologising to people for having produced such a mess > spurs me on. > > Ian > > > > On 12 Aug 2008, at 15:54, Ivan Herman wrote: > >> Ian Horrocks wrote: >>> Ivan, >>> I'm not sure what it means for an implementation to be "perfectly >>> o.k." or "proper". According to what we discussed, implementations >>> based on the OWL RL rules is that they are sound for OWL Full >>> semantics and also complete for query answering (the key entailment >>> in the kinds of application that motivate OWL R) for ontologies >>> inside a given syntactic fragment. This was always clearly stated >>> (see Section 4.4 of the existing spec). >>> >> >> As I said: my mistake not to have realized the full depth of that >> statement. Thanks to Michael for clarifying it (at least for me). >> >> [skip] >>> The only thing that I have heard against this are some >>> strange arguments about OWL RL reasoners not being "competitive" >>> with OWL DL/Full reasoners/semantics. >> >> This was not my argument, or at least not the intention of it:-). >> >> Referring to another mail of yours in the thread[1] I think we >> actually agree on what you called there 'advantage' and >> 'disadvantage'. Yes, keeping the rules separate has the 'advantage' >> that implementers of those rules would be able to declare themselves >> sound and complete w.r.t that semantics. However, we seem disagree on >> the relative weight/importance of those advantages and disadvantages... >> >> One way forward could be to formulate this question in precise manner >> and ask the community, eg, potential RDF implementers and users both >> within and outside the Working Group, to see how they would feel >> about that 'advantage'/'disadvantage', whether that would be a major >> issue (I am thinking about Oracle, HP, OpenLink, Franz Inc, and >> others that I might very well forget in the implementation space, and >> there are a number in the user space, too). We are actually talking >> about marketing type of issues here and, let us face it, we are >> certainly not experts of that... Such a feedback may help us in >> moving forward. >> >> Ivan >> >> >> [1] >> http://www.w3.org/mid/59FCAB86-9A83-4435-A6CE-FB3DCCBFF887@comlab.ox.ac.uk >> >> >> >>> Regards, >>> Ian >>> On 12 Aug 2008, at 09:35, Ivan Herman wrote: >>>> Hi Ian, >>>> >>>> In a thread you started a while ago (after a long discussion on >>>> another thread): >>>> >>>> http://www.w3.org/mid/AEDBB4D5-D0D4-4B0D-8A2B-B308C51E8518@comlab.ox.ac.uk >>>> >>>> >>>> we seemed to converge toward a solution based on first finalizing >>>> the conformance issues. However, _my_ assumption back then was that >>>> if an implementation implements the OWL R Rule set (and _only_ >>>> that), then this would be a perfectly o.k. OWL R implementation for >>>> all those RDF graphs that fall under the OWL R syntactic >>>> restrictions. The issue we had, and for which the thread offered a >>>> good way forward, was what would happen to graphs that fall outside >>>> the syntactic restriction of OWL R. >>>> >>>> However... I was clearly wrong. Michael's example shows that the >>>> Rule set would not provide a proper implementation of OWL R. A >>>> conformant OWL R implementation must do more than just implementing >>>> the rules or, put it another way, an implementation using the rules >>>> only could not claim to be OWL R conformant. This is a different >>>> and pretty serious issue which, I must admit, would make me vote >>>> against unification at this point. >>>> >>>> In another mail Michael says that we should close this issue >>>> without action. Maybe so. At the minimum we should acknowledge that >>>> there is no consensus on this issue at the moment... >>>> >>>> Sigh... >>>> >>>> Ivan >>>> >>>> Ian Horrocks wrote: >>>>> Michael, >>>>> It has never been claimed that OWL R DL and OWL R Full are >>>>> completely equivalent on the syntactic fragment. What is claimed >>>>> (see Section 4.4 of the existing Profiles doc) is that for >>>>> ontologies within the syntactically defined fragment the OWL RL >>>>> rules will be complete w.r.t. certain kinds of entailment -- in >>>>> particular w.r.t. those entailments that correspond to query >>>>> answering. >>>>> Your example is a good illustration of why it would be *a very bad >>>>> idea* to define a 3rd semantics for OWL based on the OWL RL rules. >>>>> According to this semantics, it would NOT be the case that >>>>> owl:intersectionOf (C D) is a subClassOf D. Any reasoner finding >>>>> this entailment would be unsound and non-conformant w.r.t. this >>>>> semantics. This would, IMHO, be highly counter-intuitive. >>>>> Moreover, I expect that many rule based implementations *will* >>>>> find this entailment, or at least answer "yes" to a query asking >>>>> if it holds, because they will use the standard rule-based >>>>> technique for answering such a subsumption query, i.e., assert a >>>>> fresh individual to be an instance of owl:intersectionOf (C D) and >>>>> check if it is entailed that this individual is an instance of D. >>>>> This entailment *will* follow from the rules. >>>>> Regarding the guarantees that are made, guaranteeing soundness and >>>>> completeness w.r.t. OWL RL Full semantics for ontologies in the >>>>> syntactic fragment and certain kinds of entailment seems to be the >>>>> best that we can do -- as you yourself have clearly illustrated. I >>>>> don't pretend to fully understand your statements about reasoners >>>>> based on subsets of the OWL RL rules, but they seem to be based on >>>>> a misunderstanding about what is being stated w.r.t. soundness and >>>>> completeness, and on some strange assumptions about how >>>>> conformance will be defined. >>>>> Regards, >>>>> Ian >>>>> On 10 Aug 2008, at 15:45, Michael Schneider wrote: >>>>>> Dear WG! >>>>>> >>>>>> I was able to find an example, which demonstrates that the >>>>>> semantics of OWL R DL and OWL R Full differ on the syntactic >>>>>> fragment of a unified OWL R language (see below). The example >>>>>> shows that entailments exist w.r.t. the semantics of OWL R DL >>>>>> (actually, the OWL 2 DL semantics), for which there is no >>>>>> equivalent sequence of rule applications in OWL R Full. This >>>>>> means that the semantics of OWL R ontologies, which match the >>>>>> syntactic fragment of OWL R, cannot be defined in parallel by >>>>>> both the DL semantics *and* the ruleset. >>>>>> >>>>>> An alternative approach would be to define the semantics of OWL R >>>>>> on the syntactic fragment by the OWL 2 DL semantics only. >>>>>> However, I would expect that this would lead to significant >>>>>> acceptance problems for implementers, who want to base the >>>>>> implementation of their OWL R reasoner on the OWL R ruleset (and >>>>>> for customers/users of such reasoners, either). >>>>>> >>>>>> An implementer, who plans to create a reasoner based on the >>>>>> ruleset, certainly wants to be ensured that his reasoner >>>>>> implements *all* of OWL R, not only a subset, i.e. is complete >>>>>> w.r.t. the OWL R semantics. It would at least be very confusing >>>>>> and hard to accept that it is not sufficient to just implement >>>>>> the "OWL R rules", in order to create a complete OWL R reasoner. >>>>>> But with my counter example, it now turns out that completeness >>>>>> will not be achievable for such a rulebased reasoner. >>>>>> >>>>>> Even worse, having such a concrete counter example makes it easy >>>>>> to create a proper *superset* of the current ruleset, which will >>>>>> still be sound w.r.t. the OWL R semantics. This means that the >>>>>> implementer cannot even claim that his reasoner is at least the >>>>>> "best possible" triple-rule based implementation of OWL R. >>>>>> >>>>>> The only thing which the implementer can claim is that his >>>>>> reasoner is a "valid" OWL R reasoner, i.e. is sound w.r.t. the >>>>>> OWL R semantics. But this will also be the case for any reasoner, >>>>>> which is based on an arbitrary *subset* of the OWL R rules, and >>>>>> even for trivial reasoners, which do not produce any inferences >>>>>> at all. So, OWL R soundness alone isn't a very interesting >>>>>> property of an OWL R reasoner in practice. >>>>>> >>>>>>> From this p.o.v., I would expect that, after a unification, >>>>>>> implementers will not regard the OWL R ruleset to be relevant as >>>>>>> a base for the implementation of OWL R reasoners. IMO, the OWL R >>>>>>> rules will then be no more than just an arbitrary example for >>>>>>> how one MAY create a valid OWL R reasoner. Without completeness >>>>>>> guarantees, this ruleset won't be better than any other ruleset >>>>>>> which provides formal OWL R soundness. Compared with the >>>>>>> ruleset's current status in OWL R Full, where it specifies the >>>>>>> semantics of the language, this would be a significant demotion. >>>>>> >>>>>> * * * >>>>>> >>>>>> The example below is not simply a bug in the current ruleset, >>>>>> which could easily be fixed. Instead, it shows two general problems: >>>>>> >>>>>> (1) The ruleset would need to be able to create fresh bNodes on >>>>>> the right hand side of derivations. To my understanding, it was a >>>>>> design goal to avoid this. At least, none of the current rules >>>>>> creates such new bNodes on the consequent side. >>>>>> >>>>>> (2) Since the semantics of the current OWL R DL language is the >>>>>> DL semantics, it allows for very flexible reasoning with complex >>>>>> class expressions, as long as an ontology conforms to OWL R DL's >>>>>> syntactic restrictions. The current triple ruleset isn't able to >>>>>> compete with this amount of flexibility. And don't believe that >>>>>> this can be overcome. >>>>>> >>>>>> Here is the example. We start from the RDF graph >>>>>> >>>>>> G_L := { >>>>>> ex:C rdf:type owl:Class . >>>>>> ex:D rdf:type owl:Class . >>>>>> ex:C rdfs:subClassOf ex:D . >>>>>> } >>>>>> >>>>>> This is a valid OWL R DL ontology in RDF graph form, since only >>>>>> named >>>>>> classes are used on the LHS and RHS of the subclass axiom (see >>>>>> sec. 4.2.3 >>>>>> of [1]). >>>>>> >>>>>> The second RDF graph is >>>>>> >>>>>> G_R := { >>>>>> ex:C rdf:type owl:Class . >>>>>> ex:D rdf:type owl:Class . >>>>>> _:X owl:intersectionOf ( ex:C ex:D ) . >>>>>> _:X rdfs:subClassOf ex:D . >>>>>> } >>>>>> >>>>>> Again, this is a valid OWL R DL ontology, because this graph >>>>>> RDF-maps to the >>>>>> following expression in Functional Syntax (omitting declarations): >>>>>> >>>>>> SubClassOf( IntersectionOf(ex:C ex:D) ex:D ) >>>>>> >>>>>> According to sec. 4.2.3 of [1], intersections of named classes >>>>>> may occur on >>>>>> the LHS of subclass axioms. >>>>>> >>>>>> The semantic meaning of these two graphs is given in OWL R DL by >>>>>> applying >>>>>> the OWL 2 DL semantics. According to the OWL 2 DL semantics, the >>>>>> entailment >>>>>> >>>>>> G_L |= G_R >>>>>> >>>>>> is true, because from >>>>>> >>>>>> C subset D >>>>>> >>>>>> follows >>>>>> >>>>>> (C and D) subset D >>>>>> >>>>>> However, there is no sequence of applications of OWL R Full >>>>>> rules, which >>>>>> starts in G_L, and which produces G_R (or a super graph of G_R) >>>>>> as a result. >>>>>> Actually, there is no single triple rule in OWL R Full that would >>>>>> allow to >>>>>> produce the bNode '_:X', which occurs in G_R but not in G_L. >>>>>> >>>>>> Regards, >>>>>> Michael >>>>>> >>>>>> [1] <http://www.w3.org/2007/OWL/wiki/Profiles#Class_Expressions_3> >>>>>> >>>>>> -- >>>>>> 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 >>>>>> >>>> >>>> -- >>>> >>>> Ivan Herman, W3C Semantic Web Activity Lead >>>> Home: http://www.w3.org/People/Ivan/ >>>> PGP Key: http://www.ivan-herman.net/pgpkey.html >>>> FOAF: http://www.ivan-herman.net/foaf.rdf >>>> >> >> -- >> >> Ivan Herman, W3C Semantic Web Activity Lead >> Home: http://www.w3.org/People/Ivan/ >> PGP Key: http://www.ivan-herman.net/pgpkey.html >> FOAF: http://www.ivan-herman.net/foaf.rdf >> > >
Received on Tuesday, 12 August 2008 18:07:20 UTC