From: Boris Motik <boris.motik@comlab.ox.ac.uk>

Date: Tue, 1 Jul 2008 13:15:36 +0100

To: "'OWL Working Group WG'" <public-owl-wg@w3.org>

Message-ID: <002001c8db74$2afe5760$7212a8c0@wolf>

Date: Tue, 1 Jul 2008 13:15:36 +0100

To: "'OWL Working Group WG'" <public-owl-wg@w3.org>

Message-ID: <002001c8db74$2afe5760$7212a8c0@wolf>

Hello, Here is a proposal, inspired by Alan's earlier observations, for resolving this issue. 1. We introduce the owl:real datatype with the value space of all real numbers. We don't add any constants of the form owl:real. 2. We introduce the owl:rational datatype with the value space of all rational numbers. We add a constant for each rational number along the lines of http://www.w3.org/2007/OWL/wiki/OWL_Rational. Thus, we would be able to write things such as "1/3"^^owl:rational or even "1/1"^^owl:rational. 3. We leave xsd:integer and all the derived types as they are. Thus, "1"^xsd:integer is still valid as usual. 4. We make xsd:double the subset of real numbers between the minimal double and the maximal double number. We do the same for xsd:float. All constants are the same as in XML Schema; thus, "1"^^float and "1.0"^^float are all the same constants. We disallow the NaN (not-a-number) constant (allowing NaN would make owl:double not a subset of owl:real). We are thus staying "almost" true to XML Schema, in thatwe have exactly the same set of constants as in XML Schema. The main change is that, in order to facilitate simpler implementations, we make the extension of xsd:double and xsd:float continuous rather than discrete. 5. We make xsd:decimal the subset of owl:real and we leave all constants as they are. Thus, "1.0"^^xsd:decimal is still a valid constant in OWL. 6. We disallow the "pattern" facet on all numeric datatypes. As I explained in my last e-mail, two constants can be different even though they denote the same value. This elegantly solves the problems that Alan mentioned in his last e-mail. For example, if the ontology initially contains "1.0"^^xsd:float, this would be read into a constant whose lexical representation is "1.0" and whose URI is xsd:float. Thus, if you write the ontology back from the structural spec, the constant would be written out as "1.0"^^xsd:float, and thus the form of the ontology would be preserved. The only thing that changes really is that we'd say that the extensions of xsd:double and xsd:float are continuous and not discrete, and we'd tweak them (e.g., by removing NaN) to make them subsets of owl:real. Please let me know how you feel about this. Regards, BorisReceived on Tuesday, 1 July 2008 12:17:14 UTC

*
This archive was generated by hypermail 2.3.1
: Tuesday, 6 January 2015 21:42:05 UTC
*