Si je comprends bien votre question, et vous voulez générer le code XML suivant de yo ur XML exemple:
<?xml version="1.0" encoding="UTF-16"?>
<items>
<items-items>3</items-items>
</items>
puis le XSLT suivant peut être utilisé:
<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output indent="yes" />
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>
<!--Match elements who's name is equal to it's parent -->
<xsl:template match="*[name()=name(..)]">
<!--create an element using the name of the parent element, followed by a "-", followed by the matched element name -->
<xsl:element name="{name(..)}-{name()}">
<xsl:apply-templates select="@*|node()"/>
</xsl:element>
</xsl:template>
</xsl:stylesheet>
Aucune des Sécateur ci-dessus sont XML valide, le "à" cible est très mal. S'il vous plaît pourriez-vous corriger cela pour être valide XML. – Robin