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