RE: [docbook-apps] FW: long Tables in docbook using FOP

From
Kerry, Richard <>
Date
2008-02-12T12:39:12+00:00
ID
Thread
RE: [docbook-apps] FW: long Tables in docbook using FOP
See the thread I started on 17/12/2007, Headed " Fop 
unable to render tables ?  (without intervention ?)".

 

The outcome is that you need to put a processing 
instruction

<?dbfo keep-together="auto" 
?>

In your FO.

And I think you need to use the latest snapshot version 
of the xsl stylesheets from Sourceforge to get this done from docbook without 
intervention (ie manually editing in the above PI) as 1.73.2 doesn't support 
it.

 

And this leads to a question I've been meaning to ask 
since I got the tables working......

 

 

*** Why is the default setting that Long Tables Do Not 
Work ?

 

This seems to me to be useless in all 
circumstances.

 

Surely there are two options with a long table (ie a 
table that will take more than one page)

1.

Unconditional.

Start at current position and insert page breaks 
wherever necessary.

2.

Unconditional.

Start after next page break and then insert page breaks 
wherever necessary.

 

The default behaviour is currently : 
Don't put page breaks the table at all.  
Irrespective of whether it ought to take more than a page to 
complete.

 

 

For a short table, ie one that fits on a single page, 
the options are :

1.

Unconditional.

Start at current position.

A page break may actually be necessary if we started 
near the bottom of a page.

2.

Unconditional.

Start after next page break.

If we're saying this table is less than a page 
long then page breaks will not be necessary.

3.

Conditional.

If the table will fit on the current page, put it 
there.

If it won't fit on the current page, start it after the 
next page break.

 

 

So again, my question, slightly rephrased, is 
:

*** What is the point of the default setting being that 
Long Tables Do Not Work ?

 

Uncertainly,

Richard.

 

 

 

  

  
  From: David White [mailto:] 
  
Sent: 11 February 2008 21:33
To: 
  
Subject: [docbook-apps] FW: long 
  Tables in docbook using FOP

  

  

    
    
    Greetings,
 
I'm using the latest docbook and FOP and have some 
    valid XML that includes a <table>
that spans more than 1 
    page.
 
The content is running off the foot of the first page and 
    is not rendering on the second page.
 
 
My parmeter 
    settings:
   <xsl:param 
    name="use.extensions">1</xsl:param>
  <xsl:param 
    name="xep.extensions">1</xsl:param>
  <xsl:param 
    name="fop1.extensions">1</xsl:param>
 
attribute-sets:
<xsl:attribute-set 
    name="formal.object.properties">
  <xsl:attribute 
    name="keep-together.within-column">auto</xsl:attribute>
</xsl:attribute-set>
 
 <xsl:attribute-set 
    name="table.table.properties">
  <xsl:attribute 
    name="space-after">8pt</xsl:attribute>
  <xsl:attribute 
    name="space-before">0pt</xsl:attribute>
  <xsl:attribute 
    name="space-before.conditionality">retain</xsl:attribute>
  <xsl:attribute 
    name="space-before.precedence">force</xsl:attribute>
  <xsl:attribute 
    name="clear"><xsl:choose><xsl:when test="../@pgwide = 1 or @pgwide = 
    1">both</xsl:when><xsl:otherwise>inherit</xsl:otherwise></xsl:choose></xsl:attribute>
  <xsl:attribute 
    name="span"><xsl:choose><xsl:when test="../@pgwide = 1 or @pgwide = 
    1">all</xsl:when><xsl:otherwise>inherit</xsl:otherwise></xsl:choose></xsl:attribute>
  <xsl:attribute 
    name="space-after.conditionality">retain</xsl:attribute>
  <xsl:attribute 
    name="space-after.precedence">force</xsl:attribute>
  <xsl:attribute 
    name="keep-together.within-column">auto</xsl:attribute>
 </xsl:attribute-set>

<xsl:attribute-set 
    name="table.properties">
  <xsl:attribute 
    name="keep-together.within-column">auto</xsl:attribute>
</xsl:attribute-set>
 
 
Everything 
    else uses standard docbook stylesheet code.
 
When I use 
    <informaltable> it works...but I loose my <title> which I really 
    need.
 
Any suggestions?
 
Thanks,
 
David 
    White

  
  Need to know the score, the latest news, or you need your Hotmail®-get your 
  "fix". Check it 
  out.