I tried to sort xml nodes by an attribute value but although I sorted them correctly I am not able to get the same xml changed as output.
Source:
<?xml version="1.0" encoding="UTF-8"?>
<enumeration attributeTypeId="com.ibm.team.workitem.enumeration.area" name="Área">
<literal externalValue="Enol" id="com.ibm.team.workitem.enumeration.area.literal.l3" name="Enol"/>
<literal externalValue="Pasivo" id="com.ibm.team.workitem.enumeration.area.literal.l8" name="Pasivo"/>
<literal externalValue="Proyectos" id="com.ibm.team.workitem.enumeration.area.literal.l5" name="Proyectos"/>
<literal externalValue="Servicios" id="com.ibm.team.workitem.enumeration.area.literal.l10" name="Servicios"/>
<literal default="true" externalValue="---" id="---" name="---" null="true" />
<literal externalValue="Activo" id="com.ibm.team.workitem.enumeration.area.literal.l7" name="Activo"/>
<literal externalValue="Canales y MMP" id="com.ibm.team.workitem.enumeration.area.literal.l9" name="Canales y MMP"/>
<literal externalValue="Arquitectura" id="com.ibm.team.workitem.enumeration.area.literal.l4" name="Arquitectura"/>
<literal externalValue="Centro Información" id="com.ibm.team.workitem.enumeration.area.literal.l6" name="Centro Información"/>
<literal externalValue="Desarrollo Corporativo" id="com.ibm.team.workitem.enumeration.area.literal.l2" name="Desarrollo Corporativo"/>
<literal externalValue="Producción y Sistemas" id="com.ibm.team.workitem.enumeration.area.literal.l1" name="Producción y Sistemas"/>
</enumeration>
XSL:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<xsl:for-each select="enumeration/literal">
<xsl:sort select="@name"/>
<xsl:value-of select="@name"/>
<!-- this should be different, I tried with select="current()" too -->
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
Output expected:
<?xml version="1.0" encoding="UTF-8"?>
<enumeration attributeTypeId="com.ibm.team.workitem.enumeration.area" name="Área">
<literal default="true" externalValue="---" id="---" name="---" null="true" />
<literal externalValue="Activo" id="com.ibm.team.workitem.enumeration.area.literal.l7" name="Activo"/>
<literal externalValue="Arquitectura" id="com.ibm.team.workitem.enumeration.area.literal.l4" name="Arquitectura"/>
<literal externalValue="Canales y MMP" id="com.ibm.team.workitem.enumeration.area.literal.l9" name="Canales y MMP"/>
<literal externalValue="Centro Información" id="com.ibm.team.workitem.enumeration.area.literal.l6" name="Centro Información"/>
<literal externalValue="Desarrollo Corporativo" id="com.ibm.team.workitem.enumeration.area.literal.l2" name="Desarrollo Corporativo"/>
<literal externalValue="Enol" id="com.ibm.team.workitem.enumeration.area.literal.l3" name="Enol"/>
<literal externalValue="Pasivo" id="com.ibm.team.workitem.enumeration.area.literal.l8" name="Pasivo"/>
<literal externalValue="Producción y Sistemas" id="com.ibm.team.workitem.enumeration.area.literal.l1" name="Producción y Sistemas"/>
<literal externalValue="Proyectos" id="com.ibm.team.workitem.enumeration.area.literal.l5" name="Proyectos"/>
<literal externalValue="Servicios" id="com.ibm.team.workitem.enumeration.area.literal.l10" name="Servicios"/>
</enumeration>