# J Changes (Non-Normative)

Overview: Mathematical Markup Language (MathML) Version 2.0 (Second Edition)
Previous: I Working Group Membership and Acknowledgments
Next: K References
J Changes (Non-Normative)
J.1 Changes between MathML 2.0 and MathML 2.0 Second Edition
J.2 Changes between MathML 1.01 and MathML 2.0

## J.1 Changes between MathML 2.0 and MathML 2.0 Second Edition

- Changes to frontmatter.

  - New text in Abstract and Status.

- Changes to Chapter 1 Introduction.

  - Additional markup for bibliographic references in Section 1.3 The Role of MathML on the Web and Section 1.2.4 Design Goals of MathML.

- Changes to Section 2.1 MathML Overview.

  - Modify description of namespace declarations in Section 2.2 MathML in a Document.

  - Modify description of entity usage in Section 2.3.1 Presentation Examples.

  - Correct the MathML and default rendering of quatratic formula example in Section 2.3.2 Content Examples.

  - Wording changes in Section 2.4.5 Attributes Shared by all MathML Elements.

- Changes to Chapter 3 Presentation Markup.

  - Delete incorrect reference to default em units in Section 3.2.5.7.5 Spacing around an operator.

  - Delete references to Negative Space Characters in Section 3.2.6 Text (mtext) and Section 3.3.4 Style Change (mstyle).

  - Editorial changes to the wording in Section 3.2.8 String Literal (ms).

  - Correct description of `lspace` value in Section 3.3.6 Adjust Space Around Content (mpadded).

  - Add warning that attempts to render outside the bounding box of the MathML expression will give implemetation specific results in Section 3.3.6 Adjust Space Around Content (mpadded).

  - Modify text to match example and refer to over brace rather than over bar in Section 3.4.5 Overscript (mover).

  - Correct description of `displaystyle` in Section 3.3.2 Fractions (mfrac) (may be set on `mtable`).

  - Extend the description of Section 3.3.9 Enclose Expression Inside Notation (menclose) to clarify that the list of notations is open-ended, and extend the example list to include boxes and strikeouts of various forms.

    The example in this section omitted units in the `columnspacing` and `rowspacing` attributes.

  - Correct the example MathML in Section 3.5.1 Table or Matrix (mtable).

  - Correct the description of `minlabelspacing` and include `mlabeledtr` in list of elements with inferred mrows in Section 3.5.5 Alignment Markers.

  - Clarify `rowspan` and `columnspan` must be positive integers in Section 3.5.4.2 Attributes.

  - Correct the description the `linebreak` attribute in Section 3.2.7 Space (mspace).

  - Editorial changes to the text in Section 3.1.6 Summary of Presentation Elements, Section 3.2.1.1 Alphanumeric symbol characters, Section 3.2.2 Mathematics style attributes common to token elements, Section 3.2.2.2 Color-related attributes, Section 3.2.9 Accessing glyphs for characters from MathML (mglyph), Section 3.4.3 Subscript-superscript Pair (msubsup), Section 3.4.6 Underscript-overscript Pair (munderover), and Section 3.4.7 Prescripts and Tensor Indices (mmultiscripts).

  - Clarification that the `fontfamily` attribute of `mglyph` is not deprecated in Section 3.2.2.1 Deprecated style attributes on token elements.

  - Editorial changes to the description of MathML conformance, and deletion of the non normative and unsupported menu action type in Section 3.6.1 Bind Action to Sub-Expression (maction).

  - Addition of a tail to the image for U+2910, and swapping the images for the lowercase phi variants, U+03D5 and U+03C6.

