I've got a rather complicated table, which i think is the source of my problem. The table is filled based on data retrieved from an XML file from a client database. Here is an excerpt of the XSL code that I'm trying to apply to the XML:
<fo:table-row>
<fo:table-cell number-columns-spanned="2">
<fo:block/>
</fo:table-cell>
<fo:table-cell number-columns-spanned="2">
<fo:block/>
</fo:table-cell>
</fo:table-row>
<xsl:for-each select="xml/value">
<fo:table-row>
<fo:table-cell number-columns-spanned="2">
<fo:block>
<xsl:value-of select="@value"/>/>
</fo:block>
</fo:table-cell>
<fo:table-cell number-columns-spanned="2">
<fo:block>
<xsl:value-of select="@othervalue"/>/>
</fo:block>
</fo:table-cell>
</fo:table-row>
</xsl:for-each>
This is bundled together and treated like a single row, so if the page splits somewhere in this bigger row, it looks like the row is being split.
I've tried using keep-together.within-page="always", page-break-inside="avoid", keep-with-previous.within-page="always", and keep-with-next.within-page="always" on the table and on the iterated blocks in various combinations but nothing seems to stick. Can anyone spot a solution for this? Any help is appreciated, Thanks.