[xsl] understanding generate-id and node-equality [XSLT 1.0, Saxon 6.5.5]

Subject: [xsl] understanding generate-id and node-equality [XSLT 1.0, Saxon 6.5.5]
From: christoph.naber@xxxxxxxxxxx
Date: Thu, 14 Aug 2008 17:19:59 +0200
Hello,

using XSLT 1.0 and Saxon 6.5.5 I'm wondering whats the actual difference
between

<xsl:key name="child-key" match="child" use="parent::*"/>

<xsl:template match="parent" >
        <xsl:variable name="childs" select="key('child-key', parent::*)"/>
        ...
</xsl:template>

and

<xsl:key name="child-key" match="child" use="generate-id(parent::*)" />

<xsl:template match="parent" >
        <xsl:variable name="childs" select="key('child-key',
generate-id(parent::*))" />
        ...
</xsl:template>

I think I know what generate-id does, but what is tested when I use the
former expression?

Thank you in advance for any insight.

Christoph Naber

Daimler AG
Abt. ITP/DC, Diplomand

Tel.: +49 (0) 70 31 / 90-6 62 16
Mail: christoph.naber@xxxxxxxxxxx

If you are not the intended addressee, please inform us immediately that you
have received this e-mail in error, and delete it. We thank you for your
cooperation.

Current Thread