0

假设您有这样的文件:

<A>
    <B>
        <C>one</C>
    </B>
    <B>
        <C>two</C>
    </B>         
    <B>
        <C>three</C>
    </B>
</A>

然后使用 xsl 创建 B 节点的节点集

<xsl:variable name="bSet" select="//A/B"/>

你现在有这个:

    <B>
        <C>one</C>
    </B>
    <B>
        <C>two</C>
    </B>         
    <B>
        <C>three</C>
    </B>

在 xsl 1.0 中从该节点集中删除特定节点集的公认方法是什么?例如,您只想要 B 的 C 是“一”或“二”,而不是像这样的“三”?

    <B>
        <C>one</C>
    </B>
    <B>
        <C>two</C>
    </B>

您如何在 xsl 中执行此操作,使用更排他的选择器 r 可以在声明它之后从节点集中删除(即,它是动态的 java Arraylist)吗?

4

1 回答 1

1

表达方式:

$bSet[not(C='three')]

选择:

<B>
    <C>one</C>
</B>
<B>
    <C>two</C>
</B>

恐怕我不明白你的“扩展”问题。

于 2014-12-15T16:39:55.153 回答