W3C home > Mailing lists > Public > public-owl-wg@w3.org > August 2008

Re: ISSUE 131 (OWL R Unification): Different semantics on syntactic fragment

From: Jim Hendler <hendler@cs.rpi.edu>
Date: Tue, 12 Aug 2008 20:00:21 -0400
Cc: Ivan Herman <ivan@w3.org>, Michael Schneider <schneid@fzi.de>, public-owl-wg@w3.org
Message-Id: <F09DB479-085A-4D0F-B7E3-CF1361E4FFBF@cs.rpi.edu>
To: Ian Horrocks <ian.horrocks@comlab.ox.ac.uk>

Ian, I assume that in this message you are taking off your chair hat?   
Otherwise, I'd be tempted to ask if the chair really is neutral on  

On Aug 12, 2008, at 1:11 PM, 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

"If we knew what we were doing, it wouldn't be called research, would  
it?." - Albert Einstein

Prof James Hendler				http://www.cs.rpi.edu/~hendler
Tetherless World Constellation Chair
Computer Science Dept
Rensselaer Polytechnic Institute, Troy NY 12180
Received on Wednesday, 13 August 2008 00:01:06 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 6 January 2015 21:42:06 UTC