The value of your variable "simple" is a document node. If you want a string,
use
<xsl:variable name="simple" select="'string'"/>
or
<xsl:variable name="simple" as="xs:string">
simple
</xsl:variable>
Using xsl:variable with content (usually via an xsl:value-of instruction) when
you want a simple string (or other atomic value) is probably the most common
bad habit in XSLT.
In many contexts when a string is needed, you can pass a document node and its
string value will be extracted. But creating a document node is far more
expensive, and it doesn't work if you pass it to a function where the expected
type is more general than xs:string.
Michael Kay
Saxonica
--~----------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
EasyUnsubscribe: http://lists.mulberrytech.com/unsub/xsl-list/1167547
or by email: xsl-list-unsub(_at_)lists(_dot_)mulberrytech(_dot_)com
--~--