[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: Converting a string to node test
> Do you know the secret? this is a FAQ I think. > <xsl:copy-of select="$x[@$y=$z]/node()"/> @$y doesn't mean anything as you observed. If $y is a string with a name of an attribute then you can go <xsl:copy-of select="$x[@*[name()=$y and .=$z]]/node()"/> but usually it's more fun to pass in the node you want rather than mess with names. Variables in XSLT are not restricted to strings so you can pass nodes around. You didn't show how you were calling your template but rather than pass <xsl:with-param name="x" select="foo"/> <xsl:with-param name="y" select="'attr'"/> you may be able to do <xsl:with-param name="x" select="foo"/> <xsl:with-param name="y" select="foo[@attr']/> in which case your template just needs to replace <xsl:copy-of select="$x[@*[name()=$y and .=$z]]/node()"/> by <xsl:copy-of select="$y/node()"/> David _____________________________________________________________________ This message has been checked for all known viruses by Star Internet delivered through the MessageLabs Virus Control Centre. For further information visit http://www.star.net.uk/stats.asp XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|