Hi Eric,

this list is about FOP development, not XSLT or XSL-FO questions.
That said:
 - all pages features are nested in the fo:root/fo:layout-master-set
element,
 - while content is nested in fo:root/fo:page-sequence.

Therefore you should process your XML in a 2 passes XSLT:
 - 1 template for page masters,
 - 1 template for content.

Pascal


Le 05/08/2010 14:26, Eric Douglas a écrit :
>
> If the shell of my XSL looks like this:
> <fo:root xmlns:fo="_http://www.w3.org/1999/XSL/Format_
> <http://www.google.com/url?sa=D&q=http://www.w3.org/1999/XSL/Format&usg=AFQjCNHZhPMfx2p6D5n2w5qLURB5k932Cw>">
> <fo:layout-master-set>
> <fo:simple-page-master>
> <xsl:attribute name="master-name">STANDARD_PAGE</xsl:attribute>
> <xsl:attribute name="margin-bottom"><xsl:value-of
> select="PAGE_DATA/MARGIN_BOTTOM"/></xsl:attribute>
> <fo:region-body>
> </fo:region-body>
> </fo:simple-page-master>
> </fo:layout-master-set>
> <fo:page-sequence>
> <xsl:attribute name="master-reference">STANDARD_PAGE</xsl:attribute>
> <fo:flow>
> <xsl:attribute name="flow-name">xsl-region-body</xsl:attribute>
> <xsl:for-each select="PAGE_DATA">
> <fo:block>
> <xsl:attribute name="break-before">page</xsl:attribute>
> <xsl:for-each select="*">
> ...
> </xsl:for-each>
> </fo:block>
> </xsl:for-each>
> </fo:flow>
> </fo:page-sequence>
> </fo:root>
> So I have all my data grouped by what to print on each page, under a
> PAGE_DATA tag in the XML. Now I'm trying to put a tag under the
> PAGE_DATA tag to specify different attributes for each page, such as
> the margin-bottom mentioned here. As it is written here, it is using
> the value of the MARGIN_BOTTOM tag for the margin-bottom attribute,
> but it's only taking the last tag in the XML and applying it to all
> pages. How do I change the attributes for each page?
> Is there a place where I can set a variable from the XML tag value
> which can be processed after the for-each statement and before the
> page attributes?
>

Reply via email to