[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Identify last node in nested nodeset with same name
I am working with XML data that shares the same element name for each node set, for example: <menu name="link1"/> <menu name="link2"> <menu name="link2a"/> <menu name="link2b"/> </menu> My XSL stylesheet transforms this into an HTML unordered list, like this: <ul> <li>link1</li> <li>link2 <ul> <li>link2a</li> <li>link2b</li> </ul> </li> </ul> I can't figure out how to identify the last second-tier node (in this example "link2b") so that the stylesheet can write the closing </ul> tag for the nested list. I thought I would reference it with something like <xsl:if test="/menu/menu[last()]">, but my XPath must be incorrect because it fails. I am currently writing the opening <ul> and closing </li> tags for the nested list with this: <xsl:template match="menu"> <xsl:if test="count(menu)>0"> <xsl:text><ul></xsl:text> </xsl:if> <xsl:if test="count(menu)=0"> <xsl:text></li></xsl:text> </xsl:if> </xsl:template> If I only knew how to identify the last node in /menu/menu, I could easily write the closing tag. Thanks, -Mat __________________________________________________ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com
|
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
|