Next in thread → Next in month →

Re: [docbook-apps] Table numbering with docbook 1.74.3 on PDF and HTML report.

From
Bob Stayton <>
Date
2009-09-30T16:11:30+00:00
ID
06e201ca41e8$a5164a40$0a00a8c0@pazu
Thread
Re: [docbook-apps] Table numbering with docbook 1.74.3 on PDF and HTML report.
One correction.  In the "pchap" selection, 
that should be select="ancestor::section[1]" to select only the closest ancestor 
section.

 

Bob Stayton
Sagehill Enterprises


 

 

  
----- Original Message ----- 

  
From: 
  Bob Stayton 
  

  
To: Bela Patel ;  
  

  
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) 
  &gt; 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


  
 

  
 

  
    
----- Original Message ----- 

    
From: 
    Bela 
    Patel 

    
To:  
    

    
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.
Next in thread → Next in month →