One correction. In the "pchap" selection, that should be select="ancestor::section[1]" to select only the closest ancestor section.
Bob Stayton Sagehill Enterprises [email protected] ----- Original Message ----- From: Bob Stayton To: Bela Patel ; [email protected] Sent: Wednesday, September 30, 2009 9:02 AM Subject: Re: [docbook-apps] Table numbering with docbook 1.74.3 on PDF and HTML report. Hi, The number labels are generated by applying templates to the table element in mode="label.markup". The default template is in common/labels.xsl and works for table, figure, and example: <xsl:template match="figure|table|example" mode="label.markup"> <xsl:variable name="pchap" select="ancestor::chapter |ancestor::appendix |ancestor::article[ancestor::book]"/> <xsl:variable name="prefix"> <xsl:if test="count($pchap) > 0"> <xsl:apply-templates select="$pchap" mode="label.markup"/> </xsl:if> </xsl:variable> <xsl:choose> <xsl:when test="@label"> <xsl:value-of select="@label"/> </xsl:when> <xsl:otherwise> <xsl:choose> <xsl:when test="$prefix != ''"> <xsl:apply-templates select="$pchap" mode="label.markup"/> <xsl:apply-templates select="$pchap" mode="intralabel.punctuation"/> <xsl:number format="1" from="chapter|appendix" level="any"/> </xsl:when> <xsl:otherwise> <xsl:number format="1" from="book|article" level="any"/> </xsl:otherwise> </xsl:choose> </xsl:otherwise> </xsl:choose> </xsl:template> You can copy this to your customization layer and change it to match="table" to only affect tables. Then a couple more changes are needed. The variable "pchap" is the ancestor element whose number label becomes the prefix for the table number. Change the variable pchap selection to "ancestor::section". And then change the first xsl:number so the "from" attribute is "section" instead of "chapter|appendix", so that the table numbering restarts in each section. That should do it. You might need to make further improvements to handle the case of a table contained in a chapter before the first section, though. Bob Stayton Sagehill Enterprises [email protected] ----- Original Message ----- From: Bela Patel To: [email protected] Sent: Wednesday, September 30, 2009 8:35 AM Subject: [docbook-apps] Table numbering with docbook 1.74.3 on PDF and HTML report. Hi, I am using docbook version 1.74.3. Currently I am getting table number on my HTML/PDF report as (ChapterNumber).1, (ChapterNumber).2, (ChapterNumber).3 ... and so on For example: I have "Chapter 2" and under it I have section number 2.3.2. Following is how table numbers are listed curently on my HTML report (table 2.1, table 2.3 and table 2.3). Chapter 2 2.3.2 Report Trees Table 2.1 Dec1Tree Data Type Length Numeric 3 Table 2.2 Dec2Tree Data Type Length Numeric 3 Table 2.3 Dec3Tree Data Type Length Numeric 3 I want the table numbers starting with the section number above it instead on starting with the Chapter number above it. For example: I want the Table number as (Table 2.3.2.1, Table 2.3.2.2 and Table 2.3.2.3) shown below. Chapter 2 2.3.2 Report Trees Table 2.3.2.1 Dec1Tree Data Type Length Numeric 3 Table 2.3.2.2 Dec2Tree Data Type Length Numeric 3 Table 2.3.2.3 Dec3Tree Data Type Length Numeric 3 How can I achieve it? Thanks, BRAMANI.
