我试图找出一种方法,确保感兴趣的元素不会(递归地)包含“相同”元素。例如: -XSLT - XPath,某些类型的最深元素
<Ev>
<Ev attr="0">
<Ev someOtherAttr="str1">
<Ev attr="1">
<Ev>
</Ev>
</Ev>
</Ev>
</Ev>
</Ev>
在这里,我想确保我拥有的元素是最深的一个与属性命名ATTR(属性值可以是任意的,不应该被匹配,也不考虑)。
因此,在这种情况下,我想选择<Ev attr="1">
出两个 “张玉峰” 元素:
<Ev attr="0">
和<Ev atttr="1">
我一直想做什么:
<xsl:for-each select="//Ev/@attr">
<xsl:if select="//*[not(child::Ev/@attr)]">
<xsl:value-of select="count(ancestor::node())"/>
</xsl:if>
</xsl:for-each>
但如果部分当然不好,也许一个for-each select="<condition_a> and not(<condition_b>)"
将是走?
(编辑什么我已经试过的问题)
问候 手枪先生,
你有没有在你的最终尝试新鲜事物@皮特?如果是,那么你需要发布你已经尝试过。如果没有,那么你应该尝试一下自己并发布!因为“这里是要求,给我代码”类型的问题不被鼓励,通常被视为作业的东西,并得到许多downvotes和关闭的投票.. – 2013-02-13 10:06:59
请告诉我们你到目前为止的XSLT,以及这将适合于。 – JLRishe 2013-02-13 10:21:56
对不起,不知道。但我会在未来:-)。现在我添加了我的想法。 – PistolPete 2013-02-13 11:08:23