3.1 ’minus’ into ’negative’
<xsl:template match="mo[
(@class = ’MathClass-bin’)
and
( normalize-space(.) =
normalize-space(descendant::span[@class = ’ch 2212’])
)
and
( preceding-sibling::*[1][
(@title=’speech-extra’)
or (@class=’MathClass-bin’)
or (@class=’MathClass-rel’)
or (@class=’MathClass-punc’)
or (@class=’MathClass-op’)
or self::mn-group-s [ child::* [
(position() = last())
and
(@class=’MathClass-punc’)
] ] ]
and
(
following-sibling::*[1][ self::mn-group-s
or self::mi ]
or
(count(following-sibling::*[
not(@title = ’speech-extra’)
]) = 1)
)
or
not(preceding-sibling::*) and following-sibling::*
)
]" >
<xsl:copy>
<xsl:attribute name="class">
<xsl:text>mo-unary</xsl:text>
</xsl:attribute>
<xsl:apply-templates select="*|text()|comment()"
mode="minus-neg" />
</xsl:copy>
</xsl:template>
-_-_-
<xsl:template match="*|@*|text()|comment()" mode="minus-neg" >
<xsl:copy>
<xsl:apply-templates select="*|@*|text()|comment()"
mode="minus-neg" />
</xsl:copy>
</xsl:template>
-_-_-
<span class="begin-script"> subscript </span>
<mo class="MathClass-bin">
<span class="char">
<span class="ch 2212">minus</span>
</span>
</mo>
<mn>2</mn>
<xsl:template match="text()" mode="minus-neg" >
<xsl:choose>
<xsl:when test=" . = ’minus’ " >
<xsl:text>negative</xsl:text>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="." />
</xsl:otherwise>
</xsl:choose>
</xsl:template>
-_-_-