Dictionary The following elements in the x: namespace form an implementation of an "Operator Dictionary" for this MathML Implementation. In the case of stretch operators, the element specifies the symbol parts via the latin-1 equivalent character based on the encoding in the symbol font. It is a clear "failure to comply to the spec" that using latin 1 characters (or numeric character references) in the latin 1 range access glyphs in teh symbol font via font position, however most of these character parts are not in Unicode (until 3.2), so there is no standard way to access these characters. { { ( ) [ ] [[ ]] | ||   ~ _v_ Remove these for now, as XML parser in IE6 is broken and doesn't accept plane 1 characters. Grab all of the above into a variable. HTML elements XHTML elements get passed straight through, sans namespace prefix. Template for the head element copies the original content, aand in addition adds a script element and CSS style element that implement the core of the MathML renderer. The malign function first finds the left most item in the aligngroup, and then modifies the left margin of each item to make them align. (Currently only left alignment is supported.) The mrowStretch function implements stretchy brackets. It is called repeatedly, once for each mo child,after a span corresponding to an mrow. The arguments are the id of teh span and the characters to use for the parts of the stretch operator. constructed fence. The Inline CSS style block handles all font and size specification for the various MathML operators. Unimplemented MathML elements get copied literally, in red, mainly as a debugging aid. <> </> mi: set default font based on string length, otherwise behaviour based on entries in the operator dictionary if one exists, or content is copied through to the output unchanged. mi1 Handling of mathvariant attribute. The choice of font families here (currently) avoids math-specific fonts but does use several fionts coming with windows 9.x and/or office 2000. font-weight: bold; font-style: upright font-style: upright; font-weight: bold; font-style: italic; font-style: italic; font-family: monospace; font-family: sans-serif; font-family: sans-serif; font-weight: bold; font-family: old english text mt doublestruck font-family: brush script mt italic mo: Generate a unique ID so that a script at the end of any surrounding mrow may replace the conent by a suitably stretched operator if need be. mn: a simple span munder: currently only supports underline, with a bottom border border-width: 0pt 0pt .1em 0pt; border-style: solid;" mover: currently only supports overline, with a top border border-width: .1em 0pt 0pt 0pt; border-style: solid;" munderover:
mtext: a simple span mstyle: not many attributes currently supported color: ; background-color: ; mglyph: Uses disable output escaping to construct a numeric character reference. Uses IE's non conforming behaviour of using this number to access the font encoding rather than unicode. ; ms: a simple span with left and right character added to the content. " " ( ) ,
    \ \ \ font-size: 75% ; font-size: 100% ;
left