MathBook XML (MBX)

MBX is a collection of xml-related files that can be used when writing an OER textbook. Rob Beezer is the creator of this project, and his informational page is at

I'd (Alex Jordan) like to convince anyone with an OER project to consider using MBX. Let's look at a current example, where I will be converting the PCC calculus lab manual to this format.

Version and commentsScreenshot

The old, original (well, 2010 revision) of the PCC Calculus I lab manual, written in MS Word and shared as a PDF.

This document has served us well. However the limitations on its format are causing some trouble:

  • The PDF is not web accessible (in the ADA sense, as well as the portable device sense).
  • The document is hard to revise, since it relies on more than one piece of software (Word and graphics creation tools mainly).
  • The document is hard to reformat. For instance, simple reordering the lab chapters would be tedious to do and confirm that the transition worked.

Using MBX, the pdf will look something like this now.

Additional attention to formatting issues (like enumeration of the problems and spacing) can be settled on at the end of the project.

A lot of things that could be tediously written into the Word-based pdf are trivially executed using MBX:

  • hyperlinked cross-referencing (like the link to Exercise
  • consistent formatting (how do vocabulary terms stand out; how do you emphasize text occasionally?)
  • reordering and reformatting just about anything regarding presentation


Using MBX, we will simultaneously achieve a high-quality HTML output.

  • "Chapters" and "sections" are built into separate pages with a navigation menu.
  • The output is web accessible; math content is rendered using MathJax.
  • The web design is responsive, meaning that the layout will adjust to conform better to smaller screens
  • Everything about formatting is easily controlled through a single .css file.
  • Cross-referencing is handled beautifully. Some items like the Exercise reference are (currently) a hyperlink. Other items, like a reference to the Definition 1.1.1 would be a "knowl" (clicking opens a dropdown copy of the Definition).
  • If we want, we can have interactive web applets, videos, etc., (each of which would have to appear as a static image in the pdf.)

This is what .xml source looks like for the emerging MBX version of the document.

There is almost no attention paid to what the final output will look like. In xml, all of the document's content is just written with logical opening and closing tags. For instance, where and how is the title of the definition declared?

This approach to writing content can feel very alien if you are used to writing in a What You See Is What You Get editor like Word. But it's exaclty this focus on logical structure that allows simultaneous creation of high-quality pdf and html output.

In fact, this same source document will later be used to create more output formats. Along with html and pdf, epub and brf (Braille) output formats are in the works. It must be stressed: once a new output format style sheet is created, it will instantly apply to any project which was written in MBX without any need to modify the document's source.



  • No labels