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

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

From: Alan Wu <alan.wu@oracle.com>
Date: Tue, 12 Aug 2008 14:04:24 -0400
Message-ID: <48A1D0A8.1060008@oracle.com>
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 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Tuesday, 12 August 2008 18:07:21 GMT