[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: How to sort sibling elements based on attribute of
Philip,
At 04:54 PM 7/6/2009, you wrote: <Root> <Stuff>stuff</Stuff> <Annotation> <Comment Priority="1">my first comment</Comment> </Annotation> <Annotation> <Comment Priority="3">my third comment</Comment> </Annotation> <Annotation> <Comment Priority="2">my second comment</Comment> </Annotation> <Bother>bother</Bother> </Root> Assuming this is the case, try <xsl:template match select="/*"> <xsl:apply-templates select="Annotation[1]/preceding-sibling::*"/> <xsl:apply-templates select="Annotation"> <xsl:sort select="*/@Priority"/> </xsl:apply-templates> <xsl:apply-templates select="Annotation[last()]/following-sibling::*"/> </xsl:template> This can also be done using grouping in XSLT 2.0, which is probably clearer albeit no more concise. Cheers, Wendell
|
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
|