Variables hold values, not XPath expressions.
Many processors have a dyn:evaluate() extension that allows you to construct
and evaluate an XPath expression dynamically, but you don't need it here.
Use
@*[name()=$var]
Incidentally, it's poor practice to represent information by means of a
sub-syntax within element and attribute names. You should be using child
elements of the form
<LastId Page="1">12</LastId>
But we all sometimes need to deal with badly-designed XML.
Michael Kay
http://www.saxonica.com/
-----Original Message-----
From: Chris Hicks [mailto:chrish2000(_at_)iprimus(_dot_)com(_dot_)au]
Sent: 07 January 2005 09:19
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: [xsl] Selecting an attribute value from a variable
Hi,
I'm building a variable in xslt like this:
<xsl:variable name="previouspagelastid"
select="concat('@Page',string(@pageNumber - 1),'LastID')"/>
To refer to an attribute in an xml node that I know exists
(@Page1LastID for
example).
The root node of my template match looks like this:
<results pageNumber="2" pageCount="3" pageSize="10" resultCount="30"
criteria="" Page1LastID="12" Page2LastID="" Page3LastID=""
Page4LastID=""
Page5LastID="" Page6LastID="">
I'm not sure if its possible but after I declare this
variable I want to get
its value, ie. "12"
Any ideas?
Cheers,
Chris
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail:
<mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--