XSL适用于除了一个之外的所有人

时间:2011-07-29 19:49:19

标签: xml xslt

我目前正在开发一个XSL样式表,用于将查找辅助工具转换为html。以下行选择头标记的任何实例,并将其列在我的目录中。

<xsl:for-each select="c01 | *[head]">

说有一个头,我不想选择。这可能吗?

谢谢!

2 个答案:

答案 0 :(得分:2)

根据评论:

  

有一个带头标记的元素,我希望它不会影响。因此,虽然可能会显示admininfo/head,但我希望controlaccess/head不要。

这是一个XPath问题。使用:

"*[head and not(self::controlaccess)]"

此XPath将选择 上下文中的所有元素, controlaccess 至少一个head子标记。

你的最终除了一个

<xsl:for-each select="c01 | *[head and not(self::controlaccess)]">

答案 1 :(得分:0)

为什么不将for-each循环的内部包裹在xsl:if中,以便仅在当前头部不是您想要跳过的头部时才应用循环体。