sorts upercase letters first
File: Data.xml <?xml version="1.0" encoding="utf-8"?> <data> <word id="czech"/> <word id="Czech"/> <word id="cook"/> <word id="TooK"/> <word id="took"/> <word id="Took"/> </data> File: Transform.xslt <?xml version="1.0" encoding="utf-8"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:template match="/"> <TABLE> <xsl:for-each select="//word"> <xsl:sort case-order="upper-first" select="@id"/> <TR> <TH> <xsl:value-of select="@id"/> </TH> </TR> </xsl:for-each> </TABLE> </xsl:template> </xsl:stylesheet> Output: <?xml version="1.0" encoding="UTF-8"?><TABLE><TR><TH>cook</TH></TR><TR><TH>Czech</TH></TR><TR><TH>czech</TH></TR><TR><TH>TooK</TH></TR><TR><TH>Took</TH></TR><TR><TH>took</TH></TR></TABLE>