asked on
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml"/>
<xsl:template match="/">
<html>
<body>
<xsl:variable name="v">
<xsl:call-template name="HelloWorld"/>
</xsl:variable>
<xsl:variable name="x" select="v/*[position() != last()]"/>
<xsl:copy-of select="$x"/>
</body>
</html>
</xsl:template>
<xsl:template name="HelloWorld">
<p>Hello world!</p>
<xsl:text>5</xsl:text>
</xsl:template>
</xsl:stylesheet>
I'm trying to strip off the "5" which is appended to the end. My desired output is
<?xml version="1.0" encoding="utf-8"?><html><body><p>Hello world!</p></body></html>
and I would also like to get that "5" into a variable.<xsl:variable name="x" select="$v/*[position() != last()]"/>
and now I get an exception which says, "To use a result tree fragment in a path expression, first convert it to a node-set using the msxsl:node-set()". Great. (I actually used to know this stuff a few years ago! I've forgotten it all! How do I convert this to a node-set?)