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


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?  

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.


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] 
>> 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):
>>> 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] <>
>>>>> -- 
>>>>> Dipl.-Inform. Michael Schneider
>>>>> FZI Forschungszentrum Informatik Karlsruhe
>>>>> Abtl. Information Process Engineering (IPE)
>>>>> Tel  : +49-721-9654-726
>>>>> Fax  : +49-721-9654-727
>>>>> Email:
>>>>> Web  :
>>>>> 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:
>>> PGP Key:
>>> FOAF:
> -- 
> Ivan Herman, W3C Semantic Web Activity Lead
> Home:
> PGP Key:

Received on Tuesday, 12 August 2008 17:12:14 UTC