В XPATH под XSLT 2.0 мне неясно, почему не работает xsl:choose/xsl:when @test
.
Когда я запускаю этот шаблон тестирования для элемента tei:del[@rend='expunctus']
, тест НЕ возвращает результат:
<xsl:template match="tei:del[@rend='expunctus'] |
tei:gap |
tei:sic |
tei:supplied[@reason='added'] |
tei:surplus[@reason='repeated' or @reason='surplus'] |
tei:unclear">
<xsl:choose>
<xsl:when test="tei:del[@rend='expunctus']">
[<xsl:text>EXPUNCTUS</xsl:text>]
</xsl:when>
</xsl:template>
Когда я запускаю этот шаблон только с атрибутом @rend='expunctus'
в качестве теста, тест возвращает результат:
<xsl:template match="tei:del[@rend='expunctus'] |
tei:gap |
tei:sic |
tei:supplied[@reason='added'] |
tei:surplus[@reason='repeated' or @reason='surplus'] |
tei:unclear">
<xsl:choose>
<xsl:when test="@rend='expunctus'">
[<xsl:text>EXPUNCTUS</xsl:text>]
</xsl:when>
</xsl:template>
Это из-за текущего узла ужеselected?
Я предпочитаю проверять элемент, а не только атрибут, чтобы устранить возможную неоднозначность.
Спасибо.