- Changes to Chapter 4 Content Markup.

  - Add comment about use of `semantics` in Section 4.2.1 Overview of Syntax and Usage.

  - Modify description of the `definitionURL` attribute in Section 4.2.1.4 Explicitly defined functions and operators, Section 4.2.2 Containers to be consistent with the DTD with regard to the `type` attribute.

  - Modify description of the `type` attribute in Section 4.2.1 Overview of Syntax and Usage.

  - Add clarifying comments on the attributes allowed on `declare` and give new extended example in Section 4.4.2.8 Declare (declare).

  - Editorial correction to text in Section 4.4.6.3 Union (union) and Section 4.4.6.8 Proper Subset (prsubset).

  - New text clarifying the use of `tendsto` in Section 4.4.7.4 Tends To (tendsto).

  - Clarifying the use of `definitionURL` and `encoding` attributes with `annotation` in Section 4.4.11.1 Annotation (annotation) and Section 4.4.11.2 Semantics (semantics).

  - New text highlighting the fact that `vector` may be rendered either horizontally or vertically in Section 4.4.10.1 Vector (vector).

  - The descriptions of the "scientific, or e notation" (1.234e5) in Section 4.3.2.9 type, Section 4.4.1.2 Identifier (ci) and Appendices C and D became inconsistent in the final draft of MathML2. The older names float and floating-point remained, and the description of type="e-notation" in Chapter 4 (but not Appendix C) described its use with the example 1.234 e 5 where e was used as a separator rather than the `sep` element

  - Correct the example MathML in Section 4.3.3.2 General Attributes.

  - Add note to Section 4.4.3.17 Universal quantifier (forall) observing that the mathematical expressions in the examples are false.

  - Clarify that the order of child elements of `bvar` is not signifcant in Section 4.4.5.6 Bound variable (bvar).

  - Correct the example of OpenMath usage in in Section 4.4.11.3 XML-based annotation (annotation-xml), Section 4.2.5 Conditions, and Section 4.4.1.3 Externally defined symbol (csymbol).

  - Clarification on the use of bound variables in in Section 4.2.2.2 Constructors, Section 4.2.3.2 Operators taking Qualifiers, Section 4.4.2.4 Interval (interval), Section 4.4.2.9 Lambda (lambda), Section 4.4.5.1 Integral (int), and Section 4.4.5.2 Differentiation (diff).

  - Clarification of the examples of the deprecated `fn` element in Section 4.4 The Content Markup Elements, Section 4.4.2.1 Apply (apply), and Section 4.4.2.3 Function (fn).

  - Clarification that `piecewice` may be used with no `piece` children in Section 4.4.2.16 Piecewise declaration (piecewise, piece, otherwise) .

  - Use the MathML2 `pi` element in the example in Section 4.4.4.8 Approximately (approx).

  - Modify example of the "constant" type in Section 4.4.1.1 Number (cn).

  - Expand and clarify the use of qualifier elements such as `bvar` in Section 4.2.1.8 The use of qualifier elements.

  - Delete misleading references to `declare` in `bvar` in Section 4.2.3 Functions, Operators and Qualifiers and Section 4.2.4 Relations.

  - Clarify the description of the `condition` element in Section 4.4.2.7 Condition (condition), especially its relationship to `domainofapplication`.

  - Make explict that `domainofapplication` is a qualifier element in Section 4.4.2.15 Domain of Application (domainofapplication)

  - Clarify the use of the `set` and `condition` elements to specify a set as a range of a function over a given domain in Section 4.4.6.1 Set (set) (and similarly in Section 4.4.6.2 List (list)).

  - Clarify the description of the use of `domainofapplication` with `sum` in Section 4.4.7.1 Sum (sum) and Section 4.4.7.2 Product (product).

  - Show the full equation, not just the left hand side, in the example rendering in Section 4.4.10.8 Scalar product (scalarproduct).

  - Note `fn` is deprecated in Section 4.2.1.8 The use of qualifier elements.

  - Editorial changes in Section 4.2 Content Element Usage Guide.

  - Deletion of the stated restriction that the element may only appear as a child of `apply` or `reln` in Section 4.4.3.4 Maximum and minimum (max, min).

  - Clarify that qualifiers may be used with all n-ary operators in [n-ary operators].

  - Clarification of the use of qualifier elements with `csymbol` and `ci` in [csymbol and ci].

  - Clarification of the use of qualifier elements in in Section 4.4.2.10 Function composition (compose), Section 4.4.3.6 Addition (plus), Section 4.4.3.9 Multiplication (times), Section 4.4.6.13 Cartesian product (cartesianproduct), Section 4.4.3.11 Greatest common divisor (gcd), Section 4.4.3.12 And (and), Section 4.4.3.13 Or (or), Section 4.4.3.14 Exclusive Or (xor), Section 4.4.3.18 Existential quantifier (exists), Section 4.4.4.1 Equals (eq), Section 4.4.4.3 Greater than (gt), Section 4.4.4.4 Less Than (lt), Section 4.4.4.5 Greater Than or Equal (geq), Section 4.4.4.6 Less Than or Equal (leq), Section 4.4.4.7 Equivalent (equivalent), Section 4.4.3.24 Lowest common multiple (lcm).

  - Additional example, showing the use of `bvar` in Section 4.4.6.7 Subset (subset).

  - Alternative renderings using nabla added in Section 4.4.5.8 Divergence (divergence), Section 4.4.5.9 Gradient (grad) and Section 4.4.5.10 Curl (curl).

  - Editorial changes to clarify the allowed arguments in Section 4.4.6.4 Intersect (intersect).

  - Correct the example renderings in Section 4.4.6.9 Not Subset (notsubset) and Section 4.4.6.10 Not Proper Subset (notprsubset).

  - Editorial additions clarifying the intended use of `encoding` in Section 4.3 Content Element Attributes.

  - Correct the example rendering in Section 4.4.10.9 Outer product (outerproduct).

