Elemento <xsl:copy>
Copia el nodo actual del origen al resultado.
<xsl:copy
use-attribute-sets = QNames
</xsl:copy>
Atributos
- use-attribute-sets
Una lista de conjuntos de atributos separados por espacios en blanco, especificada como lista de Nombres completos.Al especificar este atributo se declara cada atributo en los conjuntos de atributos listados.
Información del elemento
Número de apariciones |
Ilimitado |
Elementos primarios |
xsl:attribute, xsl:comment, xsl:copy, xsl:element, xsl:fallback, xsl:for-each, xsl:if, xsl:message, xsl:otherwise, xsl:param, xsl:processing-instruction, xsl:template, xsl:variable, xsl:when, xsl:with-param, elementos de salida |
Elementos secundarios |
xsl:apply-templates, xsl:attribute, xsl:call-template, xsl:choose, xsl:comment, xsl:copy, xsl:copy-of, xsl:element, xsl:for-each, xsl:if, xsl:processing-instruction, xsl:text, xsl:value-of, xsl:variable, elementos de salida |
Comentarios
El elemento <xsl:copy> crea un nodo en el resultado con el mismo nombre, espacio de nombres y tipo como el nodo actual.Los atributos y los secundarios no se copian automáticamente.Este elemento hace la transformación de identidad posible.
Ejemplo
En el siguiente ejemplo se realiza una transformación de identidad en un documento entero.La transformación de identidad copia cada uno de los nodos del origen al resultado para proporcionar un árbol equivalente desde el punto de vista lógico.No produce equivalencia carácter a carácter: las entidades se expandirán y el espacio blanco no marcado como significativo podría quitarse.
Archivo XML (booksshort.xml)
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="identityxfm.xsl"?>
<catalog>
<book id="bk101">
<author>Gambardella, Matthew</author>
<title>XML Developer's Guide</title>
<genre>Computer</genre>
<price>44.95</price>
<publish_date>2000-10-01</publish_date>
<description>An in-depth look at creating applications with
XML.</description>
</book>
<book id="bk102">
<author>Ralls, Kim</author>
<title>Midnight Rain</title>
<genre>Fantasy</genre>
<price>5.95</price>
<publish_date>2000-12-16</publish_date>
<description>A former architect battles corporate zombies,
an evil sorceress, and her own childhood to become queen of the
world.</description>
</book>
<book id="bk103">
<author>Corets, Eva</author>
<title>Maeve Ascendant</title>
<genre>Fantasy</genre>
<price>5.95</price>
<publish_date>2000-11-17</publish_date>
<description>After the collapse of a nanotechnology society
in England, the young survivors lay the foundation for a new
society.</description>
</book>
</catalog>
Archivo XSLT (identityxfm.xsl)
<?xml version="1.0"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform" >
<xsl:template match="/ | @* | node()">
<xsl:copy>
<xsl:apply-templates select="@* | node()"/>
</xsl:copy>
</xsl:template>
</xsl:stylesheet>
Resultados
Esta es una parte del resultado con formato, truncado en el lado derecho:
Gambardella, MatthewComputer44.952000-10-01Un examen detallado y su propia infancia para convertirse en reina del mundo.Corets, EvaFa
Este es el resultado del procesador:
<?xml version="1.0"?><?xml-stylesheet type="text/xsl"
href="identityxfm.xsl"?><catalog><book id="bk101"><author>Gambardella,
Matthew</author><title>XML Developer's
Guide</title><genre>Computer</genre><price>44.95</price><publish_date>2000
-10-01</publish_date><description>An in-depth look at creating
applications with
XML.</description></book><book id="bk102">
...
</book></catalog>