W3C MathML 3.0 PAS Explanatory Report


Status: June 19th 2014. Version sent to ISO/IEC JTC 1.

Nearby: PAS Selection Process . PAS FAQ

Table Of Content:

1. Introduction

This document presents the Mathematical Markup Language (MathML) Version 3.0 2nd Edition being submitted by W3C for JTC 1 PAS transposition into an ISO/IEC International Standard.

This W3C Recommendation is within scope of the W3C PAS Submitter's original application and is part of the Core Web technology stack that W3C is continually maintaining and evolving. The conditions for the recognition of W3C as a PAS Submitter have not changed since approval of W3C as a PAS Submitter.

W3C notes that Mathematical notation expertise is available in SC 34.

The W3C MathML 3.0 specification URL, along with the final International Standards ISO/IEC title and number we are requesting, is:

Number Title URL
40314 W3C Mathematical Markup Language (MathML) Version 3.0 2nd Edition http://www.w3.org/TR/2014/REC-MathML3-20140410/

The remainder of this Introduction section addresses the strategic interests in Interoperability, and in Cultural and Linguistic Adaptability. Subsequent sections address the JTC 1 PAS criteria listed in the Document-Related Criteria (mapping to the section 7.4 in JTC 1 Standing Document on PAS).

The MathML 3.0 Recommendation is freely available from the W3C web site. We believe the transposed ISO/IEC standard will thus meet one of the ISO/IEC guidelines for free availability, which W3C requests.

1.1. Strategic values

MathML was born within W3C in 1996 to allow the exchange of mathematical formulas between applications, and especially to exchange them over the Web. It provides ways to describe both the visual presentation of formulas (with mathematical symbols, built-up formulas and font styles) and their semantics (with reference to different domains of mathematics). The presentation and the semantics can be described together, but also in isolation, for contexts where either the presentation or the semantics is not important, or implicit. MathML is expressed in XML, allowing it to be used in XML-based wokflows.

MathML was quickly adopted as an import or export format by various software applications that use mathematics for engineering, statistics and other domains. Via plug-ins, and later via Javascript, MathML could also be displayed as part of Web pages.

The current version is version 3.0 (from 2010 for the first edition). Its interoperability was demonstrated by means of a large test suite, which was extended considerably from the test suite for the previous version, version 2.

HTML5, the latest version of the HTML standard, which currently has the status in W3C of “Candidate Recommendation,” includes MathML3 as a required part, which has helped MathML's wider adoption, in the sense that Web browsers have started to support it natively, i.e., without requiring plug-ins or JavaScript.

HTML5 includes MathML version 3. Other document formats earlier included MathML version 2, including ODF (ISO/IEC 26300:2006) and OOXML (ISO/IEC 29500-1:2012). MathML is required in ODF and optional in OOXML.

MathML version 2 is a subset of version 3, although some features are marked as deprecated (but still supported).

MathML can be used in combination with OpenMath, an XML-based format for expressing the semantics of mathematical formulas developed by the OpenMath Society, a group of math publishers, tool makers and authors. OpenMath defines a series of so-called Content Dictionaries for many branches of mathematics. When a formula in MathML represents a branch of mathematics other than the handful that are built-in, the semantics can be defined by reference to the corresponding OpenMath Content Dictionary.

It uses the W3C Normative references policy ensuring that referenced specifications are stable and have licensing terms that are consistent with royalty-free implementation of W3C Recommendations.

All W3C technologies are reviewed by the W3C Internationalization Activity during their development. The W3C standards development process is open to all participants, regardless of cultural or linguistic origins.

During the development of MathML3, the authors explicitly looked for local traditions and languages where mathematics might be written in different ways. Based on descriptions received from various sources, MathML3 added a number of notations used in elementary schools in different countries and also the ability to write formulas (or parts of them) from right to left, which is done in various countries e.g. in Arabic or Hebrew in Northern Africa or the Middle East.

arabic math

It is believed MathML3 can express all variants of left-to-right and right-to-left writing modes. On the other hand, there are probably still traditions in elementary schools around the world that cannot be expressed, or not conveniently, with the presentational part of MathML.

MathML is also a technology of choice for Accessibility to People with Disabilities. It provides well known and simple semantics that can be easily conveyed through the medium of choice of the end-users, e.g. braille, audio output, large font. It removes the need to display "dumb" bitmaps for math equations, and also allow for synchrounous tracking of the elements in the equation, using dynamic highlighting for instance to help with learning disability.

