xsl-list
[Top] [All Lists]

RE: Selecting an attribute value from a variable

2005-01-07 02:58:00
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>
--~--