Sort a column : table « XSLT stylesheet « XML

XML
1. CSS Style
2. SVG
3. XML Schema
4. XQuery
5. XSLT stylesheet
Java
XML Tutorial
Java Tutorial
Java Source Code / Java Documentation
Java Open Source
Jar File Download
Java Articles
Java Products
Java by API
C# / C Sharp
C# / CSharp Tutorial
ASP.Net
ASP.NET Tutorial
JavaScript DHTML
JavaScript Tutorial
JavaScript Reference
HTML / CSS
HTML CSS Reference
C / ANSI-C
C Tutorial
C++
C++ Tutorial
Ruby
PHP
Python
SQL Server / T-SQL
SQL Server / T-SQL Tutorial
Oracle PL / SQL
Oracle PL/SQL Tutorial
PostgreSQL
SQL / MySQL
MySQL Tutorial
VB.Net
VB.Net Tutorial
Flash / Flex / ActionScript
VBA / Excel / Access / Word
Microsoft Office PowerPoint 2007 Tutorial
Microsoft Office Excel 2007 Tutorial
Microsoft Office Word 2007 Tutorial
XML » XSLT stylesheet » table 
Sort a column


File: Data.xml

<?xml version="1.0" encoding="UTF-8"?>

<?xml-stylesheet type="text/xsl" href="Transform.xslt"?>
<library>
  <DVD id="1">
    <title>title 1</title>
    <format>Movie</format>
    <genre>Classic</genre>
  </DVD>
  <DVD id="2">
    <title>Contact</title>
    <format>Movie</format>
    <genre>Science fiction</genre>
  </DVD>
  <DVD id="3">
    <title>House</title>
    <format>TV Series</format>
    <genre>Comedy</genre>
  </DVD>
</library>

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:output method="html" version="4.0"/>
  <xsl:template match="/">
    <html>
      <head>
        <title>DVD Library Listing</title>
        <link rel="stylesheet" type="text/css" href="style.css"/>
      </head>
      <body>
        <table border="1">
          <tr>
            <th>Title</th>
            <th>Format</th>
            <th>Genre</th>
          </tr>
          <xsl:for-each select="/library/DVD">
            <xsl:sort select="genre"/>
            <tr>
              <td>
                <xsl:value-of select="title"/>
              </td>
              <td>
                <xsl:value-of select="format"/>
              </td>
              <td>
                <xsl:value-of select="genre"/>
              </td>
            </tr>
          </xsl:for-each>
        </table>
      </body>
    </html>
  </xsl:template>
</xsl:stylesheet>
Output:

<html>
   <head>
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
      <title>DVD Library Listing</title>
      <link rel="stylesheet" type="text/css" href="style.css">
   </head>
   <body>
      <table border="1">
         <tr>
            <th>Title</th>
            <th>Format</th>
            <th>Genre</th>
         </tr>
         <tr>
            <td>title 1</td>
            <td>Movie</td>
            <td>Classic</td>
         </tr>
         <tr>
            <td>House</td>
            <td>TV Series</td>
            <td>Comedy</td>
         </tr>
         <tr>
            <td>Contact</td>
            <td>Movie</td>
            <td>Science fiction</td>
         </tr>
      </table>
   </body>
</html>

 
Related examples in the same category
1. Use xslt style sheet to output data in a table
2. Output to a table
3. for-each loop and table output
4. Use for-each to output table rows
5. select value for table cell
6. Get value with value-of for table cell
7. Use for-each to loop through nodes in certain level
8. Fill more one value into table cell
9. use
to format value in a table cell
10. Create table header and content in separated templates
11. One template per table row
12. Add row number
13. Create a table with sorting
14. number column
15. Generate two tables
16. Create table header
17. Sort first then output to table
www.java2java.com | Contact Us
Copyright 2010 - 2030 Java Source and Support. All rights reserved.
All other trademarks are property of their respective owners.