У меня есть шаблон:
<xsl:template match="paragraph">
...
</xsl:template>
Я называю это:
<xsl:apply-templates select="paragraph"/>
Для первого элемента мне нужно сделать:
<xsl:template match="paragraph[1]">
...
<xsl:apply-templates select="."/><!-- I understand that this does not work -->
...
</xsl:template>
Как позвонить <xsl:apply-templates select="paragraph"/>
(для первого элемента paragraph
) из шаблона <xsl:template match="paragraph[1]">
?
Пока что у меня есть что-то вроде петли.
Я решаю эту проблему так (но мне это не нравится):
<xsl:for-each select="paragraph">
<xsl:choose>
<xsl:when test="position() = 1">
...
<xsl:apply-templates select="."/>
...
</xsl:when>
<xsl:otherwise>
<xsl:apply-templates select="."/>
</xsl:otherwise>
</xsl:choose>
</xsl:for-each>