- From: Ian Horrocks <ian.horrocks@comlab.ox.ac.uk>
- Date: Tue, 12 Aug 2008 19:32:12 +0100
- To: Alan Wu <alan.wu@oracle.com>
- Cc: Ivan Herman <ivan@w3.org>, Michael Schneider <schneid@fzi.de>, public-owl-wg@w3.org
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