我需要帮助xsl-fo中的模板从xml数据生成pdf。
我的问题是我需要创建一个只能获得多个项目(节点)的表。
对于exaple,我可能有一个看起来像这样的xml
<CollectionOfItems>
<items>
<title ID="someid" location="somelocation" price="someprice"/>
<title ID="someid" location="somelocation" price="someprice"/>
<title ID="someid" location="somelocation" price="someprice"/>
</items>
<items>
<title ID="someid" location="somelocation" price="someprice"/>
<title ID="someid" location="somelocation" price="someprice"/>
<title ID="someid" location="somelocation" price="someprice"/>
</items>
</items>
<title ID="someid" location="somelocation" price="someprice"/>
<title ID="someid" location="somelocation" price="someprice"/>
<title ID="someid" location="somelocation" price="someprice"/>
<title ID="someid" location="somelocation" price="someprice"/>
<title ID="someid" location="somelocation" price="someprice"/>
<title ID="someid" location="somelocation" price="someprice"/>
</items>
</CollectionOfItems>
每个“items”节点都需要在一个单独的表中...所以我在xsl-fo表中创建了一个看起来像这样的表
<fo:table width="100%" border-style="outset" border-width="2pt" background-repeat="no-repeat">
<fo:table-column/>
<fo:table-column/>
<fo:table-column/>
<fo:table-body>
<xsl:for-each select="/Items/item/DataModification/Form/Tab/ModControl/Value/CompetenceConfig/Chapters/Chapter">
<xsl:variable name="Chapter" select="."/>
<fo:table-row>
<fo:table-cell border-style="inset" border-width="2pt" padding="2pt" background-repeat="repeat" display-align="center">
<fo:block>
<xsl:value-of select="@ID"/>
</fo:block>
</fo:table-cell>
<fo:table-cell border-style="inset" border-width="2pt" padding="2pt" background-repeat="repeat" display-align="center">
<fo:block>
<xsl:value-of select="@location"/>
</fo:block>
</fo:table-cell>
<fo:table-cell border-style="inset" border-width="2pt" padding="2pt" background-repeat="repeat" display-align="center">
<fo:block>
<xsl:value-of select="@price"/>
</fo:block>
</fo:table-cell>
</fo:table-row>
</xsl:for-each>
</fo:table-body>
这种方法有效但不是例如一个“items”节点,每个表中包含项目,我得到3个表,其中3个“items”节点看起来相同。如何在第一个表中显示第一个“节点”项,在第二个表中显示第二个“项”节点,依此类推?我真的很感激任何帮助。我已经尝试解决这个问题好几天了,我是xsl-fo的新手。
非常感谢!
答案 0 :(得分:1)
这样的事情怎么样?不知道你还有什么,并纠正你在XML中的错误......
if(!require(BayesFactor)){install.packages('BayesFactor')}
require(BayesFactor)
##################################################
exp(ttest.tstat(t= 2 , n1=40, n2=40, nullInterval =c(0, Inf), rscale = sqrt(2)/2,
complement = FALSE, simple = FALSE)$bf) ### !CHECK THIS OUTPUT! ###
exp(ttest.tstat(t= 2 , n1=40, n2=40, nullInterval =c(0, Inf), rscale = sqrt(2)/2,
complement = FALSE, simple = TRUE)) ### !CHECK THIS OUTPUT! ###
产生这个:
这个模板可以为每个&#34;项目&#34;创建一个表格。标签,每一行&#34;标题&#34;标签和&#34;标题&#34;中每个属性的单元格标签。我相信这就是你想要的。