sort select="salary" data-type="number" order="descending" : Sort « XSLT stylesheet « XML






sort select="salary" data-type="number" order="descending"


File: Data.xml
<employees>
  <employee hireDate="04/23/1999">
    <last>A</last>
    <first>B</first>
    <salary>100000</salary>
  </employee>

  <employee hireDate="09/01/1998">
    <last>C</last>
    <first>D</first>
    <salary>95000</salary>
  </employee>

  <employee hireDate="08/20/2000">
    <last>E</last>
    <first>F</first>
    <salary>89000</salary>
  </employee>

</employees>
File: Transform.xslt
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  version="1.0">
  <xsl:output method="text" />
  <xsl:template match="employees">
    <xsl:apply-templates>
      <xsl:sort select="salary" data-type="number" order="descending" />
    </xsl:apply-templates>
  </xsl:template>
  <xsl:template match="employee">
    Last:
    <xsl:apply-templates select="last" />
    First:
    <xsl:apply-templates select="first" />
    Salary:
    <xsl:apply-templates select="salary" />
    Hire Date:
    <xsl:apply-templates select="@hireDate" />
    <xsl:text>
        </xsl:text>
  </xsl:template>
</xsl:stylesheet>

Output:


    Last:
    A
    First:
    B
    Salary:
    100000
    Hire Date:
    04/23/1999
        
    Last:
    C
    First:
    D
    Salary:
    95000
    Hire Date:
    09/01/1998
        
    Last:
    E
    First:
    F
    Salary:
    89000
    Hire Date:
    08/20/2000
        
  

  

  

 








Related examples in the same category

1.Sort value first then output
2.Sort by two columns
3.Sort by attribute value
4.Sort by substring
5.sort by different level of node
6.sort element by data type
7.for each sort descending
8.sort with current-grouping-key() function
9.sort by attribute
10.Sort by element text
11.Set sort order as ascending
12.sorts in text
13.sorts in numeric mode.
14.sorts upercase letters first
15.sorts lowercase letters first