Book HomeXSLSearch this book

B.5. Datatypes

XPath and XSLT define five datatypes, listed here. The result tree fragment type is defined by XSLT and is specific to transformations; the other four are defined by XPath and are generic to any technology that uses XPath. The four XPath datatypes are tersely defined in Section 1 of the XPath specification; section 11.1 of the XSLT specification defines result tree fragments.

node-set
A set of nodes. The set can be empty, or it can contain any number of nodes.

boolean
The value true or false. Be aware that the strings true and false have no special meaning or value in XPath. If you need to use the boolean values themselves, use the functions true() and false().

number
A floating-point number. All numbers in XPath and XSLT are implemented as floating-point numbers; the integer or int datatype does not exist in XPath and XSLT. To be specific, all numbers are implemented as IEEE 754 floating-point numbers, the same standard used by the Java float and double primitive types. In addition to ordinary numbers, there are five special values for numbers: positive and negative infinity, positive and negative zero, and NaN, the special symbol for anything that is not a number.

string
Zero or more characters, as defined in the XML specification.

result tree fragment
A temporary tree. You can create one with an <xsl:variable> element that uses content (instead of the select attribute) to initialize its value. A result tree fragment can be copied to the result tree with the <xsl:copy-of> element. It may also be converted to a string with the <xsl:value-of> element.



Library Navigation Links

Copyright © 2002 O'Reilly & Associates. All rights reserved.