2. Document Related Criteria (7.4 in JTC 1 Standing Document on PAS)

The following sections use the numbering from section 7.4 of JTC 1 Standing Document 9 -- Guide to the Transposition of Publicly Available Specifications Into International Standards.

7.4.1 Quality

Within its scope the specification shall completely describe the functionality (in terms of interfaces, protocols, formats, etc) necessary for an implementation of the PAS. If it is based on a product, it shall include all the functionality necessary to achieve the stated level of compatibility or interoperability in a product independent manner. Completeness

  1. How well are all interfaces specified?
  2. How easily can implementation take place without need of additional descriptions?
  3. What proof exists for successful implementations (e.g. availability of test results for media standards)?

The W3C MathML 3.0 specification being submitted followed the W3C standards development process. W3C standards are written in US English with semantics for terms imposed by various formal mechanisms. W3C provides authoring templates and tools, and employs vetted rules for the publication of documents to help Working Groups maintain consistent quality. Glossaries are present as well.

As a W3C Recommendation document, MathML successfully passed the Candidate Recommendation stage of the W3C standards development process. In this development stage, independent implementations of the specifications are documented to demonstrate applicability and implementability of the standard in practice. The implementation testing process for MathML 3 included testing multiple implementations of all normative features across different operating systems, browsers, and across a variety of types of content, in diverse of languages and scripts. Documentation of successful implementations as of the end of the Candidate Recommendation period was presented in the MathML Implementation Report.

Extensive supporting technical and educational resources are freely available on the W3C Math website, though these are not required for specification compliance.

The next sections provide detail on testing, conformance, implementation experience, and more. Clarity

  1. What means are used to provide definitive descriptions beyond straight text?
  2. What tables, figures, and reference materials are used to remove ambiguity?
  3. What contextual material is provided to educate the reader?

A MathML glossary is provided to define key terminology in the context of this particular specification. Supporting technical and educational material is provided separately from the MathML specification so that they can be updated and expanded periodically to reflect current best practices. These materials are available on the W3C Math Home page.

A lot of tables are provided to clearly presents the various correspondence between Math representations (e.g. with Unicode).

MathML3 provides several Appendixes explaining how to parse the XML, or suggesting a dictionary of rendering properties for operators, fences, separators, and accents in Math formulas. Testability

The extent, use and availability of conformance/interoperability tests or means of implementation verification (e.g. availability of reference material for magnetic media) shall be described, as well as the provisions the specification has for testability.

The specification shall have had sufficient review over an extended time period to characterise it as being stable.

MathML 3 includes a Conformance section where three forms of MathML conformance are specified:

  1. A MathML-input-conformant processor must accept all valid MathML expressions; it should appropriately translate all MathML expressions into application-specific form allowing native application operations to be performed.

  2. A MathML-output-conformant processor must generate valid MathML, appropriately representing all application-specific data.

  3. A MathML-round-trip-conformant processor must preserve MathML equivalence. Two MathML expressions are "equivalent" if and only if both expressions have the same interpretation (as stated by the MathML Schema and specification) under any relevant circumstances, by any MathML processor. Equivalence on an element-by-element basis is discussed elsewhere in this document.

Beyond the above definitions, the MathML specification makes no demands of individual processors. In order to guide developers, the MathML specification includes advisory material; for example, there are many recommended rendering rules throughout Chapter 3 Presentation Markup. However, in general, developers are given wide latitude to interpret what kind of MathML implementation is meaningful for their own particular application.

MathML received extensive review and refinement during its multi-year development, with participation and contributions from industry, disability and other user organizations, researchers, government representatives and other key stakeholders over the course of multiple review cycles. Stability

  1. How long has the specification existed, unchanged, since some form of verification (e.g. prototype testing, paper analysis, full interoperability tests) has been achieved?
  2. To what extent and for how long have products been implemented using the specification?
  3. What mechanisms are in place to track versions, fixes, and addenda?

MathML 3 was first published in October 2010 and has remained unchanged for the three years since. We're now publishing an errata of this version.

The MathML 2.0 (Second Edition) specification has been a W3C Recommendation since 2001. After its recommendation, a W3C Math Interest Group collected reports of experience with the deployment of MathML and identified issues with MathML that might be ameliorated. The rechartering of a Math Working Group did not signal any change in the overall design of MathML.

