2011-07-04 26 views
1

xsl-foの要素を参照することは可能ですか?私は何をしようとしていることは以下の通りです:xsl-foの要素を参照する

<fo:marker marker-class-name="continued"> 
<!-- much much more xml text content --> 
</fo:marker> 

<--.....--> 

<fo:table-body> 
<fo:table-row> 
    <!--at his point I'd like to "reference" (or copy) the marker from above --> 
</fo:table-row> 
<!--many more rows which reference the same marker --> 
</fo:table-body> 

この理由は、私は私のテーブルの行がたくさんあるし、マーカ含有量が多い場合には、その後、XMLは単に大きくなりすぎていることです。これは私が何をしようとしているに見えることから、コピーの要素を:

http://www.w3schools.com/xsl/el_copy-of.asp

をしかし、これは、コピーの要素があるため、無視されappearently、私のFOでは動作しません私は、XSLを試してみました私はアウトプットにテーブルヘッダーを取得していません。何か案は?私はecrionのfoレンダラを使用しています。

おかげ

ステファンは

+0

あなたは、XSLTの構文を受け付けないXSL-FOの範囲を誤解されています。 XSL-FOを生成するXSLTを記述し、XSLT命令を使用することができます。それ以外の場合は、XSL-FOオブジェクトの中から適切な要素を検索する必要があります。 –

答えて

0

fo:retrieve-markerを使用してみてください。例えば

<fo:marker marker-class-name="continued"> 
<!-- much much more xml text content --> 
</fo:marker> 

<--.....--> 

<fo:table-body> 
<fo:table-row> 
    <fo:retrieve-marker retrieve-class-name="continued" retrieve-position="first-including-carryover"/> 
</fo:table-row> 
<!--many more rows which reference the same marker --> 
</fo:table-body>