在我的基于文本的 XML 语料库中,我有很多不同数据的标记(使用 TEI 模式)。作为将这些文档转换为 PDF 的过程的一部分,我将其预处理为一个简化的文件,以便 xsl:fo 进行转换。在该预处理中,我通过查找标记并添加来分配脚注编号<sup>incremented integer</sup>
.
像这样的一行:
<p>
<seg>
<date type="deposition_date">Item anno et die quo supra</date>. <persName>P Lapassa Senior</persName> testis iuratus idem per omnia quod predictus <persName>Hugo de Mamiros</persName>.
</seg>
</p>
用这个处理:
<xsl:template match="tei:date">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy><sup><xsl:number count="date[@type='deposition_date'" from="tei:p" format="1" level="any"/></sup>
</xsl:template>
输出这个(注意 的新行<sup>
):
<p>
<seg>
<date type="deposition_date">Item anno et die quo supra</date>
<sup>1</sup>. <persName>P Lapassa Senior</persName> testis iuratus idem per omnia quod predictus <persName>Hugo de Mamiros</persName>.
</seg>
</p>
结果是当 xsl:fo 处理<sup>
成上标时,目标和上标之间有一个空格,像这样:
项目 anno et die quo supra 1。P Lapassa Senior testis iuratus idem per omnia quod predictus Hugo de Mamiros。
有没有办法阻止在复制过程中引入新的行/回车?
附加信息:我<xsl:strip-space elements="*"/>
在 xsl 文档中。针对 Saxon PE 9.6 和 HE 9.8 进行了测试。
提前致谢。