Role of <annotation>
Stores a textual alternate representation. Use the element for its semantic role rather than as a visual styling shortcut. Assistive technology, browser math layout, conversion tools, and copy-and-paste behavior all depend on the markup preserving the mathematical structure.
Example markup
<annotation encoding="application/x-tex">\frac{a}{b}</annotation>Allowed children
text
Only place children inside <annotation> when they match the element's content model. Validate the complete MathML tree after conversion because a locally valid fragment can still be incorrect in its parent context.
Implementation notes
- Declare the encoding so consumers know how to interpret the text.
Accessibility and testing
- Keep a meaningful DOM structure instead of replacing the expression with an image.
- Test keyboard selection, screen-reader output, browser rendering, and conversion back to LaTeX.
- Check that fallbacks do not expose raw tags or omit the mathematical relationship represented by <annotation>.