XSL / FO在Choose语句中跳过一个值

问题描述

我正在尝试找出一种方法来跳过XSL模板中的值。该值位于名为“ Editor”的select =“ ID”标记中。我试图跳过“选择时间”语句中的特定值,但不确定是否可行。

@H_502_2@ <xsl:param name="caption"> <xsl:choose> <xsl:when test="Description"><xsl:value-of select="Description" /></xsl:when> <xsl:otherwise><xsl:value-of select="ID" /></xsl:otherwise> </xsl:choose> </xsl:param>

如何在上述逻辑中获取xsl语句以跳过ID中称为编辑器的值?

解决方法

<xsl:param name="caption">
    <xsl:choose>
        <xsl:when test="Description"><xsl:value-of select="Description" /></xsl:when>
        <xsl:otherwise><xsl:value-of select="ID[not(. = 'Editor')]" /></xsl:otherwise>
    </xsl:choose>
</xsl:param>

“任何不等于<ID>的{​​{1}}的值。”

因此,如果只有一个'Editor',则会选择1个或0个节点。