- From: Boris Motik <boris.motik@comlab.ox.ac.uk>
- Date: Sun, 4 May 2008 22:49:14 +0100
- To: "'OWL Working Group WG'" <public-owl-wg@w3.org>
Hello,
Unfortunately, this is a "feature" and not a bug. Complements of data ranges are included into OWL 2 mainly in order to provide
everything that is needed for reasoning: during reasoning, all concepts involving datatypes must be put into conjunctive normal
form, and this cannot be done unless we have data ranges. But then, the complement of data ranges *must* be defined w.r.t. the whole
domain, and not just the datatype being complemented; otherwise, using ComplementOf in order to put constructs into negation normal
form would be unsound.
Therefore, this is somewhat unfortunate, but we have to live with it, I'm afraid.
Regards,
Boris
> -----Original Message-----
> From: public-owl-wg-request@w3.org [mailto:public-owl-wg-request@w3.org] On Behalf Of OWL Working
> Group Issue Tracker
> Sent: 04 May 2008 21:38
> To: public-owl-wg@w3.org
> Subject: 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 21:50:49 UTC