A Gentle Introduction to MathML
by Robert Miner and Jeff Schaeffer (revised 10/2001)
MathML is about encoding the structure of mathematical expressions so
that they can be displayed, manipulated and shared over the World Wide
Web. A carefully encoded MathML expression can be evaluated in a
computer algebra system, rendered in a Web browser, edited in your
word processor, and printed on your laser printer. Mathematical
software vendors are adding MathML support at a rapid pace, and MathML
is fast becoming the lingua franca of scientific publication
on the Web.
The MathML Specification is quite long, complex and technical.
To make it easier to get started with MathML, the following tutorial
emphasizes the main ideas with graphics and lots of examples.
MathML Language Reference
The WebEQ MathML Language Reference describes the WebEQ implementation of
MathML. MathML is the native input language for the WebEQ Viewer Control. While MathML has many advantages for encoding equations for
the Web, authors who want to write equation markup by hand will
probably find it easier to use WebTeX. WebTeX can also be used as
an input language for the Math Viewer, and it can be translated to
MathML by the Page Wizard.
A description of each MathML element is given below. This
description contains both general information about the role of each
element in MathML, and specific information about how each element and
its attributes are implemented in the WebEQ rendering engine.
WebEQ implements MathML 2, based on the
specification developed by the World Wide Web Consortium. There are a few
features of MathML that WebEQ does not implement, and a few extra
features that WebEQ adds. However, at the time of this writing, WebEQ
provides the most complete and compliant implementation of MathML
The element descriptions are grouped according to their MathML