Questa trasformazione :
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:s="http://www.mycompany.com/schema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://www.mycompany.com/def_schema"
>
<xsl:output omit-xml-declaration="yes" indent="yes"/>
<xsl:template match="/*">
<r>
<xsl:apply-templates/>
</r>
</xsl:template>
<xsl:template match="DATA_A">
<a>
<xsl:apply-templates/>
</a>
</xsl:template>
<xsl:template match="OTHER_DATA_C">
<c>
<xsl:apply-templates/>
</c>
</xsl:template>
<xsl:template match="DATA_B">
<s:b>
<xsl:apply-templates/>
</s:b>
</xsl:template>
</xsl:stylesheet>
quando applicato al documento XML fornito :
<ROOT_NODE>
<DATA_A>1234</DATA_A>
<DATA_B>34567</DATA_B>
<OTHER_DATA_C>7.123456</OTHER_DATA_C>
</ROOT_NODE>
produce il risultato desiderato :
<r xmlns:s="http://www.mycompany.com/schema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.mycompany.com/def_schema">
<a>1234</a>
<s:b>34567</s:b>
<c>7.123456</c>
</r>