我是XSLT的新手,我需要使用它进行一些转换。我想了解的是如何在xml文档中复制特定元素的子元素。
这个元素是动态的,但我知道它的命名空间的uri。有没有一种方法可以根据我拥有的uri匹配这个元素,然后将所有子元素复制到一起?
由于
答案 0 :(得分:1)
xsl:copy-of
元素可用于将节点集复制到结果树。
例如,要将foo
命名空间中的子节点复制到结果中,您可以使用以下内容:
<xsl:copy-of xmlns:ns="foo" select="ns:*"/>
另请参阅用于复制当前节点的xsl:copy
元素。
已编辑添加:如果仅在运行时知道命名空间,请参阅namespace-uri
XPath函数。
例如,如果您的变量$uri
包含名称空间URI,则上述内容的等价物如下:
<xsl:copy-of select="*[namespace-uri() = $uri]"/>