je testais sur l'identité de transformation XSLT et j'ai donc choisi au hasard l'exemple suivant sur www.w3schools.com parce qu'il me permet d'essayer en ligne:identité transformation XSLT
http://www.w3schools.com/xsl/tryxslt.asp?xmlfile=cdcatalog&xsltfile=cdcatalog_apply
J'ai changé le XSLT dans le volet droit à transformer identité:
<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- Edited by XMLSpy® -->
<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>
Et essayé. Ce que j'ai trouvé, c'est que les nœuds /catalog/cd/title
ne sont pas copiés dans la sortie (mais tout le reste le fait). Si je change le nom de /catalog/cd/title
en /catalog/cd/title1
(ou n'importe quel autre nom) il copie le noeud. Donc je me demandais s'il y avait juste un bogue dans l'implémentation de XSLT sur www.w3schools.com ou s'il y a une signification spéciale pour le noeud XML 'title' qui ne le copie pas? Je prévois d'utiliser la transformation XSLT comme décrit ci-dessus, mais je veux être sûr que je suis au courant de toutes les gotchas ...
ah merci je n'étais pas au courant de xsltproc jusqu'à maintenant! – Kevin
Vous pouvez également utiliser saxon-xslt (en fonction de la cible). Ce sont mes favoris avec saxonb pour XSLT2. – Renaud