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

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

http://www.w3.org/2007/OWL/tracker/issues/

Raised by: Michael Schneider
On product: 

The current OWL 2 DL semantics of datarange complements is according to [1]:

    ComplementOf(DR) = DataDomain \ DR 

i.e. the set of all existing datavalues from rdfs:Literal, except the values specified by the datarange.

For example:

    ComplementOf(
        DatatypeRestriction(
            xsd:nonNegativeInteger 
            minExclusive 18
        )
    )

is not only the set of all non-negative integers >= 18, but this set also contains all strings, floats, and even all integers, since the datatype xsd:integer is disjoint from xsd:nonNegativeInteger.

I suggest to change the semantics of datarange complements to:

  ComplementOf(DR) = EnclosingDataType \ DR

With this change, the example complement above would exclusively contain all non-negative integers >= 18.

As a special case, the complement of a complete datatype would be the empty datarange, e.g.

  ComplementOf(xsd:nonNegativeInteger) = {}


[1] <http://www.w3.org/2007/OWL/wiki/Semantics#Data_Range_Expressions>

Received on Sunday, 4 May 2008 20:38:53 UTC