You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

TEI XML校勘本经OxGarage或TEI Stylesheets转换为DOCX时无脚注及校勘装置处理异常问题咨询

TEI XML校勘本转DOCX时脚注未生成、校勘装置混排的问题排查与解决

我完全懂你的挫败感!折腾TEI转格式尤其是DOCX确实容易踩坑,毕竟默认样式表对校勘标记的支持经常跟不上需求,更别说OxGarage的默认配置有时候真的很“保守”。结合你的代码片段和问题,咱们一步步来捋:

一、脚注未生成的核心原因

默认的TEI to DOCX样式表(尤其是OxGarage用的那套)不会自动把<app>里的异文转成脚注——它默认只会把<note>标记的内容转成脚注,而<app>这种专门的校勘装置,需要专门的XSLT模板来处理成脚注或者尾注,默认模板根本没做这件事。

二、校勘内容混排的问题

你看到<lem>和<rdg>直接混在正文里,是因为默认模板对<app>的处理逻辑就是“把所有子元素直接输出到正文”,完全没有做排版区分(比如把异文剥离到脚注、或者用括号/特殊格式标注)。

三、不用写完整自定义XSLT的快速解决办法

1. 检查OxGarage的隐藏配置选项

OxGarage其实有一些容易被忽略的参数可以调整:你上传TEI文件后,选择「TEI to DOCX」的时候,仔细看看有没有**「Render Apparatus」或者「Apparatus Style」**的下拉选项(不同版本的OxGarage位置可能不一样)。如果有的话,直接选「Footnotes」或者「Endnotes」模式,这会调用专门处理校勘装置的模板,就能自动生成脚注了。

2. 临时调整TEI标记(应急快速方案)

如果OxGarage没有这个选项,你可以临时把<app>里的异文手动转成<note>标记(虽然有点繁琐,但能快速出可用的DOCX):
把原来的校勘代码:

<app>
<lem wit="#KB">† Suutu Boġda Čingges Qaġan-u Gegegen-e Ergükü Öčig..</lem>
<rdg wit="#UB1">Boġda Činggis-ün Öčig Orosiba.</rdg>
<rdg wit="#UB2">Boġda Čingges-ün Öčiġ Orośibai.</rdg>
<rdg wit="#J"/>
<rdg wit="#EB">Boġda Činggis Qaġan-u Tayilġ-a-yin Öčig</rdg>
<rdg wit="#QL">Boġda Činggis-ün Y̌eke Öčig Orośiba - Y̌eke Öčig?</rdg>
<rdg wit="#ES">Boġda Činggis Qaġan-u Y̌eke Tayilġ-a-yin Öčig Orośib</rdg>
</app>

改成:

<lem wit="#KB">† Suutu Boġda Čingges Qaġan-u Gegegen-e Ergükü Öčig..<note place="foot">异文:UB1: Boġda Činggis-ün Öčig Orosiba; UB2: Boġda Čingges-ün Öčiġ Orośibai; EB: Boġda Činggis Qaġan-u Tayilġ-a-yin Öčig; QL: Boġda Činggis-ün Y̌eke Öčig Orośiba - Y̌eke Öčig?; ES: Boġda Činggis Qaġan-u Y̌eke Tayilġ-a-yin Öčig Orośib</note></lem>

这样默认样式表就能识别<note>并自动生成脚注了。

3. 用TEI Stylesheets命令行工具自定义输出

既然你已经能搞定LaTeX/PDF和HTML的导出,其实可以用TEI Stylesheets的命令行工具来生成DOCX,并且直接指定校勘装置的处理方式:
打开终端,运行类似这样的命令(替换成你的TEI文件路径):

tei-transform -s tei-all -x tei2docx.xsl -p "apparatus=footnotes" your_tei_file.xml > output.docx

这里的apparatus=footnotes参数就是告诉样式表把<app>里的异文转成脚注,还有apparatus=endnotes(尾注)或者apparatus=inline(行内标注)等选项可选,灵活性比OxGarage高很多。

四、关于TEI转格式的共鸣

真的太同意你说的了!数字人文的工具链对非专业开发者的友好度确实差很多,尤其是DOCX这种封闭格式,TEI Stylesheets的支持一直是短板。你能重拾搁置十年的编程技能搞定LaTeX和HTML已经很厉害了,DOCX确实是个硬骨头——毕竟微软的格式规范本身就复杂得离谱,XSLT转DOCX的模板很难覆盖所有场景。

内容的提问来源于stack exchange,提问作者Dotno

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.30 06:43:15