blob: 22ce80b2776a45da1e05321938e361ca0b49f32b [file] [log] [blame]
<?xml version="1.0"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<!-- FileName: idkey33 -->
<!-- Document: http://www.w3.org/TR/xslt -->
<!-- DocVersion: 19991116 -->
<!-- Section: 12.2 -->
<!-- Creator: David Marston -->
<!-- Purpose: Use key() for sorting in for-each. -->
<xsl:key name="MonthNum" match="monthtab/entry/number" use="../name" />
<xsl:template match="doc">
<out>
<xsl:text>Birthdays as found...
</xsl:text>
<xsl:for-each select="birthday">
<xsl:value-of select="@person"/><xsl:text>: </xsl:text>
<xsl:value-of select="month"/><xsl:text> </xsl:text>
<xsl:value-of select="day"/><xsl:text>
</xsl:text>
</xsl:for-each>
<xsl:text>
Birthdays in chronological order...
</xsl:text>
<xsl:for-each select="birthday">
<xsl:sort select="key('MonthNum',month)" data-type="number" />
<xsl:sort select="day" data-type="number" />
<xsl:value-of select="@person"/><xsl:text>: </xsl:text>
<xsl:value-of select="month"/><xsl:text> </xsl:text>
<xsl:value-of select="day"/><xsl:text>
</xsl:text>
</xsl:for-each>
</out>
</xsl:template>
</xsl:stylesheet>