<xsl:copy-of> 元素

将子树和结果树片断插入结果树。

<xsl:copy-of
  select = Expression />

特性

  • select
    必选。 标识要复制的节点的 XPath 表达式。 每个节点下面的子树将整个复制到结果树中。

元素信息

出现次数

无限制

父元素

xsl:attributexsl:commentxsl:copyxsl:elementxsl:fallbackxsl:for-eachxsl:ifxsl:messagexsl:otherwisexsl:paramxsl:processing-instructionxsl:templatexsl:variablexsl:whenxsl:with-param、输出元素

子元素

(无子元素)

备注

如果计算表达式得出的结果是结果树片断,整个片断将复制到结果树中。 如果结果为节点集,节点集中的所有节点将按文档顺序复制到结果树中。 复制元素节点的同时,也将复制属性节点、命名空间节点和元素节点的子级以及元素节点本身。 根节点通过复制其子级进行复制。 如果结果既不是节点集,也不是结果树片断,结果将转换为字符串,然后插入结果树中,与 <xsl:value-of> 相同。

示例

该示例 XSLT 文件针对示例 XML 文件进行操作,查找 <person> 元素以及 <given-name><family-name> 子元素。 该段将包含当前节点的第一个 <given-name> 子元素,包含所有属性和子元素,后跟一个空格和当前节点的第一个 <family-name> 子元素,包含所有属性和子元素。

XML 文件 (family.xml)

XSLT 文件 (family.xsl)

输出

以下是格式化输出:

Fred Freddy Smith

Robert Bob Smith

以下是处理器输出,为了清楚起见,增加了分行符。

<?xml version="1.0"?>

<p><given-name age="10">

<name>Fred</name>

<nick-name>Freddy</nick-name>

</given-name>

<family-name>Smith</family-name></p>

<p><given-name age="10">

<name>Robert</name>

<nick-name>Bob</nick-name>

</given-name>

<family-name>Smith</family-name></p>

另请参见

参考

<xsl:value-of> 元素