W3C home > Mailing lists > Public > public-owl-dev@w3.org > October to December 2007

[OWLWG-COMMENT] Example why current RDF mapping for QCRs might hurt OWL-1.1-Full [Re: PROPOSAL to close ISSUE-68]

From: Michael Schneider <schneid@fzi.de>
Date: Sun, 16 Dec 2007 22:43:16 +0100
Message-ID: <0EF30CAA69519C4CB91D01481AEA06A05A5C9B@judith.fzi.de>
To: "Owl Dev" <public-owl-dev@w3.org>, "Jim Hendler" <hendler@cs.rpi.edu>
Cc: <pfps@research.bell-labs.com>, <ian.horrocks@comlab.ox.ac.uk>, <alanruttenberg@gmail.com>

[ public comment to discussion in OWL-WG;
also posted to involved WG members ]

Jim Hendler wrote on Thu, 13 Dec 2007
in <http://lists.w3.org/Archives/Public/public-owl-wg/2007Dec/0176.html>
within thread "Re: PROPOSAL to close ISSUE-68"

> I  would not be happy with  this solution - it creates yet more,  
> seemingly unecessary terms, and it also was, in DAML days, the single  
> feature name that confused the most people - I thought we were  
> proposing a clean solution that didn't require creating a new  
> syntactic feature, this is quite different - so I oppose closing this  
> issue with Peter's suggested solution.
>   -JH
> On Dec 13, 2007, at 11:27 AM, Peter F. Patel-Schneider wrote:
>> ISSUE-68 has to do with a nonmonotonicity in the mapping rules for
>> qualified cardinality restrictions.  As pointed out in several places
>> this can be alleviated by using the DAML+OIL solution of having a
>> different property for qualified cardinalities.
>> I thus propose using
>> owl:minCardinalityQ
>> owl:maxCardinalityQ
>> owl:cardinalityQ
>> just as in DAML+OIL and close the issue with this change.
>> Peter F. Patel-Schneider
>> Bell Labs Research
>> PS:  Just about any name could be used, but this one has historical
>>      antecedents.
> "If we knew what we were doing, it wouldn't be called research, would  
> it?." - Albert Einstein
> Prof James Hendler
> Tetherless World Constellation Chair
> Computer Science Dept
> Rensselaer Polytechnic Institute, Troy NY 12180

Hi Jim!

Peter has already pointed out in another thread a serious problem for
OWL-1.1-Full arising from the current RDF mapping of QCRs:

  QCR problem in OWL 1.1 Full - action ?? from F2F

And I had found a second problem with the same RDF mapping, which might at
least lead to non-desirable effects:


Both problems are easily solved by Peter's proposed change to the RDF

Based on Peter's finding, I want to give an example in this mail, which
shows what severe consequences it may have for OWL-1.1-Full, if the WG
sticks to the current RDF mapping for QCRs.

Let's regard the following OWL-1.1-DL ontology in Functional Syntax, which
makes use of QCRs:

  (A1) SubClassOf(Human ObjectExactCardinality(2 hasBodyPart Leg))
  (A2) SubClassOf(Dog ObjectExactCardinality(2 hasBodyPart Ear))
  (A3) SubClassOf(Dog ObjectExactCardinality(4 hasBodyPart Leg))
  (A4) ClassAssertion(pluto Dog)

In natural English: 

  "A human has exactly two legs as body parts (A1), 
  while a dog has two ears (A2) and four legs (A3). 
  There is also some dog named 'Pluto' (A4)."

It is clear that this ontology will be satisfiable in OWL-1.1-DL. I will
show that the current RDF mapping of QCRs translates this ontology into an
RDF graph, which will most likely be *inconsistent* under OWL-1.1-Full
semantics. Note that the above ontology does not look very contrieved, so I
expect that the problem shown below will hit many OWL-1.1-Full ontologies.

Here is my reasoning why the above ontology will probably be inconsistent
under OWL-1.1-Full semantics:

The RDF translation for axiom (A1) is, under the current RDF mapping for
QCRs, given by (leaving out obvious typing triples):

  (R11) <Human> rdfs:subClassOf _:x .

  (R12) _:x rdf:type owl:Restriction .
  (R13) _:x owl:onProperty <hasBodyPart> . 
  (R14) _:x owl:cardinality 2 .
  (R15) _:x owl11:onClass <Leg> .

