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

This is a question about conformance that the working group has yet  
to discuss in detail and make a decision on, so I can't give the  
absolute YES answer that I would like to give.

However, my hope and expectation is that conformance for OWL RL will  
be defined such that a reasoner is conformant if it is sound w.r.t.  
the OWL Full/RDF semantics, and is complete w.r.t. the entailments  
derived using the rule set. A reasoner of the kind you describe is  
trivially complete for entailments derived using the rule set, and  
also is trivially sound w.r.t. the OWL Full/RDF semantics; it would  
therefore be a conformant (compliant if you prefer) OWL RL reasoner.

I also thought that this was clear, but recently things seem to have  
become a little confused :-)

Ian




On 12 Aug 2008, at 19:04, Alan Wu wrote:

> 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:32:59 UTC