- From: Rob Shearer <rob.shearer@comlab.ox.ac.uk>
- Date: Fri, 4 Jul 2008 17:46:07 +0100
- To: public-webont-comments@w3.org
- Message-Id: <6FA565C9-E709-49E8-A29E-D9E778FCD115@comlab.ox.ac.uk>
This message is in regard to the discussion related to [this](http://lists.w3.org/Archives/Public/public-owl-wg/2008Jul/0101.html ). When I was implementing the Cerebra OWL reasoner, I came to the firm conclusion that the OWL (1.0) spec was downright broken on this point, and I fear we're in danger of breaking OWL 2.0 in exactly the same way. Putting aside the issue of whether or not it's possible to use (only) the XML Schema datatypes to represent meaningful and implementable OWL datatype value spaces, I expect that there is consensus that when users were writing `xsd:float` and `xsd:double` without values in OWL 1.0, what they really meant was "any number". No user ever intended to restrict the semantic space to a nowhere-dense number line. If the OWL spec presupposes that most of our users would a prefer a number line which does not include 1/3, my choice as an implementor would be to once again ignore the spec and be intentionally non-compliant. Doing what all my users want and expect in this case turns out to be way way easier than doing what a broken spec would require. Any working group who would produce such a spec would clearly be putting their own interests (ease of spec authoring and political considerations) above their duty to their intended users. (Note that in the course of the discussion I read on public-owl-wg the notions of "dense" and "continuous" seem to have become confused. I think the notion of density is probably the only one that makes a difference in terms of current OWL semantics, since number restrictions can cause inconsistencies in non-dense number lines, but continuity is really what users have in their heads.) The [XML Schema datatype spec](http://www.w3.org/TR/xmlschema-2/) is focused on representing particular values, not on classes of values. The notion of "value spaces" is used within the spec, but only in service of representation of values---note that there's not a single value space mentioned which is continuous with respect to the reals, nor are such notions as "rationals" defined. This makes sense in terms of data serialization (the driving XML use case) and standard programming languages (where manipulation of values is the driving use case), but OWL is in a very different situation. The primary OWL use case is reasoning about the emptiness (or size) of value spaces, and the definitions provided in the XML Schema spec do not serve this purpose well. Note that I'm not saying XML Schema is a bad spec; merely that it addresses different problems than we have. I strongly encourage the working group to publish a spec which provides for the following types of semantic spaces: 1. A countably infinite, nowhere-dense datatype. I.e. the integers. 2. A countably infinite, dense datatype. I.e. strings. 3. An uncountably infinite, dense, continuous datatype. I.e. the reals. I don't particularly care what each of these three is called; as long as OWL specifies the internal semantics of these three types of spaces, then it's straightforward to "implement" the datatypes users will actually want in terms of them. But, of course, the ability to use XML Schema Datatypes to encode specific values within each of these spaces would be quite convenient---and would use the XML Schema specification for *exactly* what it's good at. -rob
Attachments
- application/pkcs7-signature attachment: smime.p7s
Received on Friday, 4 July 2008 18:11:56 UTC