比较两个节点集并获取一个仅具有唯一值的新节点集 结果
具体来说,创建节点集 3,其中值在节点集 1 中但不在节点集 2 中(所以基本上是集合论中的nodeset3=nodeset1-nodeset2)。
这是具有一些值的节点集 1
<xsl:variable name="node1">
<footnotes>
<fn>a</fn>
<fn>b</fn>
<fn>c</fn>
<fn>d</fn>
</footnotes>
</xsl:variable>
<xsl:variable name="nodeset1" select="msxml:node-set($node1)" />
这里是节点集2
一个 b
结果应该是
nodeset3
<footnotes>
<fn>c</fn>
<fn>d</fn>
</footnotes>
我试过这个但没有成功
<xsl:variable name="node3">
<xsl:for-each select="$nodeset1/fn">
<xsl:if test="$nodeset2 != ./text()">
<fn2>
<xsl:value-of select="."/>
</fn2>
</xsl:if>
</xsl:for-each>
</xsl:variable>
<xsl:variable name="nodeset3" select="msxml:node-set($node3)" />
<xsl:variable name="node3">
<xsl:for-each select="$nodeset1/fn">
<xsl:if test="not($nodeset2/element =current()/text())">
<fn><xsl:value-of select="."/></fn>
</xsl:if>
</xsl:for-each>
</xsl:valieable>
抱歉花了一些时间,但得到了它