<?xml version="1.0"?>

<!-- apply template with for-each loop and sort -->

<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">

	<!--================= root template =======================================-->
	<xsl:template match="/">
		<html>
		<head> 
		<title>Sort by population & year</title>
		</head> 
		<body bgcolor="white">

		<xsl:apply-templates select="endangered_species/animal"/>

		</body>
		</html>
	</xsl:template>

	<!--================= animal template =====================================-->
	<xsl:template match="animal">
		<p align="center">
		<br/><font size="+3">
			<xsl:apply-templates select="name" />
		</font></p>
		<table width="100%" border="2">
		<tr><th>Subspecies</th><th>Region</th><th>Number Left</th><th>As Of</th></tr>

		<!--========== for-each loop with a sort =========-->

		<xsl:for-each select="subspecies">
			<xsl:sort select="population"       data-type="number"/>
			<xsl:sort select="population/@year" data-type="number"/>
			<tr>
			<td><xsl:apply-templates select="name"/></td>
			<td><xsl:value-of select="region"/></td>
			<td><xsl:value-of select="population"/></td>
			<td><xsl:value-of select="population/@year"/></td>
			</tr>
		</xsl:for-each>

		</table>
		<p>The mighty <b> 
			<xsl:value-of select="name[@language='English']"/> 
		</b> faces numerous threats. For more information
		<a href="http://www.worldwildlife.org/"> click</a>
		</p><hr/>
	</xsl:template>

	<!--=============== English name template ===================================-->
	<xsl:template match="name[@language='English']">
		<nobr><b>
			<xsl:value-of select="."/>: 
		</b></nobr>
	</xsl:template>

	<!--================ Latin name template ====================================-->
	<xsl:template match="name[@language='Latin']">
		<nobr><i>
			<xsl:value-of select="."/>
		</i></nobr>
	</xsl:template>
	
</xsl:stylesheet>