В XSLT 2.0 я преобразовываю документ tei-xml
в HTML. В этом преобразовании мне нужен контент из другого документа: я хочу скопировать / преобразовать небольшой набор узлов из второго документа в вывод HTML.
При обработке основного tei
документа я получаю идентификатор и присваиваю его переменной:
<xsl:variable name="licenseid" select="./replace(@corresp,'#','')"/>
Затем я перехожу к другому документу и выбираю узел, используя переменную, с возвращенным узлом, назначенным переменной:
<xsl:variable name="licenseloc" select="doc(concat($somepath,'includes_sourcedesc.xml'))//tei:list[@type='copyright_type']/tei:item[@xml:id=$licenseid]"/>
Этот узел, который я получаю, выглядит так:
<list type="copyright_type">
<item xml:id="copyright-cc-by-nc-sa-4.0">
<desc xml:lang="en">This work is made by available the author under the
<ref target="http://creativecommons.org/licenses/by-nc-sa/4.0/">Creative Commons Attribution-NonCommercial-ShareAlike
4.0 International License</ref>.</desc>
</item>
</list>
И я хочу преобразовать это (из desc
) в это:
<span>This work is made by available by the author under the
<a href="http://creativecommons.org/licenses/by-nc-sa/4.0/">Creative Commons Attribution-NonCommercial-ShareAlike
4.0 International License</a>.</span>
Если бы это было в моем «текущем» tei
документе, я бы обработал его с помощью шаблонов, но я не уверен, как копировать и преобразовывать вложенные слои из другого «текущего» документа.