The major additions in MathML 3 are support for bidirectional layout, better linebreaking and explicit positioning, elementary math notations, and a new strict content MathML vocabulary with well-defined semantics. The MathML 3 Specification has also been restructured.

The specification has gained wide popularity among end-users, and has become the standard of choice for import/export. The versioning of MathML and the management of errors are in accordance with the W3C process. In particular, the MathML Interest Group follows the Errata Management procedures in the W3C Process Document. Availability

  1. Where is the specification available (e.g. one source, multinational locations, what types of distributors)?
  2. How long has the specification been available?
  3. Has the distribution been widespread or restricted? (describe situation)
  4. What are the costs associated with specification availability?

All W3C specifications, including W3C Recommendation track documents (the highest level for a W3C standard) are available throughout their development for royalty-free download, without registration, through the W3C website, located at: http://www.w3.org/standards/.

MathML 3.0 has been available as a finalized W3C Recommendation under the same conditions since October 2010.

All its supporting technical and educational materials are distributed and promoted without fee or restriction internationally by W3C as well as by organizations and governments around the world.

We therefore request that the approved ISO/IEC standard also be made available for free.

7.4.2 Consensus

The accompanying report shall describe the extent of (inter)national consensus that the document has already achieved. Development Consensus

  1. Describe the process by which the specification was developed.
  2. Describe the process by which the specification was approved.
  3. What “levels” of approval have been obtained?

The W3C Process Document, already verified by JTC 1 for W3C's PAS submission process, governs the W3C standards development process. It promotes the goals of quality and fairness in technical decisions by encouraging consensus, requiring reviews both by W3C Member organizations and the public as part of the standard development process, and obliging the Working Group to respond to all comments.

In addition, multi-stakeholder participation and review was actively sought out, including representation from industry, disability organizations, research, and government, to ensure that the consensus achieved represented the interests of different stakeholders of Math notation technologies.

As explained in this central W3C document, consensus is a core value of the W3C community. To promote it, the W3C process requires its Working Group Chairs and Staff Contacts to ensure that groups consider all legitimate views and objections, and endeavor to resolve them whether these views and objections are expressed by the active participants of the group or by others (e.g., another W3C group; a group in another organization; or the general public).

The W3C Process Document provides a definition for Consensus in the W3C context, describing the level of support for a decision reached among a set of eligible individuals:

The chain of steps leading from a Working Group draft to final W3C Recommendation status is followed by all W3C groups and is described in the W3C PAS submitter status file.

The following image summarizes these document maturity levels:

W3C Process steps, starting at the bottom with Working Draft, then Last Call Working Draft, Candidate Recommendation, Proposed Recommendation, and Recommendation.

As with all W3C Recommendations, MathML has a Status section describing its origin, the name of the W3C Working Group and Activity in charge of it at the time it was done, and more.

Under the W3C standards development process, when all issues raised during the various review steps have been resolved, this work has reached the highest level in the W3C process and becomes a W3C Recommendation. Response to User Requirements

  1. How and when were user requirements considered and utilised?
  2. To what extent have users demonstrated satisfaction?

All the inclusiveness mechanisms supported by the W3C process were used for MathML development, ranging from active participation of W3C Member organizations and Invited Experts, to broad public calls for review and to calls to invited contacts with specific stakeholder expertise, to ensure representation of all stakeholders including those end-users.

The W3C standards development process requires Working Groups to respond to all comments from W3C Member organizations as well as from the public, regardless of their direct or indirect involvement with the Working Group. Working Groups are further required to document comments and to credibly demonstrate their satisfactory resolution in a transparent way. All versions of MathML have followed these procedures just as with other W3C standards during its development process.

W3C maintains liaisons with other organizations. For MathML, e.g., the liaison with the IDPF (developers of EPUB) was relevant. Market Acceptance

  1. How widespread is the market acceptance today? Anticipated?
  2. What evidence is there of market acceptance in the literature?

W3C MathML is internationally recognized by organizations and governments as an authoritative reference for Mathematical markup.

MathML 3 dates from 2010 and it extends MathML 2 (2001, 2003), which in turn extends MathML 1 (1998, 1999). Most MathML 1 documents are still valid in MathML 3. The second edition of MathML 3 is just an errata.

