选择 parent 的前一个兄弟姐妹的 ID

Selecting ID of parent's preceding sibling

我对 XSLT 比较陌生,发现 preceding-sibling:: 非常痛苦。

使用一个非常简单的例子XML:

<month>
    <day id="1">Day one was a lovely day</day>
    <day id="2">Day two was balls</day>
    <day id="3">Day three was Wednesday</day>
</month>

和一些基本的 XSLT(我希望每天输出到一个新文件:这没问题):

<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0">
    <xsl:template match="/month">
       <xsl:for-each select="day">
           <xsl:result-document href="output/day-{@id}/index.html">
               <xsl:call-template name="page" />
           </xsl:result-document>
       </xsl:for-each>
    </xsl:template>


    <xsl:template name="page">
        <html>
            <head>
                <title>This is <xsl:value-of select="id" /></title>
            </head>
            <body>
                <h1>Day of new <xsl:value-of select="@id" /></h1>
                <p><xsl:value-of select="." /></p>

                <!--PROBLEM HERE:: -->
                Previous: <xsl:value-of select="" />

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

我遇到的问题是最后一点(我在这里写了问题)。我正在尝试获取前一天的 ID。我似乎无法获得正确的 select 值。我已经尝试了 ancestor::../preceding-sibling::day[1] 的所有组合,我可以在任何地方找到提到的。请帮忙!

使用以下内容:

<xsl:value-of select="preceding-sibling::day[1]/@id"/>

只是第一个没有任何价值,因为没有前面的兄弟 day