[AI] Tech dose of the day: Mathematical Markup Language (MathML)
vishnu ramchandani
vishnuhappy at yahoo.com
Fri Feb 29 06:59:05 EST 2008
Mathematical Markup Language (MathML)
contributor : Keerti Araganji (from MphasiS Software
Services)
What is MathML?
MathML is intended to facilitate the use and re-use of
mathematical and scientific content on the Web, and
for other applications such as computer algebra
systems, print typesetting, and voice synthesis.
MathML can be used to encode both the presentation of
mathematical notation for high-quality visual display,
and mathematical content, for applications where the
semantics plays more of a key role such as scientific
software or voice synthesis.
MathML is cast as an application of XML. As such, with
adequate style sheet support, it will ultimately be
possible for browsers to natively render mathematical
expressions. For the immediate future, several vendors
offer applets and plug-ins which can render MathML in
place in a browser. Translators and equation editors
which can generate HTML pages where the math
expressions are represented directly in MathML will be
available soon.
Further Info:
Although the mark-up language HTML has a large
repertoire of tags, it does not cater for math. With
no means of using HTML tags to mark up mathematical
expressions, authors have resorted to drastic means.
For example, a popular method involves inserting
images - literally snap shots of equations taken from
other packages and saved in GIF format - into
technical documents which have a mathematical or
scientific content.
The present Math WG has been working on an extension
of MathML which has further customization
possibilities, and which is in harmony with the recent
developments in Web markup technology. The results of
this effort have been a series of working drafts of
MathML 2.
MathML consists of a number of XML tags which can be
used to mark up an equation in terms of its
presentation and also its semantics. MathML attempts
to capture something of the meaning behind equations
rather than concentrating entirely on how they are
going to be formatted out on the screen. This is on
the basis that mathematical equations are meaningful
to many applications without regard as to how they are
rendered aurally or visually.
MathML is a low-level format for describing
mathematics as a basis for machine to machine
communication. MathML is not intended for editing by
hand, but is for handling by specialized authoring
tools such as equation editors, or for export to and
from other math packages.
This simple example of MathML gives you an idea of how
it works. The equation in question is:
x2 + 4x + 4 =0
and below are two ways that this can be represented,
first using presentational tags, then using semantic
tags. The presentational tags generally start with "m"
and then use "o" for operator "i" for identifier "n"
for number, and so on. The "mrow" tags indicate
organization into horizontal groups.
<mrow>
<mrow>
<msup> <mi>x</mi> <mn>2</mn> </msup> <mo>+</mo>
<mrow>
<mn>4</mn>
<mo></mo>
<mi>x</mi>
</mrow>
<mo>+</mo>
<mn>4</mn>
</mrow>
<mo>=</mo>
<mn>0</mn>
</mrow>
The semantic tags take into account such concepts as
"times", "power of" and so on:
<apply>
<plus/>
<apply>
<power/>
<ci>x</ci>
<cn>2</cn>
</apply>
<apply>
<times/>
<cn>4</cn>
<ci>x</ci>
</apply>
<cn>4</cn>
</apply>
Further References
W3C Math Home :
http://www.w3.org/Math/
http://www.w3.org/Math/whatIsMathML.html
http://searchsoa.techtarget.com/sDefinition/0,,sid26_gci343060,00.html
Why delete messages? Unlimited storage is just a click away. Go to http://help.yahoo.com/l/in/yahoo/mail/yahoomail/tools/tools-08.html
More information about the AccessIndia
mailing list