Re: ISSUE-126 (Revisit Datatypes): A new proposal for the real <-> float <-> double conundrum

Just to be clear, I'm not, personally, settled on this issue. I have  
a strong personal bias toward the IEEE semantics for float and double  
for a variety of reasons. I also do like to be backwards compatible  
(which helps motivate keeping the disjointness... at least Pellet  
followed that and I have seen users depending on that behavior).

I also believe, obviously, that having a proper real type is also  
quite important for a variety of reasons. The precise syntax and  
semantics of that type needs to be decided in light of a wide variety  
of considerations.

So, I'm pretty strongly against using float and double as synonyms  
for each other and for real (for backward compatibility, and for the  
given semantics). I'm leary about making them dense if people are  
indicating that they want things like NaN since that suggests that,  
ultimately, we should reserve these types for their IEEE semantics.  
 From an education point of view, we can tell users "Unless you care  
about IEEE semantics, please *don't* use floats of doubles, but use  
owl:real instead). If people want to spell their reals using a  
certain syntax, we can support that at the lexical level. If they  
want to throw syntax errors if their numbers are spelt some other  
ways, well, that's an argument for the pattern facet.

I'd rather not support them at all until someone is willing to  
investigate the sort of equation support would be useful for them (if  
any). It seems like it would be much worse if later we had to  
introduce owl:IEEEFloat and owl:IEEEDouble (but maybe not?) Of  
course, if we're stuck doing that for legacy reasons, oh well, we are.

If we're going to make them synonyms, I'd rather do that with a  
preprocessor that explicitly did the rewrite (i.e., replacing  
xsd:float with owl:real). I would hope that a validator or lint too  
would suggest that change.

Cheers,
Bijan.

Received on Saturday, 5 July 2008 10:39:57 UTC