HOME

XSL Tutorial
XSL HOME
XSL Introduction
XSL Languages
XSL Browsers
XSL Transform
XSL template
XSL value-of
XSL for-each
XSL sort
XSL if
XSL choose
XSL apply-templates
XSL on the Client
XSL on the Server

References
XSLT Elements

Please visit our sponsors !

The <xsl:sort> Element

Back

Definition and Usage

The <xsl:sort> element is used to sort the output.

Note: <xsl:sort> is always within <xsl:for-each> or <xsl:apply-templates>.


Syntax

<xsl:sort
select="expression"
lang="language-code"
data-type="text|number|qname"
order="ascending|descending"
case-order="upper-first|lower-first"/>

Attributes

Attribute Value Description
select expression Optional. An XPath expression that specifies the nodes to be sorted
lang language-code Optional. Specifies which language is to be used by the sort
data-type text
number
qname
Optional. Specifies the data-type of the data to be sorted. Default is "text"
order ascending
descending
Optional. Specifies the sort order. Default is "ascending"
case-order upper-first
lower-first
Optional. Specifies whether upper- or lowercase letters are to be ordered first

Example 1

The example below will sort the output by artist:

<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
  <html>
  <body>
    <h2>My CD Collection</h2>
    <table border="1">
      <tr bgcolor="#9acd32">
        <th>Title</th>
        <th>Artist</th>
      </tr>
      <xsl:for-each select="catalog/cd">
      <xsl:sort select="artist"/>
      <tr>
        <td><xsl:value-of select="title"/></td>
        <td><xsl:value-of select="artist"/></td>
      </tr>
      </xsl:for-each>
    </table>
  </body>
  </html>
</xsl:template>
</xsl:stylesheet>

If you have Netscape 6 or IE 5 or higher you can view: the XML file and the XSL file.

View the result with Netscape 6 or IE 6


Back

Jump to: Top of Page or HOME or Printer Friendly Printer friendly page


Search W3Schools:


What Others Say About Us

Does the world know about us? Check out these places:

Dogpile Alta Vista MSN Google Excite Lycos Yahoo Ask Jeeves


We Help You For Free. You Can Help Us!


W3Schools is for training only. We do not warrant its correctness or its fitness for use. The risk of using it remains entirely with the user. While using this site, you agree to have read and accepted our terms of use and privacy policy.

Copyright 1999-2002 by Refsnes Data. All Rights Reserved


Validate How we converted to XHTML Validate

IISProtect
Password Protect
Your Web Pages



Your own Web Site?

Read W3Schools
Hosting Tutorial



$15 Domain Name
Registration
Save $20 / year!



Advertise
at W3Schools

Only 0.5 CPM



SELECTED LINKS

University Online
Master Degree
Bachelor Degree


Web Software

The Future of
Web Development


Jobs and Careers

Web Security
Web Statistics
Web Standards


PARTNERS

W3Schools
TopXML
VisualBuilder
XMLPitstop
DevelopersDex
DevGuru
Programmers Heaven
The Code Project
Tek Tips Forum
ZVON.ORG
TopXML Search