<!-- HELM Group: Asperti, Padovani, Sacerdoti, Schena -->
<!--***********************************************************************-->
-<xsl:variable name="absPath">http://localhost:8081/getciconly?uri=</xsl:variable>
+<xsl:template name="mksymbol-reals">
+ <xsl:param name="symbol" select="''"/>
+ <xsl:choose>
+ <xsl:when test="$UNICODEvsSYMBOL = 'symbol'">
+ <xsl:variable name="fontsymbol">
+ <xsl:choose>
+ <xsl:when test="$symbol = 'leadsto'">
+ <xsl:value-of select="'®'"/>
+ </xsl:when>
+ <xsl:when test="$symbol = 'sum'">
+ <xsl:value-of select="'å'"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:text>???</xsl:text>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+ <FONT FACE="symbol" color="'blue'">
+ <xsl:value-of select="$fontsymbol"/>
+ </FONT>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:variable name="unicodesymbol">
+ <xsl:choose>
+ <xsl:when test="$symbol = 'leadsto'">
+ <xsl:value-of select="'→'"/>
+ </xsl:when>
+ <xsl:when test="$symbol = 'sum'">
+ <xsl:value-of select="'∑'"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:text>???</xsl:text>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+ <FONT color="'blue'">
+ <xsl:value-of select="$unicodesymbol"/>
+ </FONT>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<!-- **************************************************************** -->
+<!-- INLINE MODE -->
+<!-- **************************************************************** -->
+
+<!-- SUM -->
+
+<xsl:template mode="inline" match="m:apply[m:sum]">
+ <xsl:variable name="uri">
+ <xsl:value-of select="m:sum/@definitionURL"/>
+ </xsl:variable>
+ <xsl:choose>
+ <xsl:when test="$uri != ''">
+ <a href="{$uri}">
+ <!--
+ <FONT FACE="symbol" color="'blue'">
+ <xsl:value-of select="'å'"/>
+ </FONT> -->
+ <xsl:call-template name="mksymbol-reals">
+ <xsl:with-param name="symbol" select="'sum'"/>
+ </xsl:call-template>
+ </a>
+ </xsl:when>
+ <xsl:otherwise>
+ <!--
+ <FONT FACE="symbol" color="'blue'">
+ <xsl:value-of select="'å'"/>
+ </FONT> -->
+ <xsl:call-template name="mksymbol-reals">
+ <xsl:with-param name="symbol" select="'sum'"/>
+ </xsl:call-template>
+ </xsl:otherwise>
+ </xsl:choose>
+ <xsl:choose>
+ <xsl:when test="m:condition">
+ <SUB>
+ <xsl:apply-templates select="m:condition"/>
+ </SUB>
+ </xsl:when>
+ <xsl:otherwise>
+ <SUB>
+ <xsl:apply-templates select="m:lowlimit/*[1]"/>
+ <xsl:call-template name="mksymbol-init">
+ <xsl:with-param name="symbol" select="'leq'"/>
+ </xsl:call-template>
+ <xsl:apply-templates select="m:bvar/*[1]"/>
+ <xsl:call-template name="mksymbol-init">
+ <xsl:with-param name="symbol" select="'leq'"/>
+ </xsl:call-template>
+ <xsl:apply-templates select="m:uplimit/*[1]"/>
+ </SUB>
+ </xsl:otherwise>
+ </xsl:choose>
+ <xsl:apply-templates mode="inline" select="*[position()=last()]"/>
+ </xsl:template>
+
<!-- LIMIT -->
+
+<xsl:template mode="inline" match="m:apply[m:limit]">
+ <xsl:variable name="uri"><xsl:value-of select="m:limit/@definitionURL"/></xsl:variable>
+ <xsl:choose>
+ <xsl:when test="$uri != ''">
+ <a href="{$uri}">
+ <xsl:text>lim</xsl:text>
+ </a>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:text>lim</xsl:text>
+ </xsl:otherwise>
+ </xsl:choose>
+ <SUB>
+ <xsl:apply-templates select="m:bvar/m:ci"/>
+ <xsl:call-template name="mksymbol-reals">
+ <xsl:with-param name="symbol" select="'leadsto'"/>
+ </xsl:call-template>
+ <xsl:apply-templates mode="inline" select="m:lowlimit"/>
+ </SUB>
+ <xsl:apply-templates mode="inline" select="*[4]"/>
+ </xsl:template>
+
+<!-- DIFFERENTIATION -->
+
+<xsl:template mode="inline" match="m:apply[m:diff]">
+ <xsl:variable name="uri"><xsl:value-of select="m:diff/@definitionURL"/></xsl:variable>
+ <xsl:choose>
+ <xsl:when test="$uri != ''">
+ <a href="{$uri}">
+ <SUP>d</SUP>
+ <xsl:text>/</xsl:text>
+ <SUB>
+ <xsl:text>d</xsl:text>
+ <xsl:value-of select="m:bvar/m:ci"/>
+ </SUB>
+ </a>
+ </xsl:when>
+ <xsl:otherwise>
+ <SUP>d</SUP>
+ <xsl:text>/</xsl:text>
+ <SUB>
+ <xsl:text>d</xsl:text>
+ <xsl:value-of select="m:bvar/m:ci"/>
+ </SUB>
+ </xsl:otherwise>
+ </xsl:choose>
+ <xsl:apply-templates mode="inline" select="*[3]"/>
+ </xsl:template>
+
+<!-- ABSOLUTE VALUE -->
+<xsl:template mode="inline" match="m:apply[m:abs]">
+ <xsl:variable name="uri">
+ <xsl:value-of select="m:abs/@definitionURL"/>
+ </xsl:variable>
+ <xsl:text>|</xsl:text>
+ <xsl:apply-templates mode="inline" select="*[2]"/>
+ <xsl:text>|</xsl:text>
+</xsl:template>
+
+<!-- FACTORIAL -->
+
+<xsl:template mode="inline" match="m:apply[m:fact]">
+ <xsl:variable name="uri">
+ <xsl:value-of select="m:abs/@definitionURL"/>
+ </xsl:variable>
+ <xsl:apply-templates mode="inline" select="*[2]"/>
+ <xsl:text>!</xsl:text>
+</xsl:template>
+
+<!-- SQUARE ROOT -->
+
+<xsl:template match="m:apply[m:root]">
+ <xsl:variable name="uri">
+ <xsl:value-of select="m:abs/@definitionURL"/>
+ </xsl:variable>
+ <xsl:text>(sqr</xsl:text>
+ <xsl:apply-templates mode="inline" select="*[2]"/>
+ <xsl:text>)</xsl:text>
+</xsl:template>
+
+<!-- POWER -->
+
+<xsl:template mode="inline" match="m:apply[m:power]">
+ <xsl:variable name="uri">
+ <xsl:value-of select="m:power/@definitionURL"/>
+ </xsl:variable>
+ <xsl:apply-templates mode="inline" select="*[2]"/>
+ <SUP>
+ <xsl:apply-templates mode="inline" select="*[3]"/>
+ </SUP>
+</xsl:template>
+
+<!-- MIN and MAX (binari: estendere) -->
+
+ <xsl:template mode="inline" match="m:apply[m:min|m:max]">
+ <xsl:variable name="uri"><xsl:value-of select="*[1]/@definitionURL"/></xsl:variable>
+ <xsl:variable name="symbol">
+ <xsl:choose>
+ <xsl:when test="m:min">
+ <xsl:value-of select="'min'"/>
+ </xsl:when>
+ <xsl:when test="m:max">
+ <xsl:value-of select="'max'"/>
+ </xsl:when>
+ </xsl:choose>
+ </xsl:variable>
+ <xsl:choose>
+ <xsl:when test="$uri != ''">
+ <a href="{$uri}">
+ <xsl:value-of select="$symbol"/>
+ </a>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$symbol"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ <xsl:text>{</xsl:text>
+ <xsl:apply-templates mode="inline" select="*[2]"/>
+ <xsl:text>, </xsl:text>
+ <xsl:apply-templates mode="inline" select="*[3]"/>
+ <xsl:text>}</xsl:text>
+</xsl:template>
+
+<!-- **************************************************************** -->
+<!-- COUNTING MODE -->
+<!-- **************************************************************** -->
+
+<xsl:template match="m:apply[m:sum]">
+ <xsl:apply-templates mode="inline" select="."/>
+</xsl:template>
+
<xsl:template match="m:apply[m:limit]">
<xsl:param name="current_indent" select="0"/>
<xsl:param name="width" select="$framewidth"/>
- <xsl:variable name="uri">
- <xsl:value-of select="m:limit/@definitionURL"/>
- </xsl:variable>
+ <xsl:variable name="uri"><xsl:value-of select="m:limit/@definitionURL"/></xsl:variable>
<xsl:variable name="charlength">
<xsl:apply-templates select="m:limit" mode="charcount"/>
</xsl:variable>
<xsl:choose>
<xsl:when test="$charlength > $framewidth">
- <a>
- <xsl:attribute name="href">
- <xsl:value-of select="concat(string($header),string($uri))"/>
- </xsl:attribute>
- <xsl:text>lim</xsl:text>
- </a>
+ <xsl:choose>
+ <xsl:when test="$uri != ''">
+ <a href="{$uri}">
+ <xsl:text>lim</xsl:text>
+ </a>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:text>lim</xsl:text>
+ </xsl:otherwise>
+ </xsl:choose>
<SUB>
<xsl:apply-templates select="m:bvar/m:ci"/>
- <FONT FACE="symbol" color="blue">®</FONT>
+ <xsl:call-template name="mksymbol-reals">
+ <xsl:with-param name="symbol" select="'leadsto'"/>
+ </xsl:call-template>
<xsl:apply-templates select="m:lowlimit"/>
</SUB>
<BR/>
</xsl:apply-templates>
</xsl:when>
<xsl:otherwise>
- <a>
- <xsl:attribute name="href">
- <xsl:value-of select="concat(string($header),string($uri))"/>
- </xsl:attribute>
- <xsl:text>lim</xsl:text>
- </a>
- <SUB>
- <xsl:apply-templates select="m:bvar/m:ci"/>
- <FONT FACE="symbol" color="blue">®</FONT>
- <xsl:apply-templates select="m:lowlimit"/>
- </SUB>
- <xsl:apply-templates select="*[4]">
- <xsl:with-param name="current_indent" select="$current_indent + 5"/>
- </xsl:apply-templates>
+ <xsl:apply-templates mode="inline" select="."/>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<!-- DIFFERENTIATION -->
-
<xsl:template match="m:apply[m:diff]">
<xsl:param name="current_indent" select="0"/>
<xsl:param name="width" select="$framewidth"/>
- <xsl:variable name="uri">
- <xsl:value-of select="m:diff/@definitionURL"/>
- </xsl:variable>
- <a>
- <xsl:attribute name="href">
- <xsl:value-of select="concat(string($header),string($uri))"/>
- </xsl:attribute>
- <SUP>d</SUP>
- <xsl:text>/</xsl:text>
- <SUB>
- <xsl:text>d</xsl:text>
- <xsl:value-of select="m:bvar/m:ci"/>
- </SUB>
- </a>
+ <xsl:variable name="uri"><xsl:value-of select="m:diff/@definitionURL"/></xsl:variable>
+ <xsl:choose>
+ <xsl:when test="$uri != ''">
+ <a href="{$uri}">
+ <SUP>d</SUP>
+ <xsl:text>/</xsl:text>
+ <SUB>
+ <xsl:text>d</xsl:text>
+ <xsl:value-of select="m:bvar/m:ci"/>
+ </SUB>
+ </a>
+ </xsl:when>
+ <xsl:otherwise>
+ <SUP>d</SUP>
+ <xsl:text>/</xsl:text>
+ <SUB>
+ <xsl:text>d</xsl:text>
+ <xsl:value-of select="m:bvar/m:ci"/>
+ </SUB>
+ </xsl:otherwise>
+ </xsl:choose>
<xsl:apply-templates select="*[3]">
<xsl:with-param name="current_indent" select="$current_indent + 5"/>
</xsl:apply-templates>
</xsl:template>
+
<!-- ABSOLUTE VALUE -->
<xsl:template match="m:apply[m:abs]">
<xsl:param name="current_indent" select="0"/>
<xsl:template match="m:apply[m:min|m:max]">
<xsl:param name="current_indent" select="0"/>
<xsl:param name="width" select="$framewidth"/>
- <xsl:variable name="uri">
- <xsl:value-of select="*[1]/@definitionURL"/>
- </xsl:variable>
+ <xsl:variable name="uri"><xsl:value-of select="*[1]/@definitionURL"/></xsl:variable>
<xsl:variable name="charlength">
<xsl:apply-templates select="*[1]" mode="charcount"/>
</xsl:variable>
</xsl:variable>
<xsl:choose>
<xsl:when test="$charlength > $framewidth">
- <a>
- <xsl:attribute name="href">
- <xsl:value-of select="concat(string($header),string($uri))"/>
- </xsl:attribute>
- <xsl:value-of select="$symbol"/>
- </a>
+ <xsl:choose>
+ <xsl:when test="$uri != ''">
+ <a href="{$uri}">
+ <xsl:value-of select="$symbol"/>
+ </a>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$symbol"/>
+ </xsl:otherwise>
+ </xsl:choose>
<xsl:text>{</xsl:text>
<xsl:apply-templates select="*[2]">
<xsl:with-param name="current_indent" select="$current_indent + 2"/>
<xsl:text>}</xsl:text>
</xsl:when>
<xsl:otherwise>
- <a>
- <xsl:attribute name="href">
- <xsl:value-of select="concat(string($header),string($uri))"/>
- </xsl:attribute>
- <xsl:value-of select="$symbol"/>
- </a>
- <xsl:text>{</xsl:text>
- <xsl:apply-templates select="*[2]"/>
- <xsl:text>, </xsl:text>
- <xsl:apply-templates select="*[3]"/>
- <xsl:text>}</xsl:text>
+ <xsl:apply-templates mode="inline" select="."/>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<!-- COUNTING -->
-<xsl:template match="m:abs|m:fact|m:root
- |m:limit|m:diff|m:min|m:max" mode="charcount">
+<xsl:template match="m:abs|m:fact|m:root|
+ m:sum|m:limit|m:diff|m:min|m:max" mode="charcount">
<xsl:param name="incurrent_length" select="0"/>
<xsl:choose>
<xsl:when test="$framewidth >= ($incurrent_length + string-length())">
</xsl:template>
</xsl:stylesheet>
-
-
-
-
-
-
-