MathML is widely implemented. It serves as exchange format for algebra systems (Mathematica, Maple) and with the recent adoption of MathML 3 in HTML5, it is also available for including formulas in HTML documents. (Only for the purpose of display, the same way as math in LaTeX; browsers, unlike algebra systems, are not expected to evaluate formula).

MathML 3 is regarded as very stable. It is included in HTML5.

MathML is also used in digital publishing, both for publishing to electronic media (e.g., e-books, such as those in EPUB3) and as part of XML-based processing pipelines for publishing to paper.

In the public service sector, there is a large user base in the education and in the scientific, engineering and research areas. Credibility

  1. What is the extent and use of conformance tests or means of implementation verification?
  2. What provisions does the specification have for testability?

Requirements in W3C specifications are designed to be testable. The specification also provides a clear Conformance section that defines the conditions for meeting these requirements. See the Testability section in this document.

7.4.3 Alignment

The specification should be aligned with existing JTC 1 standards or ongoing work and thus complement existing standards, architectures and style guides. Any conflicts with existing standards, architectures and style guides should be made clear and justified. Relationship to Existing Standards

  1. What international standards are closely related to the specification and how?
  2. To what international standards is the proposed specification a natural extension?
  3. How is the specification related to emerging and ongoing JTC 1 projects?

W3C MathML 3.0 relates but does not overlap or conflict with international standards on Mathematic in software and ICT.

Interested parties in the standardization space include: ISO/IEC JTC1/SC34, dealing with for document formats (OpenDocument, SGML, DSSSL and HyTime, HTML, XML entities for math).

MathML uses the following from ISO/IEC:

And MathML is used by: Adaptability and Migration

  1. What adaptations (migrations) of either the specification or international standards would improve the relationship between the specification and international standards?
  2. How much flexibility does the PAS submitter have ?
  3. What are the longer-range plans for new/evolving specifications?

W3C Recommendations are developed through a rigorous, iterative process and are the result of many comments from different stakeholders throughout the different development stages. MathML 3 is the result of carefully aligned requirements and consensus-based resolutions.

W3C intends to provide maintenance as needed for this submission by providing complete replacement documents for subsequent PAS Transposition ballot approval. Given the stability, market acceptance, and unique nature of MathML 3.0, there is no identified need for adaptations at this time. Future updates, revisions, or development of the specification should continue through the respective W3C Groups with the necessary expertise and experience for leading work in this particular domain, in parallel with the complementary, e.g. CSS profile, work. Likewise, translations, errata management, and other maintenance and support efforts should continue through the corresponding proven W3C processes.

While MathML is considered a stable and mature specification into the foreseeable future, W3C welcomes participation and input from JTC 1 country delegations into potential future work that may be needed. Substitution and Replacement

  1. What needs exist, if any, to replace an existing international standard? Rationale?
  2. What is the need and feasibility of using only a portion of the specification as an international standard?
  3. What portions, if any, of the specification do not belong in an international standard (e.g. too implementation specific)?

MathML 3 does not replace or conflict with existing international standards but complements some of them.

W3C licensing and intellectual property rights do not permit the extraction of portions of W3C specifications, as this would likely change their meaning or otherwise threaten interoperability. Document Format and Style

  1. What plans, if any, exist to conform to JTC 1 document styles?

The production of all W3C specifications is driven by a set of W3C publication tools, templates, and rules that support accessibility and broad usability across different environments. W3C is capable of generating multiple output formats using our specification sources (e.g. HTML, PDF, plain text.) The intended publication mode for this submission would be to retain the essential aspects of the W3C publication.

Regarding final names and numbers in the ISO/IEC style, the table in the introduction section above provides the requested title and number (40314) for W3C MathML 3.0 (using the assigned 40xxx numbering base allocated to W3C).

7.4.4 Maintenance

Have changes occurred on the subject of maintenance since the PAS Submitter application or renewal or, for a Fast Track, since the most recent submission of the standard? (This is the place to mention any particular agreement reached with a JTC 1 entity).

(This is a new section in revised JTC 1 PAS procedures in 2013.)

The answer is No. W3C intends to continue the maintenance of its completed and approved specifications . W3C will be willing to participate in the five years review as appropriate, as well as in the JTC 1 process to handle defect reports which may be submitted via National Bodies.

Editors Daniel Dardailler
last updated $Id: mathml3-er.htm,v 1.50 2014-06-19 08:52:43 danield Exp $