Я хотел бы выровнять несколько переводов текста в кодировке TEI и преобразовать его через xslt в html.
xml (адаптировано из https://www.tei-c.org/release/doc/tei-p5-doc/en/html/ref-linkGrp.html) выглядит как это:
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="mini.xsl"?>
<TEI>
<linkGrp type="translation">
<link target="#CCS1 #SW1"/>
<link target="#CCS2 #SW2"/>
<link target="#CCS #SW"/>
</linkGrp>
<div type="volume" xml:id="CCS"
xml:lang="fr">
<p>
<s xml:id="CCS1">Longtemps, je me suis couché de bonne heure.</s>
<s xml:id="CCS2">Parfois, à peine ma bougie éteinte, mes yeux se fermaient si vite que je n'avais pas le temps de me dire : "Je m'endors."</s>
</p>
<!-- ... -->
</div>
<div type="volume" xml:id="SW" xml:lang="en">
<p>
<s xml:id="SW1">For a long time I used to go to bed early.</s>
<s xml:id="SW2">Sometimes, when I had put out my candle, my eyes would close so quickly that I had not even time to say "I'm going to sleep."</s>
</p>
<!-- ... -->
</div>
</TEI>
Элемент linkGrp
содержит информацию о выравнивании. Я хотел бы выбрать s-элемент в div-элементах в соответствии с этой информацией о выравнивании.
С помощью следующего xsl-файла я могу вывести значения атрибутов самостоятельно, но я не знаю, как получить и вывести соответствующие строки:
<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="text"/>
<xsl:template match="/">
<xsl:for-each select="TEI/linkGrp">
<xsl:apply-templates select="link"/>
</xsl:for-each>
</xsl:template>
<xsl:template match="link">
<xsl:value-of select="@target"/>
</xsl:template>
</xsl:stylesheet>
Я пытаюсь получить простую html -таблицу, в которой # CCS-строк на одной стороне и #SW на другой, то есть:
<table>
<tr>
<td>Longtemps, je me suis couché de bonne heure.</td>
<td>For a long time I used to go to bed early.</td>
</tr>
<tr>
<td>Parfois, à peine ma bougie éteinte, mes yeux se fermaient si vite que je n'avais pas le temps de me dire : "Je m'endors."</td>
<td>Sometimes, when I had put out my candle, my eyes would close so quickly that I had not even time to say "I'm going to sleep."</td>
</tr>
</table>
Любая помощь будет оценена!