Élément <xsl:copy>
Copie le nœud actuel de la source vers la sortie.
<xsl:copy
use-attribute-sets = QNames
</xsl:copy>
Attributs
- use-attribute-sets
Liste d'ensembles d'attributs, séparés par des espaces blancs, spécifiée par une liste de Noms qualifiés (XSLT). La spécification de cet attribut déclare chaque attribut dans chaque ensemble d'attributs de la liste.
Informations sur les éléments
Nombre d'occurrences |
Illimité |
Éléments parents |
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, éléments de sortie |
Éléments enfants |
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, éléments de sortie |
Notes
L'élément <xsl:copy> crée dans la sortie un nœud du même nom, du même espace de noms et du même type que le nœud actuel. Les attributs et les enfants ne sont pas automatiquement copiés. Cet élément permet une transformation d'identité.
Exemple
L'exemple suivant effectue une transformation d'identité sur l'ensemble d'un document. Cette transformation copie chaque nœud de la source dans la sortie pour fournir une arborescence logiquement équivalente. Elle ne produit pas une équivalence de caractères : les entités sont développées et les espaces blancs qui ne sont pas marqués comme importants risquent d'être supprimés.
Fichier 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>
Fichier 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>
Sortie
Voici une partie de la sortie formatée, tronquée à droite :
Gambardella, MatthewComputer44.952000-10-01An in-depth look and her own childhood to become queen of the world.Corets, EvaFa
Voici les données en sortie du processeur :
<?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>