Name
xs:double — IEEE 64 bit floating point.
Derived from:
xs:anySimpleType
Primary:
xs:double
Known subtypes:
none
Facets:
xs:enumeration, xs:maxExclusive, xs:maxInclusive, xs:minExclusive, xs:minInclusive, xs:pattern, xs:whiteSpace
<xs:simpleType name="double" id="double"> <xs:restriction base="xs:anySimpleType"> <xs:whiteSpace value="collapse" fixed="true"/> </xs:restriction> </xs:simpleType>
Description
The value space of xs:double
is
“double” (64 bits) floating-point
numbers as defined by the IEEE. The lexical space uses a decimal
format with optional scientific notation. The match between lexical
(powers of 10) and value (powers of 2) spaces is approximate and done
on the closest value.
This datatype differentiates positive (0) and negative (-0) zeros, and includes the special values “-INF” (negative infinity), “INF” (positive infinity) and “NaN” (Not a Number).
Note that the lexical spaces of xs:float
and
xs:double
are exactly the same; the only
difference is the precision used to convert the values in the value
space.
Restrictions
The decimal separator is always a point (“.”) and no thousands separator may be used.
Examples
Valid values include: "123.456"
,
"+1234.456"
, "-1.2344e56"
,
"-.45E-6"
, "INF"
,
"-INF"
, or "NaN"
.
The following values would be invalid: "1234.4E 56"
(spaces are forbidden), "1E+2.5"
(the power of 10 must be an integer), "+INF"
(positive infinity doesn’t expect a sign), or
"NAN"
(capitalization matters in special values).
Get XML Schema now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.