[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

RE: Selecting an attribute value from a variable

Subject: RE: Selecting an attribute value from a variable
From: "Chris Hicks" <chrish2000@xxxxxxxxxxxxxx>
Date: Fri, 7 Jan 2005 21:04:52 +1100
xpath selecting attribute values
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@xxxxxxxxxxxx] 
> Sent: Friday, 7 January 2005 8:58 PM
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Subject: RE:  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@xxxxxxxxxxxxxx]
> > Sent: 07 January 2005 09:19
> > To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> > Subject:  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

Current Thread

PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.