我尝试使用 XSLT 将 XML 结构转换为 FO 脚本。我对编号的标题有疑问。我有一个这样的 XML 结构:
<?xml version="1.0"?>
<document>
<type1>
<heading>Topic level1</heading>
<paragraph>Text</paragraph>
</type1>
<type2>
<heading>Topic level1</heading>
<paragraph>Text</paragraph>
</type2>
<type1>
<heading>Topic level1</heading>
<type1>
<heading>Topic level2</heading>
<paragraph>Text</paragraph>
</type1>
<heading>Topic level3</heading>
<paragraph>Text</paragraph>
</type1>
</type1>
</type1>
...
</document>
原始的 XML 结构嵌套更深,元素更多。现在我有一个这样的模板:
<xsl:template match="type1/heading | type2/heading | type3/heading | type4/heading |
type5/heading | type6/heading | type7/heading">
<fo:block font-weight="bold" font-size="13pt" space-after="5mm" id="{generate-
Id()}">
<xsl:number count="type1| type2| type3| type4| type5| type6 | type7"
format="1.1" level="multiple"/> 
<xsl:apply-templates/>
</fo:block>
</xsl:template>
输出基本没问题。但所有标题都有相同的样式参数。我想为不同的标题级别设置不同的样式。例如像这样:
1.主题级别1
文本
2. 主题级别1
文本
3. 主题级别1
文本
3.1 主题级别2
文本
3.1.1 主题级别3
文本
我怎样才能做到这一点?