<< Chapter < Page Chapter >> Page >

In case, the “mrow” domain contains non-stretchable terms of normal height and other stretchable terms, then all the terms, including the fence operator grows to the maximum normal height.

Vertical stretching

<m:math display="block"> <m:mrow> <m:mi> x </m:mi> <m:mo> = </m:mo> <m:mo> ( </m:mo> <m:mo> &int; </m:mo> <m:mi> f</m:mi> <m:mo> ( </m:mo> <m:mi> x </m:mi> <m:mo> ) </m:mo> <m:mi> &DifferentialD; </m:mi> <m:mi> x </m:mi> <m:mo> ) </m:mo> </m:mrow> </m:math>

Save the file after editing as “test.xml”. The display lokks like :

x = ( f ( x ) x )

As against fence operator, the accent and horizontal arrows are stretchable in horizontal direction by default. The growth, in this case, is controlled by “munder”, “mover” and “munderover” elements, which contain the operator. The “munder”, “mover” and “munderover” elements, as the names suggest, allow drawing of an operator "under" or "over" or both about a character(s) or expresison. The scripting elements takes a base argument about which the operator is to be drawn and one (“munder” and “mover”) operator or two (“munderover”) operators for being placed about the base. We shall see that the operator grows horizontally to cover the other element.

Horizontal stretching

<m:math display="block"> <m:mi> A </m:mi> <m:munderover> <m:mo> &RightArrow; </m:mo> <m:mtext> 50 degree C </m:mtext> <m:mtext> 200 psi </m:mtext> </m:munderover> <m:mi> B </m:mi> </m:math>

Save the file after editing as “test.xml”. The display looks like :

A 50 degree C 200 psi B

Other attributes : largeop, movablelimits, accent, separator, fence

These attributes may assume following values :

    Attribute value types

  • fence : true | false
  • separator : true | false
  • largeop : true | false
  • movablelimits : true | false
  • accent : true | false

All these attributes accept boolean values “true” or “false”. The attribute “fence” is designed for non-visual rendering like audio rendering. As such, this attribute has no impact on the visual aspect of rendering. The role of “separator” attribute is also not significant and may be left to default value.

The “largeop” attribute determines the size of the operator. If it is true, then the operator is drawn larger than its normal size. For example, ∫ and ∏ operators are displayed as large operator as “largeop” attribute for these operators are set “true” by default. If we need to display the normal size, then their "largeop" attribute is set to "false".

Large operator

<m:math display="block"> <m:mrow> <m:mo> &prod; </m:mo> <m:mo> , </m:mo> <m:mo> &int; </m:mo> <m:mo> , </m:mo> <m:mo largeop="false"> &prod; </m:mo> <m:mo> , </m:mo> <m:mo largeop="false"> &int; </m:mo> </m:mrow> </m:math>

Save the file after editing as “test.xml”. The display looks like :

, , ,

The movablelimits attribute allows underscripts and overscripts to be represented as subscript and superscript respectively. This rendering of under and over scripts as sub and super scripts is possible by seting this attribute to true. The implementation of this attribute by renderers is not yet consistent.

The "movablelimits" attribute

<m:math display="block"> <m:munderover> <m:mo movablelimits='true'> &sum; </m:mo> <m:mi> a </m:mi> <m:mi> b </m:mi> </m:munderover> <m:munderover> <m:mo movablelimits='false'> &sum; </m:mo> <m:mi> a </m:mi> <m:mi> b </m:mi> </m:munderover> </m:math>

Save the file after editing as “test.xml”. The display looks like :

a b a b

The accent attribute determines whether an operator is treated as accent (diacritical mark) when used as an underscript or overscript.

Get Jobilize Job Search Mobile App in your pocket Now!

Get it on Google Play Download on the App Store Now




Source:  OpenStax, A primer in mathml. OpenStax CNX. Apr 19, 2006 Download for free at http://cnx.org/content/col10345/1.16
Google Play and the Google Play logo are trademarks of Google Inc.

Notification Switch

Would you like to follow the 'A primer in mathml' conversation and receive update notifications?

Ask