I suspect it is a bug in the table handling code in FOP 0.93.  Other XSL-FO 
processors output the top rule on the continued tables.

Bob Stayton
Sagehill Enterprises
DocBook Consulting
[EMAIL PROTECTED]


  ----- Original Message ----- 
  From: Robert Sleator 
  To: [email protected] 
  Sent: Friday, April 27, 2007 11:00 PM
  Subject: [docbook-apps] borders missing on continued tables



  I had such a good response with my last problem (thanks, Bob!) that I thought
  I'd try another.  On tables that continue across a page boundary the top
  border on the second (and subsequent) pages is missing.  From some previous 
  posts I had the impression that setting "border-before-width.conditionality"
  to "retain" was supposed to take care of this, but it doesn't seem to.
  (See the attached .png file for a screenshot.) 

  I am using DocBook 4.12, docbook-xsl-1.72.0, FOP 0.93 (with the patch
  that Bob Stayton mentioned in reply to me previous post), jre1.6.0, and
  Windows XP.


  I have the following table-related parameters and attributes set: 

    <xsl:param name="default.table.width" select="'5in'"></xsl:param>
    <xsl:param name="tablecolumns.extension" select="'1'"></xsl:param> 
    <xsl:param name="table.layout" select="'fixed'"></xsl:param>

    <xsl:attribute-set name="table.properties">
      <xsl:attribute name="keep-together.within-column ">auto</xsl:attribute>
      <xsl:attribute name="keep-with-next">always</xsl:attribute>
    </xsl:attribute-set>

    <xsl:attribute-set name="table.table.properties ">
      <xsl:attribute 
name="border-before-width.conditionality">retain</xsl:attribute>
      <xsl:attribute 
