The <xsl:sort> element defines a sort key for nodes selected by <xsl:apply-templates> or <xsl:for-each> and determines the order in which they are processed.<xsl:sort select=EXPRESSION order="ascending" | "descending" case-order="upper-first"| "lower-first" lang=XML:LANG-CODE data-type="html" | "xml" | "text" />Specifies whether the nodes should be processed in "ascending" or "descending" order. The default is "ascending".
Indicates whether upper- or lowercase letters are to be ordered first. The allowable values are "upper-first" and "lower-first".
Defines whether items are to be ordered alphabetically or numerically. The allowable values are "text" and "number" with "text" being the default.
Type: Subinstruction, always appears as a child of <xsl:for-each>, where it must appear before the template proper or of <xsl:apply-templates>.