[XSL-LIST Mailing List Archive Home] [By Thread] [By Date]

[xsl] how to store node in variable?


Subject: [xsl] how to store node in variable?
From: John <john-xsl-list@xxxxxxxx>
Date: Thu, 21 Oct 2004 12:39:33 -0700

Sorry to trouble the list with this one which seems so simple and yet somehow I am banging my head against the wall for hours and I can't even think what to search for. The worst part is I think I've done this before...

How do I store a reference to a node in a variable or what am I doing wrong? Here is what I have (maybe oversimplified) :

<xsl:variable name="me">
<xsl:choose>
<xsl:when test="<some condition>">
<xsl:copy-of select=".." />
</xsl:when>
<xsl:otherwise>
<xsl:copy-of select="." />
</xsl:otherwise>
</xsl:choose>
</xsl:variable> <xsl:call-template name="<some template>">
<xsl:with-param name="myid" select="$me/@id" />
</xsl:call-template>


The with-param is always throwing an error, expression should result in a node-set.

If I add msxsl:node-set around my selects in the variable definition I get cannot convert result tree fragment to node-set.

Alternatively, is there any way to explicitly set the context node without using for-each?

Again my apologies.

-John


Current Thread