几天以来,我尝试在字符串中添加指向子字符串的链接w[@type='verb']
。我正在TEI-XML
研究粘土片的音译,因此elements
和@type
所<w>
包含<l>
的顺序并不总是相同。
XSLT
3.0版:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:template match="/">
<xsl:apply-templates select="//div1"/>
</xsl:template>
<xsl:template match="//div1">
<!-- additional content before <ul> -->
<ul>
<li>
<xsl:for-each select="descendant-or-self::lg/l[@n]">
<xsl:variable name="verb1" select="w[@type='verb']"/>
<xsl:variable name="href1" select="w[@type='verb']/@lemmaRef"/>
<xsl:variable name="single-l" select="w[@type='coo'] | w[@type='noun'] | w[@type='verb'] | w[@type='num'] | w[@type='adv'] | w[@type='adj'] | g | name"/>
<xsl:value-of select="$single-l"/>
<sup><xsl:value-of select="./@n"/></sup>
</xsl:for-each>
</li>
</ul>
</xsl:template>
我需要lemmaRef
为每个w[@type='verb']
.
TEI
我@xml:id
从除此示例element
之外的其他示例中删除的l
示例:
<lg>
<l n="4b-5a" xml:id="ktu1-3_ii_l4b-5a">
<w type="coo">w</w><space/>
<w type="verb" lemmaRef="uga/verb.xsl#qry"><damage degree="medium" facs="definir"><supplied resp="KTU">t</supplied></damage>qry</w>
<g>.</g>
<w type="noun" lemmaRef="uga/noun.xsl#ġlm">ġlmm</w>
<lb/><w>b</w><space/>
<w type="noun" lemmaRef="uga/noun.xsl#št">št</w>
<g>.</g>
<w type="noun" lemmaRef="uga/noun.xsl#ġr">ġr</w>
<g>.</g>
</l>
</lg>
我需要显示:
<ul>
<li>w <a href="uga/verb.xml#qry">tqry</a> . ġlmm št . ġr .<sup>4b-5a</sup></li>
</ul>
“tqry”是一个动词,包含在<l>
.
我该怎么做XSLT
才能显示<a href="{$href1}"><xsl:value-of select="$verb1"/>
。我尝试或定义了先前代码的新变量replace
,但它不起作用。我也尝试过,但我认为我仍然有理解的问题......$single-l
XSLT
key
在此先感谢您的友好建议。