W3C home > Mailing lists > Public > public-owl-wg@w3.org > May 2008

RE: ISSUE-124 (datarange complement): The complement of a datarange is defined relative to the whole data domain

From: Boris Motik <boris.motik@comlab.ox.ac.uk>
Date: Wed, 21 May 2008 20:12:32 +0100
To: "'Evan Wallace'" <ewallace@cme.nist.gov>, "'Web Ontology Language \(\(OWL\)\) Working Group WG'" <public-owl-wg@w3.org>
Message-ID: <003701c8bb76$9eae3090$4012a8c0@wolf>

Hello,

Complemented data ranges occur implicitly in an ontology if they occur on the LHS of implications. Here is an example:

(1) SubClassOf(
      SomeValuesFrom( R DatatypeRestriction( xsd:integer minInclusive 5) )
      A
    )

Here, the data range DatatypeRestriction( xsd:integer minInclusive 5) occurs on the LHS. In logic, you can shift things from the LHS
to the RHS of implication by negating the class. Thus, this axiom is equivalent to the following axiom:

(2) SubClassOf(
      owl:Thing
      UnionOf(
        AllValuesFrom( R ComplementOf( DatatypeRestriction( xsd:integer minInclusive 5) ) )
        A
      )
    )

Here,

(3)  AllValuesFrom( R ComplementOf( DatatypeRestriction( xsd:integer minInclusive 5) ) )

was obtained by complementing

(4)   SomeValuesFrom( R DatatypeRestriction( xsd:integer minInclusive 5) ).

Now here is the crux: if the semantics of data ranges were not defined w.r.t. the entire domain, then these two concepts would not
be negations of each other. This would be bad: some straightforward and well-known transformations that usually generate equivalent
ontologies would in our case not be applicable.


Furthermore, whether you like it or not, the meaning of (1) axiom is in fact equivalent to (2), even if you don't see an explicit
negation in it. For example, assume that you also had the following assertions:

(5) PropertyAssertion( R ind "bla" )
(6) ClassAssertion( ComplementOf( A ) ind )

Axioms (1)+(5)+(6) are intuitively satisfiable: assertion (5) does not "fire" the rule (1), so we don't derive ind to be an instance
of A, which is consistent with (6). So far so good: this is what we want.


Now consider what would happen if we interpreted the complemented data range in (2) w.r.t. xsd:integer and not w.r.t. the whole
domain. Because of (6), the following axiom must hold:

(7) ClassAssertion(
      AllValuesFrom( R ComplementOf( DatatypeRestriction( xsd:integer minInclusive 5) ) )
      ind
    )

But if we interpreted the complement w.r.t. xsd:integer, then (7) would be equivalent to the following:

(8) ClassAssertion(
      AllValuesFrom( R DatatypeRestriction( xsd:integer maxInclusive 4) )
      ind
    )

But this axiom is invalidated because of (5): ind is connected by R to "bla", which is not an integer smaller than 4! Hence, (5)+(8)
is unsatisfiable, which would suggest that (5)+(6)+(2) is unsatisfiable. Thus, turning (1) into (2) -- a quite common operation in
logic -- affects the satisfiability of our ontology; well, this IS bad!

The moral of this is that, even though you don't see ComplementOf in (1), this complement is implicitly present and the axiom is in
fact equivalent to (2).





Now here is what I believe this is not an issue in practice. A typical ontology would contain an explicit specification of the range
of R:

(9) PropertyRange( R xsd:integer )

This axiom now eliminates the "not integer" possibility in (3), which effectively gives you the desired behavior.

In our example, (9)+(5) is unsatisfiable, which is good: the unsatisfiability is now there from the beginning and is not affected by
equivalent transformations.


I hope that this clarifies this issue.

Regards,

	Boris 


> -----Original Message-----
> From: Evan Wallace [mailto:ewallace@cme.nist.gov]
> Sent: 21 May 2008 19:03
> To: boris.motik@comlab.ox.ac.uk; Web Ontology Language ((OWL)) Working Group WG
> Subject: RE: ISSUE-124 (datarange complement): The complement of a datarange is defined relative to
> the whole data domain
> 
> 
> Boris wrote:
> 
> > I really do not expect people to use complemented data ranges directly. Furthermore, if your
> ontology contains range constraints on
> > all data properties, then the complement of data ranges really becomes relative to the datatype of
> the data range. Most ontologies
> > really do contain appropriate range constraints for data properties, so this problem will not be
> visible.
> Can you elaborate on this perhaps with an example?
> 
> -Evan
Received on Wednesday, 21 May 2008 19:14:10 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Wednesday, 21 May 2008 19:14:12 GMT