我在 TEI XML 中的关键版本在 GitHub 上使用 OxGarage 或 TEI 样式表未在 DOCX 中显示任何脚注

My critical edition in TEI XML is not showing any footnotes in DOCX using OxGarage or TEI Stylesheets on GitHub

几天来我一直在尝试使用 Stylesheets out there and OxGarage 为我的 TEI XML 文本的关键版本创建 DOCX 版本。由于某种原因,根本没有创建脚注。我做错了什么??

这是我的诗的开头,第一节的第一行。请查看下面的 .docx 截图:

    <?oxygen RNGSchema="http://www.tei-c.org/release/xml/tei/custom/schema/relaxng/tei_all.rng" type="xml"?>
    
    <TEI xmlns="http://www.tei-c.org/ns/1.0" xmlns:tei="http://www.tei-c.org/ns/1.0">
        <teiHeader>
            <fileDesc>
              ...
    </teiHeader>
        <text xml:lang="mn">
    <body>
                <pb n="11"/>
                <lb n="1"/>
                <head>
                    <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>
                </head>
                <lb n="2"/>
                <div>
                    <lg n="1">
                        <l n="1">
                            <g type="birga"/> Deger-e Tngri-yin <app>
                                <lem wit="#KB #EB">ĵay̌aġabar</lem>
                                <rdg wit="#UB1 #UB2 #J #ES" type="dialect">ĵiy̌aġabar</rdg>
                                <rdg wit="#QK">ǰay̌aḡabar</rdg>
                                <rdg wit="#Rin" type="orthographical">ǰayaġ-a-bar</rdg>
                                <rdg wit="#QL">'ay̌aġ-a-bar</rdg>
                            </app> törögsen..</l>
...

RANT:总的来说,学习如何将 TEI XML 文档导出为任何其他形式是一项艰巨的任务。如您所见,样式表 对关键设备没有任何作用 - 只是在正文中一起打印引理和变体读数!不,我没有接受过任何正式的数字人文培训,但它应该这么难吗?我设法重拾十年前的编程技能,学习在 LaTeX/PDF 和 HTML 中导出人眼可以接受的东西,但事实是,一个人需要以 DOCX 格式工作才能四处走动在某些圈子中,并不是每个人都有时间学习如何编写自己的 XSLT 以导出到 DOCX...

就是说,感谢您阅读本文并帮助可怜的灵魂!!!

关于 TEI 到 docx 的 XSLT,阅读 https://tei-c.org/release/doc/tei-xsl/profiles/default/docx/to.html 我认为有一个关键

<xsl:key name="FOOTNOTES" match="tei:note[tei:isFootNote(.) ]" use="1"/>

使用函数

<xsl:function name="tei:isFootNote" as="xs:boolean">
  <xsl:param name="context"/>
  <xsl:for-each select="$context">
    <xsl:choose>
      <xsl:when test="ancestor::tei:listBibl">false</xsl:when>
      <xsl:when test="@place='foot'">true</xsl:when>
      <xsl:when test="@place='bottom'">true</xsl:when>
      <xsl:when test="@place='parend'">true</xsl:when>
      <xsl:when test="@place='tablefoot'">true</xsl:when>
      <xsl:otherwise>false</xsl:otherwise>
    </xsl:choose>
  </xsl:for-each>
</xsl:function>

和模板 <xsl:template name="write-docxfile-footnotes-file"> 基本上与 <xsl:for-each select="key('FOOTNOTES',1)"> 一起收集并转换使用上述函数的上述键找到的任何内容。

因此,基于此,我希望看到任何例如<note place="bottom">...</note> 在您的输入中转换为脚注。但是你根本没有任何这样的元素,至少从你展示的那个片段来看是这样。

我不知道这是否有帮助,TEI 似乎是一个功能强大但因此复杂的 XML 应用程序,它有多种构建、标记和表达事物的方式,我不知道是否docx XSLT 的 TEI 迎合了各种方法,我对 XSLT 的(肤浅的)阅读表明您的输入 XML 需要 tei:note 具有 place 属性值的元素,例如 footbottom 或该函数中映射为 true 的其他值,如果您希望任何内容在 docx 中显示为脚注。