我的研究项目,我在XML这个文件/ TEIXSL的for-each空间分隔的属性值
<TEI xmlns="http://www.tei-c.org/ns/1.0" >
<body>
<div>
<p>
<span target="#" type="passage" ana="Tag957 Tag874">
<span target="#" ana=""/>
</span>
<seg><date when="1980-01-01" type="date_seg"/>blabla blabla
blabla blablablabla blablablabla blablablabla blablablabla bl
</seg>
<span target="#" type="passage" ana="Tag1657 ">
<span target="#" ana=""/>
</span>
<seg><date from="1980-01-03" to="1980-01-05" type="date_seg"/>blabla
</seg>
</p>
</div>
</body>
</TEI>
我需要提取包含在跨越每个标签/ @语录:日期和以下节点seg的字符串长度。如果我们计算日期属性@from或@to,我只需要@from的值。 我需要看起来像:
Tag957;1980-01-01;88
Tag874;1980-01-01;88
Tag1657;1980-01-03;11
我想这一点,但我不知道怎么换每次在一个时间applyed一个属性值表达
<xsl:template match="tei:p">
<xsl:for-each select="tei:span">
<xsl:value-of select="./@ana"/>
<xsl:text>;</xsl:text>
<xsl:if test="following-sibling::tei:seg/tei:date/@from or following-sibling::tei:seg/tei:date/@to">
<xsl:value-of select="following-sibling::tei:seg/tei:date/@from"/>
</xsl:if>
<xsl:if test="following-sibling::tei:seg/tei:date/@when">
<xsl:value-of select="following-sibling::tei:seg/tei:date/@when"/>
</xsl:if>
<xsl:text>;</xsl:text>
<xsl:value-of select="string-length(following-sibling::tei:seg)"/>
<xsl:text>;</xsl:text>
<xsl:value-of select="$newLine"/>
</xsl:for-each>
</xsl:template>
哪个XSLT处理器,XSLT版本做你用/你可以用吗? –
我在Oxygen软件中使用XSLT处理器,我选择的是Saxon-HE9.6.0.7 –