MathML

14 08 2010

I was looking around the World Wide Web Consortium’s web site looking for some tech docs on CSS and I stumbled across something that I had no idea existed – a mathematics markup language for the web, called MathML.

MathML is based on XML and it handles both presentation and interpretation of mathematical notation. Simply put, it uses standard, well-formed, XML-style tags for a wide variety of mathematical functions.

It is also possible to embed MathML markup into an XHTML document. However, MathML support in browsers is rather hit-or-miss. The latest versions of Gecko-based browsers, like Firefox and Camino support it. Internet Explorer can be expanded to support it. Strangely, WebKit-based browsers, like Safari and Chrome, do not support it.

MathML has great potential and it is a shame that it has not been better supported since it first came on the scene in 1998. Imagine if students were taught MathML in addition to XHTML. In conjunction with GUI-based MathML editors, it would allow math and science teachers and publishers create resources, texts, and assignments. If students picked it up, they could also collaborate more effectively on math assignments online.

MathML is not limited to the web. Numerous desktop-based programs support reading and editing MathML. Microsoft Office 2007, OpenOffice, and Mathematica are among them and are readily available. However, it is unclear how much users who may benefit from this feature actually are aware of it and how to use it.

MathML is a very impressive technology and I would love to see it implemented more widely. Properly implemented, supported, and publicized, it has the potential to improve the way math and science students and teachers learn and interact.

Update: MathML is now turned on by default in WebKit. You can get it in the current nightly builds of WebKit.

Advertisements

Actions

Information

One response

15 08 2010
Paul Topping

Thanks for bringing MathML to the attention of your readers. While we in the MathML biz always wish MathML were more supported, supporters of many technologies can say that. The fact is that MathML is often supported without others knowing about it. It exists behind the scenes in many professional publishing workflows and many other products.

MathML support in browsers is a little better than you state. Internet Explorer has excellent support for MathML via my company’s free MathPlayer plugin. MathML support for WebKit is being worked on. Finally, there is the just -released MathJax (www.mathjax.org), a JavaScript display engine for MathML and LaTeX that works in all modern browsers, even mobile devices.

While I wouldn’t discourage students from learning about MathML, it is not intended that anyone but tool developers ever write MathML by hand. It is an internal representation. You do point out that there should be editors that produce MathML. There have been for a long time. My company’s MathType is one of them.

Our vision of the future is one where mathematical notation in web pages, blogs, wikis, web apps, ebooks, desktop apps, etc. is all either represented using MathML or convertible to MathML. In such a world, users can cut-and-paste, drag-and-drop math as easy as text. They can copy an equation created in Mathematica and paste it into Microsoft Word (they can do that now) or into Excel as a formula (someday soon). This mathematics will be accessible to the blind and vision-impaired because MathML can be converted to speech (MathPlayer does this now). This math will also be searchable allowing people with difficult math problems to find others’ solutions. Once this is in place, its users may never hear the name MathML but it will be there.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s




%d bloggers like this: