<xsl:for-each select="TEI/text/body/ab">
<div class="div-1">
<div id="oldnubian" class="div-3">
<p><big><xsl:value-of select="s[@type='orig']"/></big></p>
<p><big><xsl:value-of select="s[@type='parse']"/></big></p>
<p><xsl:value-of select="s[@type='roman']"/></p>
<p><xsl:value-of select="s[@type='gloss']"/></p>
<p><xsl:value-of select="s[@type='trans']"/></p>
</div>
</div>
<script src="dist/leipzig.js"></script>
<script>
document.addEventListener('DOMContentLoaded', function() {Leipzig
('#oldnubian', { firstLineOrig: true }).gloss();});
</script>
#!/usr/bin/env python3
# 作成者: 東京外国語大学大学院 加藤幹治 (jiateng.ganzhi(at)gmail.com)
# 作成日: 2022年4月28日
# 依頼者: 国立国語研究所研究系助教・宮川創、および、教授・高田智和
import pandas as pd
import re
from xml.etree.ElementTree import Element, SubElement, ElementTree
import xml.etree.ElementTree as ET
# なぜかElementTreeのwriteメソッドにはインデントを装飾するオプションがないので、
# インデントを適切に設定する関数を定義する
def _pretty_print(current, parent=None, index=-1, depth=0):
for i, node in enumerate(current):
_pretty_print(node, current, i, depth + 1)
if parent is not None:
if index == 0:
parent.text = '\n' + ('\t' * depth)
else:
parent[index - 1].tail = '\n' + ('\t' * depth)
if index == len(parent) - 1:
current.tail = '\n' + ('\t' * (depth - 1))
## 加藤幹治氏のスクリプトでできた『沖縄語辞典」のTEI XMLの「叫びー声」の例
<entry>
<cit>
<bibl>『沖縄語辞典』国立国語研究所資料集5第9刷 (2009), p.100</bibl>
</cit>
<form>
<orth xml:lang="ryu-Hira">あびーぐぃー</orth>
<orth xml:lang="ryu-Jpan" n="1">叫びー声</orth>
<orth xml:lang="ryu-Jpan" n="2">叫声</orth>
<orth xml:lang="ryu-Latn" n="1">ʔabiigwii</orth>
<orth xml:lang="ryu-Latn" n="2">abiigwii</orth>
<pron notation="ipa">ʔabiigwii</pron>
<pron notation="accent">0</pron>
</form>
<gramGrp>
<pos>NOUN</pos>
<subc>名</subc>
</gramGrp>
<sense xml:lang="jp-Jpan" n="1">
<def>叫び声。kaamakara~nu cikariiN.遠くから叫び声が聞こえる。</def>
</sense>
<usg></usg>
</entry>
(すみません、私の力だけではすべての琉球諸語で書けません・・・)