<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
    <xsl:template match="entry">
        <xsl:param name="file"/>
        <xsl:param name="start"/>
        <xsl:param name="end"/>
        <xsl:variable name="date" select="concat(substring(date,1,4),substring(date,6,2),substring(date,9,2))"/>
        <xsl:if test="author!='plehegar' and author!='fsasaki'">
            <xsl:if test="$date >= $start and $date &lt;= $end">
                <xsl:for-each select="file">
                    <xsl:if test="name=$file">
                        <tr>
                            <td>
                                <xsl:value-of select="../date"/>
                                <xsl:text> @ </xsl:text>
                                <xsl:value-of select="../time"/>
                            </td>
                            <td>
                                <xsl:value-of select="../author"/>
                            </td>
                            <td>
                                <xsl:value-of select="../msg"/>
                            </td>
                        </tr>
                    </xsl:if>
                </xsl:for-each>
            </xsl:if>
        </xsl:if>
    </xsl:template>
    <xsl:template match="changelog">
        <xsl:param name="changelog"/>
        <xsl:variable name="file" select="substring($changelog,1,16)"/>
        <xsl:variable name="start" select="substring($changelog,18,8)"/>
        <xsl:variable name="end" select="substring($changelog,27,8)"/>
        <table border="1">
            <tr>
                <th>Date</th>
                <th>Editor</th>
                <th>Description</th>
            </tr>
            <xsl:apply-templates select="entry">
                <xsl:sort select="substring(date,1,4)" order="descending" data-type="number"/>
                <xsl:sort select="substring(date,6,2)" order="descending" data-type="number"/>
                <xsl:sort select="substring(date,9,2)" order="descending" data-type="number"/>
                <xsl:sort select="substring(time,1,2)" order="descending" data-type="number"/>
                <xsl:sort select="substring(time,4,2)" order="descending" data-type="number"/>
                <xsl:with-param name="file" select="$file"/>
                <xsl:with-param name="start" select="$start"/>
                <xsl:with-param name="end" select="$end"/>
            </xsl:apply-templates>
        </table>
    </xsl:template>
</xsl:stylesheet>
