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>
|