No, neanche così. Ma grazie per i suggerimenti: a forza di fare delle prove ho trovato l'errore.
In realtà non serve il ciclo for-each, e nemmeno il test if.
Bisogna sostituire la seguente porzione di codice:
codice:
<xsl:template match="w:r">
<xsl:if test="w:footnoteReference">
<xsl:text>\footnote{ </xsl:text>
<xsl:call-template name="footnote">
<xsl:with-param name="fid">
<xsl:value-of select="//@w:id" />
</xsl:with-param>
</xsl:call-template>
<xsl:text>}</xsl:text>
</xsl:if>
</xsl:template>
Con questa:
codice:
<xsl:template match="w:footnoteReference">
<xsl:text>\footnote{ </xsl:text>
<xsl:call-template name="footnote">
<xsl:with-param name="fid">
<xsl:value-of select="@w:id" />
</xsl:with-param>
</xsl:call-template>
<xsl:text>}</xsl:text>
</xsl:template>
Grazie comunque per l'attenzione !