- Changes to Chapter 5 Combining Presentation and Content Markup.

  - Editorial corrections to text in Section 5.2 Mixed Markup.

  - Correct the complexity of parallel markup given in Section 5.3 Parallel Markup to O(n log n).

  - Modify the example rendering image to include both sides of the equivalence expression in Section 5.2.1 Reasons to Mix Markup.

  - Add bibiographic reference to the OpenMath Standard in Section 5.2.1 Reasons to Mix Markup.

  - Correct the example MathML in Section 5.4.3 Style Sheets for Extensions.

- Changes to Chapter 6 Characters, Entities and Fonts.

  - Editorial changes to Chapter 6 Characters, Entities and Fonts, especially Section 6.1 Introduction.

  - Delete references to (deprecated) negative and other spacing characters in the table in Section 6.2.4 Non-Marking Characters.

  - Delete reference to possible Unicode characters for Boolean values as these were not in the final set of characters added at Unicode 3.2, Section 6.3.1 Special Constants.

  - Some changes in Section 6.3.4 Negated Mathematical Characters to document the current usage of combining characters which have been brought into line with the final versions of Unicode 3.2.

  - Changes to Section 6.2 MathML Characters, Section 6.2.1 Unicode Character Data, Section 6.2.3 Mathematical Alphanumeric Symbols Characters, Section 6.3.2 Character Tables (ASCII format), Section 6.3.3 Tables arranged by Unicode block, Section 6.3.5 Variant Mathematical Characters, Section 6.3.6 Mathematical Alphanumeric Symbols and Section 6.4.4 Status of Character Encodings, to reflect Unicode 3.1 and 3.2 which were both released after the first edition of MathML 2.0.

  - Editorial changes to the description of `mglyph` in Section 6.2.2 Special Characters Not in Unicode.

- Changes to Chapter 7 The MathML Interface.

  - Deleted reference to non-conforming namespace behavior in some existing systems in Section 7.1.1 MathML and Namespaces.

  - Editorial changes to Section 7.1.2 The Top-Level math Element.

  - Change reference to XLink which is now a W3C Recommendation, Section 7.1.4 Mixing and Linking MathML and HTML.

  - New section, Section 7.1.5 MathML and Graphical Markup giving an example integrating with SVG.

  - Additional markup for bibliographic references in Section 7.2.3 Attributes for unspecified data.

  - Editorial changes to description of MathML processors in Section 7.2 Conformance.

  - New section describing (existing) extension mechanisms in MathML 2, Section 7.2.1.3 MathML 2.0 Extension Mechanisms and Conformance.

  - Editorial changes to use consistent terminology to describe conformance criteria for MathML processors in Section 7.2.1.1 MathML Test Suite and Validator, Section 7.2.1.2 Deprecated MathML 1.x Features, Section 7.2.2 Handling of Errors, and Section 7.3 Future Extensions.