name="border-after-width.conditionality">retain</xsl:attribute> 
      <xsl:attribute name="border-before-style">solid</xsl:attribute>
    </xsl:attribute-set>


  The document source is as follows:

  <chapter>
  <title>A Chapter</title> 
  <sect1><title>A Sect1</title>
  <para>aslkdjfal slasjk laskdj lskjdf lskjf</para>
  <table frame = "all" colsep = "1" rowsep = "1">
  <title>a table</title> 
  <tgroup cols = "3" colsep = "1" rowsep = "1">
  <colspec colnum = "1" colname = "1" colwidth = "1.507in"/>
  <colspec colnum = "2" colname = "2" colwidth = " 2.482in"/>
  <colspec colnum = "3" colname = "3" colwidth = "1.011in"/>
  <thead>
  <row rowsep = "1">
  <entry colname = "1">Foo and Bar</entry> 
  <entry colname = "2">Language or Function</entry>
  <entry colname = "3">Command</entry>
  </row>
  </thead>
  <tbody>
  <row rowsep = "1"> 
  <entry colname = "1">Apple</entry>
  <entry colname = "2">aaaaaaaaaaaaa</entry>
  <entry colname = "3">11111111</entry>
  </row>
  <row rowsep = "1"> 
  <entry colname = "1">Orange</entry>
  <entry colname = "2">bbbbbbbbbbbbbbbb</entry>
  <entry colname = "3">2222222222</entry>
  </row>
  <row rowsep = "1" condition = "nonpvf"> 
  <entry colname = "1">Banana</entry>
  <entry colname = "2">cccccccccc</entry>
  <entry colname = "3">333333333</entry>
  </row>
  <row rowsep = "1" condition = "nonpvf"> 
  <entry colname = "1">Plantain</entry>
  <entry colname = "2">ddddddddddd</entry>
  <entry colname = "3">4444</entry>
  </row>
  <row rowsep = "1" condition = "nonpvf"> 
  <entry colname = "1">Acerola</entry>
  <entry colname = "2">eeeeeeeeeeeeeeeeeee </entry>
  <entry colname = "3">55555555</entry>
  </row>
  <row rowsep = "1"> 
  <entry colname = "1">Watermelon</entry>
  <entry colname = "2">fffffffffffffffffff</entry>
  <entry colname = "3">66666666</entry>
  </row>
  <row rowsep = "0">
  <entry colname = "1">Kiwi</entry>
  <entry colname = "2">gggggggggggggggggg</entry>
  <entry colname = "3">7777777</entry> 
  </row>
  </tbody>
  </tgroup></table>
  <para>sldkflskf</para>
  <para>sldkflskf</para>
  <para>sldkflskf</para>
  <para>sldkflskf</para>
  <para>sldkflskf</para>
  <para>sldkflskf</para>
  <para>sldkflskf</para>
  <para>sldkflskf</para>
  <table frame = "all" colsep = "1" rowsep = "1"><title id = "BABIBJJC">Banana 
  Options</title>
  <tgroup cols = "8" colsep = "1" rowsep = "1">
  <colspec colnum = "1" colname = "1" colwidth = "1.413in"/>
  <colspec colnum = "2" colname = "2" colwidth = " 0.719in"/>
  <colspec colnum = "3" colname = "3" colwidth = "0.541in"/>
  <colspec colnum = "4" colname = "4" colwidth = "0.531in"/>
  <colspec colnum = "5" colname = "5" colwidth = " 0.562in"/>
  <colspec colnum = "6" colname = "6" colwidth = "0.561in"/>
  <colspec colnum = "7" colname = "7" colwidth = "0.561in"/>
  <colspec colnum = "8" colname = "8" colwidth = " 1.171in"/>
  <thead>
  <row rowsep = "1">
  <entry colname = "1">Peel</entry>
  <entry colname = "2">2-bit</entry>
  <entry colname = "3">4-bit</entry> 
  <entry colname = "4">8-bit</entry>
  <entry colname = "5">16-bit</entry>
  <entry colname = "6">32-bit</entry>
  <entry colname = "7">64-bit</entry> 
  <entry colname = "8">United Fruitcake</entry>
  </row>
  </thead>
  <tbody>
  <row rowsep = "1">
  <entry colname = "1">Zipper</entry> 
  <entry colname = "2"><para></para></entry>
  <entry colname = "3"><para></para></entry>
  <entry colname = "4"><para></para></entry> 
  <entry colname = "5"><para></para></entry>
  <entry colname = "6"><para>X</para></entry>
  <entry colname = "7"><para></para></entry> 
  <entry colname = "8"><para>X</para></entry>
  </row>
  <row rowsep = "1">
  <entry colname = "1">Velcro</entry>
  <entry colname = "2"><para>X</para></entry> 
  <entry colname = "3"><para>X</para></entry>
  <entry colname = "4"><para></para></entry>
  <entry colname = "5"><para></para></entry> 
  <entry colname = "6"><para>X</para></entry>
  <entry colname = "7"><para></para></entry>
  <entry colname = "8">X</entry>
  </row>
  <row rowsep = "1">
  <entry colname = "1"><para>Lacing</para></entry>
  <entry colname = "2"><para>X</para></entry>
  <entry colname = "3"><para>X</para></entry>
  <entry colname = "4"><para>X</para></entry>
  <entry colname = "5"><para></para></entry> 
  <entry colname = "6"><para>X</para></entry>
  <entry colname = "7"><para>X</para></entry>
  <entry colname = "8">X</entry>
  </row>
  <row rowsep = "0">
  <entry colname = "1">Buttons</entry>
  <entry colname = "2"><para>X</para></entry>
  <entry colname = "3"><para>X</para></entry> 
  <entry colname = "4"><para>X</para></entry>
  <entry colname = "5"><para></para></entry>
  <entry colname = "6"><para>X</para></entry> 
  <entry colname = "7"><para>X</para></entry>
  <entry colname = "8"><para>X</para></entry>
  </row>
  <row rowsep = "1">
  <entry colname = "1">Zipper</entry> 
  <entry colname = "2"><para></para></entry>
  <entry colname = "3"><para></para></entry>
  <entry colname = "4"><para></para></entry> 
  <entry colname = "5"><para></para></entry>
  <entry colname = "6"><para>X</para></entry>
  <entry colname = "7"><para></para></entry> 
  <entry colname = "8"><para>X</para></entry>
  </row>
  <row rowsep = "1">
  <entry colname = "1">Velcro</entry>
  <entry colname = "2"><para>X</para></entry> 
  <entry colname = "3"><para>X</para></entry>
  <entry colname = "4"><para></para></entry>
  <entry colname = "5"><para></para></entry> 
  <entry colname = "6"><para>X</para></entry>
  <entry colname = "7"><para></para></entry>
  <entry colname = "8">X</entry>
  </row>
  <row rowsep = "1">
  <entry colname = "1"><para>Lacing</para></entry>
  <entry colname = "2"><para>X</para></entry>
  <entry colname = "3"><para>X</para></entry>
  <entry colname = "4"><para>X</para></entry>
  <entry colname = "5"><para></para></entry> 
  <entry colname = "6"><para>X</para></entry>
  <entry colname = "7"><para>X</para></entry>
  <entry colname = "8">X</entry>
  </row>
  <row rowsep = "0">
  <entry colname = "1">Buttons</entry>
  <entry colname = "2"><para>X</para></entry>
  <entry colname = "3"><para>X</para></entry> 
  <entry colname = "4"><para>X</para></entry>
  <entry colname = "5"><para></para></entry>
  <entry colname = "6"><para>X</para></entry> 
  <entry colname = "7"><para>X</para></entry>
  <entry colname = "8"><para>X</para></entry>
  </row>
  <row rowsep = "1">
  <entry colname = "1">Zipper</entry> 
  <entry colname = "2"><para></para></entry>
  <entry colname = "3"><para></para></entry>
  <entry colname = "4"><para></para></entry> 
  <entry colname = "5"><para></para></entry>
  <entry colname = "6"><para>X</para></entry>
  <entry colname = "7"><para></para></entry> 
  <entry colname = "8"><para>X</para></entry>
  </row>
  <row rowsep = "1">
  <entry colname = "1">Velcro</entry>
  <entry colname = "2"><para>X</para></entry> 
  <entry colname = "3"><para>X</para></entry>
  <entry colname = "4"><para></para></entry>
  <entry colname = "5"><para></para></entry> 
  <entry colname = "6"><para>X</para></entry>
  <entry colname = "7"><para></para></entry>
  <entry colname = "8">X</entry>
  </row>
  <row rowsep = "1">
  <entry colname = "1"><para>Lacing</para></entry>
  <entry colname = "2"><para>X</para></entry>
  <entry colname = "3"><para>X</para></entry>
  <entry colname = "4"><para>X</para></entry>
  <entry colname = "5"><para></para></entry> 
  <entry colname = "6"><para>X</para></entry>
  <entry colname = "7"><para>X</para></entry>
  <entry colname = "8">X</entry>
  </row>
  <row rowsep = "0">
  <entry colname = "1">Buttons</entry>
  <entry colname = "2"><para>X</para></entry>
  <entry colname = "3"><para>X</para></entry> 
  <entry colname = "4"><para>X</para></entry>
  <entry colname = "5"><para></para></entry>
  <entry colname = "6"><para>X</para></entry> 
  <entry colname = "7"><para>X</para></entry>
  <entry colname = "8"><para>X</para></entry>
  </row>
  </tbody>
  </tgroup></table></sect1></chapter> 



  The 'border-before-width.conditionality="retain"' is being passed through to 
the "fo:table" element:

  <fo:table
  border-before-width.conditionality="retain" 
  border-collapse="collapse"
  border-after-width.conditionality="retain"
  border-before-style="solid"
  border-left-style="solid"
  border-right-style="solid"
  border-top-style="solid" 
  border-bottom-style="solid"
  border-left-width="0.5pt"
  border-right-width="0.5pt"
  border-top-width="0.5pt"
  border-bottom-width="0.5pt"
  border-left-color="black" 
  border-right-color="black"
  border-top-color="black"
  border-bottom-color="black"
  table-layout="fixed"
  width="1.413in + 0.719in + 0.541in + 0.531in + 0.562in + 0.561in + 0.561in + 
1.171in">


  There is a second issue with this table that I don't think is related, which 
is
  that it prints the thead at the bottom of the page, with no rows of data, 
which
  seems rather useless, and then immediately prints it again at the start of 
the 
  next page.  I get the missing borders even when this doesn't occur, but this
  seems rather odd.

  Am I missing something somewhere ?  Any suggestions would be appreciated.




------------------------------------------------------------------------------


  ---------------------------------------------------------------------
  To unsubscribe, e-mail: [EMAIL PROTECTED]
  For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to