[xsl] fo:marker weirdness?

Subject: [xsl] fo:marker weirdness?
From: Manzell Blakeley <manzell@xxxxxxxxxxx>
Date: Sat, 10 Mar 2007 10:15:29 -0800
I am having some trouble with markers - hopefully someone out there can help. I'll throw in that I've not used markers before, so there is perhaps a gap in understanding.

I've got a document that is essentially a series of many, many tables. Some of these tables are short (~10 lines) and others are several pages long. each table has an fo:table-caption element.

In the header-area, I've got a retrieve-marker element:

<fo:static-content flow-name = "xsl-region-before">
   <!-- Header -->
   <fo:block background = "red">
       <fo:retrieve-marker
           retrieve-class-name = "marque" />
   </fo:block>
</fo:static-content>

In my content area, i've got the following construct:

<fo:marker marker-class-name = "marque">
<xsl:value-of select = "automaker" />
</fo:marker>
<fo:table-and-caption font-size = "6pt"> <fo:table-caption> <fo:block font-weight = "bold" color = "blue" background = "#FFAA00"> <xsl:value-of select = "automaker" />
</fo:block>
</fo:table-caption>
...
</fo:table-and-caption>


As you can see, the marker rests outside of the table and doesn't have any contents other than the name of the automaker - it doesn't envelop the following table.

So, what's occuring is that in same cases, the marker (in the header) is appearing many pages before the appropriate caption appears in the flow. This seems to violate the default retrieve-position of first-starting-within-page. I've also tried first-including-carryover (with does not change the results).

Where am I going wrong here?

Thanks,
Manzell B

Current Thread