xsl-list
[Top] [All Lists]

RE: Selecting an attribute value from a variable

2005-01-07 03:04:52
Thanks Michael,

Yes, I'm dealing with poorly formed XML output from a program I have no
control over changing.

As you can imagine its a baptism of fire for me learning how to format this
nasty XML!

Thanks again for your help this time and previously.

Cheers,

Chris

-----Original Message-----
From: Michael Kay [mailto:mike(_at_)saxonica(_dot_)com] 
Sent: Friday, 7 January 2005 8:58 PM
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: RE: [xsl] Selecting an attribute value from a variable

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>
--~--



--~------------------------------------------------------------------
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>
--~--



<Prev in Thread] Current Thread [Next in Thread>