As Peter has already pointed out, the RDF graph {(R12),(R13),(R14)} is
itself the RDF translation of an *other* OWL construct, which is an
UN-qualified cardinality restriction on property 'hasBodyPart'. For this sub
graph, there already exists an OWL-1.0-Full semantic condition, given in
sec. 5.3 of [1], table "Conditions on OWL restrictions", which in essence is
defined to be:

        r owl:onProperty p .
        r owl:cardinality n . 
        CEXT(r) = { x : card({y: x p y}) = n }

This semantic condition tells that if there exists an (un-qualified!)
"=n"-cardinality restriction r on some property p in an RDF graph, then the
/class extension/ of r ("CEXT(r)") equals to the set of all instances x
which have exactly n ocurrences of property p assigned to them.

So given that (S-CARD) is reused in OWL-1.1-Full (what I regard to be very
likely), we will receive from the RDF graph {(R1*)} the following

  (E1) CEXT(_:x) = { x : card({y: x hasBodyPart y}) = 2 }

Now, OWL-1.1-Full will have to contain an additional semantic condition for
handling QCRs, and I strongly believe that such a semantic condition will
have the following form:

        r owl:onProperty p .
        r owl:cardinality n . 
        r owl11:onClass c . 
        CEXT(r) = { x : card({y: x p y AND y rdf:type c}) = n }  

In this case, we will receive the following /additional/ entailment from the
RDF graph {(R1*)}:

  (E2) CEXT(_:x) = { x : card({y: x hasBodyPart y AND y rdf:type Leg}) = 2 }

Taken together, entailments (E1) and (E2) tell that 

  (E3) { x : card({y: x hasBodyPart y}) = 2 }
       = CEXT(_:x) =
       { x : card({y: x hasBodyPart y AND y rdf:type Leg}) = 2 }

This alone looks odd, and it is in essence, AFAICT, what Peter was about in
his original mail. However, (E3) alone is still satisfiable under specific

But let's now look at axiom (A2): With an analog argumentation as for (A1)
we receive the following set equality:

  (E4) { x : card({y: x hasBodyPart y}) = 2 }
       = CEXT(_:y) =
       { x : card({y: x hasBodyPart y AND y rdf:type Ear}) = 2 }  

where '_:y' denotes the cardinality restriction used in (A2), after being
translated into an RDF graph. Note that '_:y' is a different bNode from
'_:x', so it /may/ denote a different restriction class.

But looking closer to (E3) and (E4) reveals, that the respective left hand
sides of these equations are the /same/ in both cases. So we learn:

  (E5) CEXT(_:x) = CEXT(_:y)

Now, looking again into sec. 5.2 of [1], table "Characteristics of OWL
vocabulary related to equivalence", first entry, we see that the following
semantic condition holds (please mind the "iff" in the right table header!):

      CEXT(x) = CEXT(y), for classes ("IOC") x and y
      x owl:equivalentClass y 
     ("<x,y> IN EXT_I(S_I(E))" with E := "owl:equivalentClass")

Thus, from (E5) and (S-EQUIV) we obtain:

  (E6) _:x owl:equivalentClass _:y .

And this means that the two QCRs from axioms (A1) and (A2) are actually
equivalent classes. Or in English:

  "Everything which has exactly two ears 
  also has exactly two legs, and vice versa."

So axiom (A2) is semantically OWL-1.1-Full equivalent to (in Functional
Syntax for easy read, but assume it were given in RDF instead):

  (A2') SubClassOf(Dog ObjectExactCardinality(2 hasBodyPart Leg))

The QCR in (A2') is obviously disjoint from the QCR in (A3), so class Dog,
being a subclass of both QCRs, turns out to be empty:

  (E7) <Dog> rdfs:subClassOf owl:Nothing .

And by stating through (A4) that Pluto is a Dog, we see that our ontology is
inconsistent in OWL-1.1-Full:

  (E8) <Pluto> rdf:type owl:Nothing .


[1] OWL S&AS - §5: RDF-Compatible Model-Theoretic Semantics

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
Received on Sunday, 16 December 2007 21:43:30 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 6 January 2015 20:58:16 UTC