Subject: [xsl] Using name() with XPath expressions (fwd) From: Jenny Simpson <simpson@xxxxxxxxxxx> Date: Fri, 13 Jul 2001 22:31:11 -0600 |
Dear all, I am using the following piece of code (thanks to Michael Kay) to convert a string value to the name of a text node. Then I extract the text contained in that node and use it in a comparison statement. <xsl:for-each select="bibliography/bibitem"> <xsl:if test="$search = *[name() = $field]"> <xsl:call-template name="printBib" /> </xsl:if> </xsl:for-each> Typically, $field contains something like 'year', in which case the comparison works fine. Here's the xml: <bibitem type="book" label="har91"> <author> <firstname>R.</firstname> <middlename>M.</middlename> <lastname>Haralick</lastname> </author> <author> <firstname>L.</firstname> <middlename>G.</middlename> <lastname>Shapiro</lastname> </author> <year>1991</year> <title>Computer and Robot Vision</title> <volume>2</volume> <publisher>Addison-Wesley</publisher> </bibitem> The problem is that if the variable $field contains the path of a text node instead of the name itself, the name function doesn't work. For example, if $field contains 'author/lastname', the name function assumes that 'author/lastname' is the string value of the name of a node instead of the path to a node. How do I alter this comparison so that it works with $field values that are paths as well as field values that are names? Thanks in advance. Jenny Simpson Sci Institute XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] Background color problem , Kevin Nardi | Thread | [xsl] Nestled <xsl:choose>, dante |
RE: [xsl] Re:, Chris Bayes | Date | [xsl] Nestled <xsl:choose>, dante |
Month |