Subject: [xsl] Numbering quandry From: "Blake, Stephen" <Stephen.Blake@xxxxxxxxxxxx> Date: Thu, 12 Apr 2001 15:37:41 -0400 |
Hello all, I have numbering difficulty. I'm trying to number sections hierarchically, and also to include the number of their parent section, if they have any, or their own number if they are a top-level section. This is what I have: <report> <section title="foo"> <section title="bar"> <section title="baz"/> </section> </section> <section title="things"> <section title="thing1"/> <section title="thing2"> <section title="subthing1"/> <section title="subthing2"/> <section title="subthing3"/> </section> </section> </report> This is what I want as output: <html> <head> <title>Test</title> </head> <body> <ul> <li>Section foo (1., parent 1.)</li> <ul> <li>Section bar (1.1., parent 1.)</li> <ul> <li>Section baz (1.1.1., parent 1.1.)</li> </ul> </ul> </ul> <ul> <li>Section things (2., parent 2.)</li> <ul> <li>Section thing1 (2.1., parent 2.)</li> </ul> <ul> <li>Section thing2 (2.2., parent 2.)</li> <ul> <li>Section subthing1 (2.2.1., parent 2.2.)</li> </ul> <ul> <li>Section subthing2 (2.2.2., parent 2.2.)</li> </ul> <ul> <li>Section subthing3 (2.2.3., parent 2.2.)</li> </ul> </ul> </ul> </body> </html> After checking out the FAQ I saw an example on numbering based on the parent, which gave me the idea to try this: <?xml version="1.0" ?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:template match="report"> <html> <head><title>Test</title></head> <body> <xsl:apply-templates/> </body> </html> </xsl:template> <xsl:template match="section/section"> <ul> <li> <xsl:text>Section </xsl:text> <xsl:value-of select="@title"/> <xsl:text> (</xsl:text> <xsl:number level="multiple" count="section" format="1.1.0"/> <xsl:text>, parent </xsl:text> <xsl:number level="multiple" count="section/section" format="1.1.0"/> <xsl:text>)</xsl:text> </li> <xsl:apply-templates/> </ul> </xsl:template> <xsl:template match="/report/section"> <ul> <li> <xsl:text>Section </xsl:text> <xsl:value-of select="@title"/> <xsl:text> (</xsl:text> <xsl:number level="multiple" count="section" format="1.1.0"/> <xsl:text>, parent </xsl:text> <xsl:number level="multiple" count="section" format="1.1.0"/> <xsl:text>)</xsl:text> </li> <xsl:apply-templates/> </ul> </xsl:template> </xsl:stylesheet> But this gives me: <html> <head> <META http-equiv="Content-Type" content="text/html"> <title>Test</title> </head> <body> <ul> <li>Section foo (1., parent 1.)</li> <ul> <li>Section bar (1.1., parent 1.)</li> <ul> <li>Section baz (1.1.1., parent 1.1.)</li> </ul> </ul> </ul> <ul> <li>Section things (2., parent 2.)</li> <ul> <li>Section thing1 (2.1., parent 1.)</li> </ul> <ul> <li>Section thing2 (2.2., parent 2.)</li> <ul> <li>Section subthing1 (2.2.1., parent 2.1.)</li> </ul> <ul> <li>Section subthing2 (2.2.2., parent 2.2.)</li> </ul> <ul> <li>Section subthing3 (2.2.3., parent 2.3.)</li> </ul> </ul> </ul> </body> </html> Close but not quite what I need. Anyone have any suggestions, or am I barking up the wrong tree? Thanks for considering, Stephen Blake Veritect s t e p h e n . b l a k e @ v e r i t e c t . c o m XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] Numbering quandry, Wendell Piez | Thread | RE: [xsl] Numbering quandry, Blake, Stephen |
RE: [xsl] preserveWhiteSpace=true; , Clapham, Paul | Date | [xsl] Coding and node context under, Joel P Thornton |
Month |