xsl-list
[Top] [All Lists]

Sorting elements by element name

2005-01-27 12:08:53
Hi,

I would like to sort some XML data by the names of the elements. For
example:

<fruit>
        <apple>some example text</apple>
        <pear>some more text</pear>
        <banana>and even more text</banana>
</fruit>

to

<fruit>
        <apple>some example text</apple>
        <banana>and even more text</banana>
        <pear>some more text</pear>
</fruit>

I have found some XSLT that does that on the net, but there seems to be a
problem when the elements have attributes. Is there a way to accomplish
the above (possibly by finetuning the XSLT below)?

<xsl:template match="@* | node()">
        <xsl:copy>
                <xsl:apply-template select="@* | node()">
                        <xsl:sort select="name()"/>
                </xsl:apply-template>
        </xsl:copy>
</xsl:template>

Many thanks

--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--



<Prev in Thread] Current Thread [Next in Thread>