promote doubles to decimals

Section 3.3 of the functions and operators draft states:

|decimal| may be promoted to |float|, and |float| may be promoted to 
|double|.

This strikes me as backwards. decimal is a broader type than double. For 
instance, there is no maximum size for a decimal, whereas there is a 
maximum size for a double. double and float should be promoted to 
decimal when necessary, not decimal to float.

The schema data types spec requires implementations to support at least 
18 decimal digits for decimals. I need to work out the math, but off the 
top of my head and with a quick Google search which turned up 
http://lists.w3.org/Archives/Public/www-xml-schema-comments/2000JulSep/0187.html 
I think that even a double only gives you about 14 decimal digits of 
precision.


-- 
+-----------------------+------------------------+-------------------+
| Elliotte Rusty Harold | elharo@metalab.unc.edu | Writer/Programmer |
+-----------------------+------------------------+-------------------+
| The XML Bible, 2nd Edition (IDG Books, 2001)                       |
| http://www.cafeconleche.org/books/bible2/                          |
| http://www.amazon.com/exec/obidos/ISBN=0764547607/cafeaulaitA/     |
+----------------------------------+---------------------------------+
| Read Cafe au Lait for Java News: http://www.cafeaulait.org/        |
| Read Cafe con Leche for XML News: http://www.cafeconleche.org/     |
+----------------------------------+---------------------------------+

Received on Thursday, 21 March 2002 08:46:49 UTC