如何复制一个节点并更改另一个节点

时间:2012-06-01 07:43:13

标签: xslt xslt-1.0 xslt-2.0

现在我陷入了简单的任务。 我有 代码:

<m:node1>
...
</m:node1>
<namespace:something attribute1='1'/>
<namespaceOther:other attribute1='2'/>
<namespaceOther:some attribute1='1'/>

所以如果attribute1 = 1,我需要这个:

<m:node1>
...
</m:node1>
<namespace:something attribute1='1'/>
<namespaceOther:some attribute1='1'/>

我需要做的是复制<m:node1>及其所有孩子,并检查<namespace:* attribute1是否相等然后复制它,否则不复制。

我想要像<template match="*:*">这样的东西,但这是不可能的。 无法弄清楚这一点。

1 个答案:

答案 0 :(得分:1)

这应该有效:

<xsl:copy-of select="m:node1" />
<xsl:copy-of select="*[@attribute1='1']" />