Re: [xsl] Saxon-CE... Passing Variable to JS Function

Subject: Re: [xsl] Saxon-CE... Passing Variable to JS Function
From: "Michael Kay mike@xxxxxxxxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx>
Date: Thu, 30 Jun 2016 20:50:05 -0000
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

Current Thread