MathML (Mathematical Markup language) is an XML-based language for describing mathematical and scientific equations. MathML captures an equation's presentation and content.
🔑 Key concept: Presentation refers to how an equation looks, and content refers to an equation's mathematical meaning. MathML captures both.
MathML and accessibility
MathML is important for accessibility because it allows equations to be stored as structured text rather than images. Unlike images, structured text can be enlarged without losing quality for low-vision users who need magnification. And, users with visual impairments can use screen readers that support MathML to navigate and review the parts of mathematical expressions in the correct order, which is essential for understanding equations.
Two types of MathML markup
MathML uses two different types of markup to represent an equation's presentation and content:
|Type of MathML markup||Purpose|
|Presentation markup||Displays equations. If you are working with MathML in Typefi Designer, you are using presentation markup.|
|Content markup||Conveys mathematical or scientific meaning.|
Presentation and content markup use different XML elements, which serve different purposes. For example, presentation markup specifies an equation's size, colour, which symbols are used, and the exact position of each object and element. In contrast, content markup denotes operations and how they should be applied.
It is possible to have two equations that are the same but look different. In this case, the two equations convey the same mathematical meaning (that is, they have the same content markup), but they look different because they have different presentation markup.
Comparing presentation and content markup
Let's use the quadratic formula to compare presentation and content markup.
Here is the quadratic equation in presentation markup:
Notice the superscript 2 in this formula. It is nested within the
<msup> element. Here, it represents the squaring operation, but the meaning of a superscript in other situations depends on the context. For example, a letter with a superscript can be used to signify a particular component of a vector, or maybe the superscript just labels a different type of some structure. Presentation markup tells us that the 2 should look like a superscript, but it does not tell us what the superscript means.
🔑 Key concept: If you are working with MathML within Typefi Designer, you are working with presentation markup.
Content markup in MathML allows us to specify the mathematical meaning of an equation. Here is the quadratic equation in content markup:
Now, we no longer have to guess as to what the superscript 2 means—content markup tells us the exact meaning. In this case, we know for sure that the 2 is an exponent, and not, let's say, a particular component of a vector.
Please sign in to leave a comment.