Home Written Works Mathematical Markup Language (MathML)

Search

Mathematical Markup Language (MathML) Print
Written by Chris Gountanis   

This specification defines the Mathematical Markup Language, or MathML. MathML is an XML solution for defining mathematical notation and capturing both its structure and content. The objective of MathML is to enable mathematics to be sent, received, and processed using the Internet.

Mathematical Markup Language MathML

 

This specification of the markup language MathML is meant for developers who will be developing or implementing renderers or editors using it, or software that will communicate using MathML as a protocol for IO.

 

MathML can be used to encode both mathematical and mathematical notation content. Twenty-eight of the MathML tags describe abstract notational structures, while another seventy-five provide a way of specifying the intended meaning of an expression. MathML entities have issues with (extended characters) and their relation to fonts.

 

While MathML is understandable to read it is predicted that authors will use equation editors, conversion programs, and other specialized software tools to generate MathML. SO in many cases software will generate the MathML for the client vs. the client creating the markup by hand. Several early versions of such MathML tools already exist, and a number of others, both freely available software and commercial products, are under development.

 

"A mathematical expression can be represented as an aggregate set of boxes. These are the bounding boxes that would enclose mathematical entities (literal symbol, operator, delimiter, etc). With rules governing the positioning of these entities (subscript, superscript, fraction, etc), it is possible to construct the box-model in a recursive manner by traversing the parsing tree of the expression." - Mozilla

 

Mozilla has spent some time developing MathML into the browser. The priority of the project will be to provide a small and fast engine that will process MathML and enable Gecko to render mathematical expressions <math>...</math> in graphical form. Another goal is to provide a WYSIWYG interface to MathML. This will be a graphical equation editor with an internal display in standard MathML text.

 

"The presentation elements are meant to express the syntactic structure of math notation in much the same way as titles, sections, and paragraphs capture the higher level syntactic structure of a textual document. Because of this, for example, a single row of identifiers and operators, such as "x + a / b", will often be represented not just by one <mrow> element (which renders as a horizontal row of its arguments), but by multiple nested <mrow> elements corresponding to the nested sub-expressions of which one mathematical expression is composed" - w3

 

<mrow>
    <mi> x </mi>
    <mo> + </mo>
    <mrow>
        <mi> a </mi>
        <mo> / </mo>
        <mi> b </mi>
    </mrow>
</mrow>

 

MathML is a great markup language for passing math based information from one application service to another. However, this language for the most part is created by programming routines with initiate the communication with each other and not something developers hard-code manually. This process makes sense in the fact that applications accept random variables and send these math based notations for processing on remote machines.

 

 

WORKS CITED

Mozilla MathML in Mozilla. (n.d.).

Retrieved from MathML in Mozilla: http://www.mozilla.org/projects/mathml/


w3 Mathematical Markup Language (MathML™) 1.01 Specification. (n.d.).

Retrieved from Mathematical Markup Language (MathML™) 1.01 Specification: http://www.w3.org/TR/REC-MathML/


Wikipedia MathML. (n.d.).

Retrieved from MathML: http://en.wikipedia.org/wiki/MathML

 

 

Last Updated on Tuesday, 22 January 2008 05:07