I see two problems with the boolean constants true and false:
1. They cannot be used in an XPath expression -- cannot be distinguished
from child::true and child::false
2. boolean('false') is true. This is especially confusing and may be the
source of many programmers' headaches.
Because of these I chose in my code to use functions returning xs:integer (0
and 1) and for templates to write code like the following:
<xsl:template name="And" match="*[namespace-uri()='allTrue-And']">
<xsl:param name="arg1"/>
<xsl:param name="arg2"/>
<xsl:value-of select="number(number($arg1) and number($arg2))"/>
</xsl:template>
Am I wrong? Is there a way to overcome the above problems?
=====
Cheers,
Dimitre Novatchev.
http://fxsl.sourceforge.net/ -- the home of FXSL
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list