Re: Getting node w/ lowest attribute value
I think, in this case it will become a grouping and sorting problem. Please try this stylesheet, <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0"> <xsl:output method="xml" indent="yes" /> <xsl:template match="addresses"> <result> <xsl:for-each-group select="address[@IsActive = 'true']" group-by="@NumOrder"> <xsl:sort select="current-grouping-key()" order="ascending" data-type="number" /> <xsl:copy-of select="." /> </xsl:for-each-group> </result> </xsl:template> </xsl:stylesheet> This will output all the 'address' elements (only 1st in the group) as required. You can later select the nth one (or the 2nd) if needed. On Sat, Aug 16, 2008 at 11:12 PM, Bordeman, Chris <Chris.Bordeman@xxxxxxxxxxxxxxxxx> wrote: > Cool, thanks Mukul, now how do I get the 2nd lowest? > > -----Original Message----- > From: Mukul Gandhi [mailto:gandhi.mukul@xxxxxxxxx] > Sent: Friday, August 15, 2008 1:10 PM > To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx > Subject: Re: Getting node w/ lowest attribute value > > Please try this, > > addresses/address[(@IsActive = 'true') and (@NumOrder = > min(../address[@IsActive = 'true']/@NumOrder))] > > This uses the XPath 2.0 function, 'min'. > > On Fri, Aug 15, 2008 at 11:22 PM, Bordeman, Chris > <Chris.Bordeman@xxxxxxxxxxxxxxxxx> wrote: >> Hi all. >> >> I have some nodes like: >> >> <addresses> >> <address IsActive="false" NumOrder=1>[...]</address> >> <address IsActive="true" NumOrder=3>[...]</address> >> <address IsActive="true" NumOrder=2>[...]</address> </addresses> >> >> How do I get the first address node where IsActive=true AND has the >> lowest value for the NumOrder attribute? >> >> In the above case I'd want the 3rd address node (IsActive="true" and >> NumOrder=2). >> >> Any assistance would be appreciated. Thanks. -- Regards, Mukul Gandhi
PURCHASE STYLUS STUDIO ONLINE TODAY!
Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!
Download The World's Best XML IDE!
Accelerate XML development with our award-winning XML IDE - Download a free trial today!
Subscribe in XML format