- Changes to Appendix A Parsing MathML.

  - New section, Section A.1 Use of MathML as Well-Formed XML describing use without a DTD.

  - The location of the MathML DTDs described in Section A.2.1 DOCTYPE declaration for MathML and Section A.2.3 MathML as a DTD Module are now in the Math Working group area rather than distributed with this Recommendation.

  - New sections descriping parameterisation possibilities for the DTD: Section A.2.2.1 Namespace Prefix and Section A.2.2.2 Additional DTD Checking.

  - In Section A.2.4 SGML, the link to the W3C Note on SGML and XML has been corrected and changed to a bibliography reference.

  - The MathML DTD as shown in Section A.2.5 The MathML DTD Incorporates several corrections as listed in the MathML 2.0 Errata document, or listed in the change log at the end of the DTD.

  - New section, Section A.3 Using the MathML XML Schema describing the use of the W3C XML Schema for MathML.

- Changes to Appendix B Content Markup Validation Grammar.

  - Many corrections, and new display format for the productions given in the grammar for Content Markup in Appendix B Content Markup Validation Grammar.

- Changes to Appendix C Content Element Definitions.

  - Many corrections to the MathML Examples in cn, ci, interval, factorial, rem, root, gcd, divide, plus, equivalent, partialdiff, divergence, grad, limit, moment, selector, rationals, exponentiale, imaginaryi, reln, condition, lambda, compose, codomain, image, domainofapplication, piecewise, piece, quotient, min, forall, int, max, minus, times, eq, lowlimit, abs, lcm, gt, lt, geq, leq, lowlimit, uplimit, bvar, degree, curl, set, list, union, intersect, subset, prsubset, sum, product, exp, ln, log, sin, cos, tan, sec, csc, cot, sinh, cosh, tanh, sech, csch, coth, arcsin, arccos, arctan, arccosh, arccot, arccoth, arccsc, arccsch, arcsec, arcsech, arcsinh, arctanh, momentabout, vector, matrix, transpose, reals, power, exists, floor, ceiling, approx, true, false, pi, eulergamma, otherwise.

  - Clarify the use of `definitionURL` in Section C.1 About Content Markup Elements.

- Changes to Appendix D Document Object Model for MathML.

  - Corrections to the following interfaces: MathMLPresentationToken, MathMLContentToken, MathMLSpaceElement, MathMLOperatorElement, MathMLStyleElement, MathMLFencedElement, MathMLFractionElement, MathMLContentElement, MathMLIntervalElement, MathMLApplyElement, MathMLEncloseElement, MathMLActionElement, MathMLTableRowElement, MathMLCnElement, MathMLCiElement, MathMLTendsToElement.

  - Modification of the description of `tendsto` in Section D.2.2 Table of Elements and MathML DOM Representations.

- Changes to Appendix F Operator Dictionary.

  - Blank lines in Section F.5 Operator dictionary entries used in the inferred mrow grouping algorithm were omitted. They have been restored based on the groupings in MathML 1.01.

  - Some entity names in Section F.5 Operator dictionary entries have been corrected and/or deleted to match the names in the MathML DTD.

- Changes to Appendix I Working Group Membership and Acknowledgments.

  - Document changes in Working Group membership in Section I.1 The Math Working Group Membership.

  - Editorial changes in Section I.2 Acknowledgments.

- Changes to Appendix J Changes.

  - New section Section J.1 Changes between MathML 2.0 and MathML 2.0 Second Edition describing changes in the Second Edition.

  - Minor edits to the description of the earlier changes in Section J.2 Changes between MathML 1.01 and MathML 2.0.

- Changes to Appendix K References.

  - Added and updated many entries: [Behaviors], [CSS1], [CSS2], [DOM], [HTML4], [MathML1], [MathML2], [Modularization], [Namespaces], [RFC2045], [RFC2046], [sgml-xml], [SVG1.1], [XHTML], [XHTML-MathML-SVG], [XLink], [XML], [XMLSchemas], [XPath], [XPointer], [XSLT], [UAX15].

- Changes to Appendix L Index.

  - New Appendix Appendix L Index incorporating Section L.1 MathML Elements and Section L.2 MathML Attributes

## J.2 Changes between MathML 1.01 and MathML 2.0

- changes to Chapter 1 Introduction

  - rewritten to reflect developments since publication of the MathML 1.0 Recommendation [MathML1], for example XML, XSL, CSS and schemas

- changes to Chapter 2 MathML Fundamentals

  - rewritten to reflect developments since publication of the MathML 1.0 Recommendation [MathML1], for example XML, XSL, CSS and schemas

  - examples were rewritten to reflect good MathML 2.0 practice

  - descriptions of attribute values were updated to reflect MathML 2.0

