Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

msubsup issue

Volker Sorge edited this page Apr 22, 2015 · 9 revisions

Issue. Back to list of issues.

The Msubsup issue

Msubsup are broken up in the semantic tree into explicit subscripts and superscripts if advisable.

We will stick with alternative 2 and add a collapsed attribute. Example is now here:

<math>
 <msubsup type="subsup" role="latinletter" id="4" children="0,1,2" collapsed="(4 (3 0 1) 2)">
 <mi type="identifier" role="latinletter" id="0" parent="4">a</mi>
 <mi type="identifier" role="latinletter" id="1" parent="4">b</mi>
 <mi type="identifier" role="latinletter" id="2" parent="4">c</mi>
 </msubsup>
</math>

Still to do: Look into prime, etc.


Original MathML:

<math>
 <msubsup>
 <mi>a</mi>
 <mi>b</mi>
 <mi>c</mi>
 </msubsup>
</math>

Semantic Tree:

<stree>
 <superscript role="latinletter" id="4">
 <children>
 <subscript role="subsup" id="3">
 <children>
 <identifier role="latinletter" font="italic" id="0">a</identifier>
 <identifier role="latinletter" font="italic" id="1">b</identifier>
 </children>
 </subscript>
 <identifier role="latinletter" font="italic" id="2">c</identifier>
 </children>
 </superscript>
</stree>

Straightforward translation of the semantic tree into the MathML element, naturally ruins the msubsup element. Here's the semantically enriched MathML:

<math>
 <msubsup type="superscript" role="latinletter" id="4" children="3,2">
 <mrow type="subscript" role="subsup" id="3" children="0,1" parent="4">
 <mi type="identifier" role="latinletter" id="0" parent="3">a</mi>
 <mi type="identifier" role="latinletter" id="1" parent="3">b</mi>
 </mrow>
 <mi type="identifier" role="latinletter" id="2" parent="4">c</mi>
 </msubsup>
</math>

Alternative is this semantically enriched MathML:

<msubsup type="subsup" role="latinletter" id="4" children="0,1,2">
 <mi type="identifier" role="latinletter" id="0" parent="4">a</mi>
 <mi type="identifier" role="latinletter" id="1" parent="4">b</mi>
 <mi type="identifier" role="latinletter" id="2" parent="4">c</mi>
</msubsup>

Observe that this does not affect elements where msubsup has discernably been used as a layout element. See, for example the following sum expression:

<math>
 <msubsup>
 <mo></mo>
 <mi>b</mi>
 <mi>c</mi>
 </msubsup>
</math>

Semantic Tree:

<stree>
 <limboth role="sum" id="3">
 <children>
 <largeop role="sum" id="0"></largeop>
 <identifier role="latinletter" font="italic" id="1">b</identifier>
 <identifier role="latinletter" font="italic" id="2">c</identifier>
 </children>
 </limboth>
</stree>

Semantically enriched MathML:

<math>
 <msubsup type="limboth" role="sum" id="3" children="0,1,2">
 <mo type="largeop" role="sum" id="0" parent="3"></mo>
 <mi type="identifier" role="latinletter" id="1" parent="3">b</mi>
 <mi type="identifier" role="latinletter" id="2" parent="3">c</mi>
 </msubsup>
</math>
Clone this wiki locally

AltStyle によって変換されたページ (->オリジナル) /