Subject: [xsl] How to store a node in a local variable using if or when From: Néstor Boscán <nestor.boscan@xxxxxxxxxx> Date: Thu, 31 Jul 2003 21:57:09 -0400 |
Hi I would like to process information from a node that can come from two different places in the XML tree. Because the processing is the same I create a variable and with a choice element I will set the variable to one of the two nodes. So I can figure out only two ways of doing it that doesn't work. Here are the two examples: First example use <xsl:value-of>: <xsl:variable name="node"/> <xsl:choose> <xsl:when test="condition1"> <xsl:value-of select="/a/b/c"/> </xsl:when> <xsl:when test="condition2"> <xsl:value-of select="/c"/> </xsl:when> </xsl:choose> </xsl:variable> <xsl:for-each select="$node"> process </xsl:for-each> Will not work because <xsl:value-of> only selects strings not nodes. So <xsl:variable name="node" select="path"/> is not the same as <xsl:variable name="node"><xsl:value-of select="path"/></xsl:variable> Second example use "select" attribute in variable: <xsl:choose> <xsl:when test="condition1"> <xsl:variable name="node" select="/a/b/c"/> </xsl:when> <xsl:when test="condition2"> <xsl:variable name="node" select="/c"/> </xsl:when> </xsl:choose> </xsl:variable> <xsl:for-each select="$node"> process </xsl:for-each> Will not work because variable "node" is out of scope. Any ideas? XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] generate-d( ) not working, Michael Kay | Thread | [xsl] FW: How to store a node in a , Néstor Boscán |
RE: [xsl] generate-d( ) not working, John | Date | [xsl] FW: How to store a node in a , Néstor Boscán |
Month |