<xsl:template match="LETIN" mode="pure">
- <xsl:apply-templates select="*[1]" mode="letin"/>
+ <xsl:apply-templates select="*[1]" mode="letin_pure"/>
</xsl:template>
+<!-- Andrea: mode letin already exists in proofs.xsl, with a
+ different meaning -->
-<xsl:template match="def" mode="letin">
+<xsl:template match="def" mode="letin_pure">
<m:apply helm:xref="{@id}">
<m:csymbol>let_in</m:csymbol>
<m:bvar>
</m:ci>
</m:bvar>
<xsl:apply-templates select="*[1]" mode="noannot"/>
- <xsl:apply-templates select="following-sibling::*[1]" mode="letin"/>
+ <xsl:apply-templates select="following-sibling::*[1]" mode="letin_pure"/>
</m:apply>
</xsl:template>
-<xsl:template match="target" mode="letin">
+<xsl:template match="target" mode="letin_pure">
<xsl:apply-templates select="*[1]" mode="noannot"/>
</xsl:template>
<m:csymbol>inst</m:csymbol>
<xsl:apply-templates mode="noannot" select="*[1]" />
<xsl:for-each select="arg">
- <m:ci><xsl:call-template name="insert_subscript"><xsl:with-param name="node_value"><xsl:call-template name="name_of_uri"><xsl:with-param name="uri" select="@uri"/></xsl:call-template></xsl:with-param></xsl:call-template></m:ci>
+ <xsl:variable name="base_path">
+ <xsl:call-template name="path">
+ <xsl:with-param name="uri" select="../*[1]/@uri"/>
+ </xsl:call-template>
+ </xsl:variable>
+ <xsl:variable name="varUri" select="concat($base_path,@relUri)"/>
+ <m:ci definitionURL="{$varUri}">
+ <xsl:call-template name="insert_subscript">
+ <xsl:with-param name="node_value">
+ <xsl:call-template name="name_of_uri">
+ <xsl:with-param name="uri" select="$varUri"/>
+ <xsl:with-param name="extension" select="'.var'"/>
+ </xsl:call-template>
+ </xsl:with-param>
+ </xsl:call-template>
+ </m:ci>
<xsl:apply-templates mode ="noannot" select="*[1]" />
</xsl:for-each>
</m:apply>