- changes to Chapter 3 Presentation Markup

  - introduced a new section on bidirectional layout of mathematics

  - introduced new mathematics style attributes `mathvariant`, `mathsize`, `mathweight`, and `mathcolor` on token elements, and deprecated the use of `fontfamily`, `fontsize`, `fontweight`, `fontstyle` and `color`.

  - introduced new elements mglyph, menclose and mlabeledtr and updated related text accordingly

  - added attributes beveled, numalign and denomalign to mfrac

  - added a linebreaking attribute to mspace

  - required mtr and mtd elements to be explicit instead of allowing them to be inferred.

- changes to Chapter 4 Content Markup

  - deprecated the use of reln and fn and changed the use of apply accordingly

  - introduced csymbol and added a discussion about the relation to the deprecated fn element

  - introduced new content elements domain, codomain, image, domainofapplication, arg, real, imaginary, lcm, floor, ceiling, equivalent, approx, divergence, grad, curl, laplacian, card, cartesianproduct, momentabout, vectorproduct, scalarproduct, outerproduct, integers, reals, rationals, naturalnumbers, complexes, primes, exponentiale, imaginaryi, notanumber, true, false, emptyset, pi, eulergamma, infinity, piecewise, piece and otherwise

  - corrected examples and fixed typos

  - expanded the attribute definitionURL to allow a URL or a URI as a value

  - clarified the use of presentation markup inside cn

  - made use of encoding attribute more uniform

  - changed description of the use of bvar in combination with min and max

- changes to Chapter 5 Combining Presentation and Content Markup

  - added description of content-faithful transformation

  - updated examples to reflect MathML 2.0

  - define list of content that can appear in presentation

  - add attribute xref for cross-referencing purposes

  - added examples using XLink and namespaces

  - make use of encoding attribute more uniform

  - miscellaneous typographical corrections

- changes to Chapter 6 Characters, Entities and Fonts

  - added a new section describing the methods of using Unicode data within MathML

  - added a new section describing the correspondence between Math Alphabet characters and the `mathvariant` attribute

  - completely revised and reformatted the MathML character tables to reflect changes in Unicode since MathML 1.01

- changes to Chapter 7 The MathML Interface

  - reworked the text in acknowledgement of the fact that the top-level and interface elements for MathML are now in practice the same

  - rewrote the text about linking to reflect changes in XLink since MathML 1.01

  - revised material about interactions with embedded renderers to reflect the current state of DOM implementation

  - added a definition of deprecated features in MathML 2

  - updated the text to reflect the use of namespaces and the introduction of XHTML. 2.0

  - added a new section on the appropriate use of CSS and the new mathematics style attributes in rendering environments with support CSS

- changes to Chapter 8 Document Object Model for MathML

  - this is a completely new chapter

- changes to Appendix A Parsing MathML

  - renamed attribute occurence to occurrence

  - added global attribute xref

  - add links to tables for each entity set

- changes to Appendix B Content Markup Validation Grammar

  - Updated to reflect MathML 2.0.

- changes to Appendix C Content Element Definitions

  - completely rewritten to reflect changes in MathML 2.0

- changes to Appendix F Operator Dictionary

  - entries in operator dictionary are parametrized

  - operator dictionary has become a non-normative part of the specification

  - new entries were added to operator dictionary

- changes to Appendix D Document Object Model for MathML

  - this is a completely new appendix, containing the IDL definitions

- changes to Appendix H Glossary

  - added entries for XSL, XSLT and XSL FO

- changes to Appendix I Working Group Membership and Acknowledgments

  - all members of first and second Math Working Group are listed

- changes to Appendix J Changes

  - completely new appendix, based on the logs obtained from CVS

- changes to Appendix K References

  - added and updated many entries

- general changes

  - text of specification now in XML form, with HTML and XHTML rendering by means of XSLT, and PDF rendering by means of XSLT and TEX

  - fixed errors in spelling and notation

  - normative examples of formulas are images, with a LaTEX equivalent

  - non-normative examples of formulas are HTML constructions wherever possible

  - improved cross-referencing

Overview: Mathematical Markup Language (MathML) Version 2.0 (Second Edition)
Previous: I Working Group Membership and Acknowledgments
Next: K References