4 xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
5 xmlns:tml="http://helm.cs.unibo.it/2002/TML"
6 xmlns:m="http://www.w3.org/1998/Math/MathML"
9 <xsl:output method="text" indent="yes"/>
11 <xsl:param name="id" select="/.."/>
13 <xsl:template match="/">
16 <xsl:apply-templates select="descendant::*[@id=$id]"/>
19 <xsl:apply-templates select="*"/>
24 <xsl:template match="tml:tex">
25 <xsl:apply-templates select="*"/>
28 <xsl:template match="tml:math">
30 <xsl:when test="@display='1'">$$<xsl:apply-templates select="*"/>$$</xsl:when>
31 <xsl:otherwise>$<xsl:apply-templates select="*"/>$</xsl:otherwise>
35 <xsl:template match="tml:i">
37 <xsl:when test="@name">\<xsl:value-of select="@name"/><xsl:value-of select="' '"/></xsl:when>
38 <xsl:when test="string-length(@val)=1"><xsl:value-of select="@val"/></xsl:when>
39 <xsl:otherwise>{\it <xsl:value-of select="@val"/>}</xsl:otherwise>
43 <xsl:template match="tml:n">
45 <xsl:when test="@name">\<xsl:value-of select="@name"/><xsl:value-of select="' '"/></xsl:when>
46 <xsl:when test="string-length(@val)=1"><xsl:value-of select="@val"/></xsl:when>
47 <xsl:otherwise>{\rm <xsl:value-of select="@val"/>}</xsl:otherwise>
51 <xsl:template match="tml:o">
53 <xsl:when test="@name">\<xsl:value-of select="@name"/><xsl:value-of select="' '"/></xsl:when>
54 <xsl:when test="string-length(@val)=1"><xsl:value-of select="@val"/></xsl:when>
55 <xsl:otherwise><xsl:value-of select="@val"/></xsl:otherwise>
59 <xsl:template match="tml:sb">
61 <xsl:when test="@under='1'">
62 <xsl:apply-templates select="*[1]"/>__<xsl:apply-templates select="*[2]"/>
65 <xsl:apply-templates select="*[1]"/>_<xsl:apply-templates select="*[2]"/>
70 <xsl:template match="tml:sp">
72 <xsl:when test="@over='1'">
73 <xsl:apply-templates select="*[1]"/>^^<xsl:apply-templates select="*[2]"/>
76 <xsl:apply-templates select="*[1]"/>^<xsl:apply-templates select="*[2]"/>
81 <xsl:template match="tml:g[@id]">{<xsl:apply-templates select="*"/>}</xsl:template>
83 <xsl:template match="tml:g">
84 <xsl:apply-templates select="*"/>
87 <xsl:template match="tml:row">
88 <xsl:apply-templates select="cell"/>\cr </xsl:template>
90 <xsl:template match="tml:cell">
91 <xsl:apply-templates select="*"/>
92 <xsl:if test="position() < last()">&</xsl:if>
95 <!--/// CONTROL SEQUENCES ///-->
97 <xsl:template match="tml:c[*[1][self::tml:g[@left-open='1']]]">
98 <xsl:apply-templates select="*[1]"/>\<xsl:value-of select="@name"/>
99 <xsl:if test="*[2][self::tml:i]"><xsl:value-of select="' '"/></xsl:if>
100 <xsl:apply-templates select="*[position()>1]"/>
103 <xsl:template match="tml:c">\<xsl:value-of select="@name"/>
104 <xsl:if test="*[1][self::tml:i]"><xsl:value-of select="' '"/></xsl:if>
105 <xsl:apply-templates select="*"/>