The W3C has released the Mathematical Markup Language (MathML) Version 2.0 specfication as a W3C Recommendation, together with an implementation and interoperability report, several testimonials from implementation teams, and a press release. "MathML 2.0 consists of a number of XML tags which can be used to mark up an equation in terms of its presentation and also its semantics. As a result, MathML 2.0 attempts to capture something of the meaning behind equations rather than concentrating entirely on how they are going to be formatted out on the screen. This is because mathematical equations are meaningful to many applications, independent of how they are rendered aurally or visually. MathML 2.0 is intended to facilitate the use and re-use of mathematical and scientific content on the Web, and for other applications such as computer algebra systems, print typesetting, and voice synthesizers. MathML can be used to encode both the presentation of mathematical notation for high-quality visual display, and mathematical content, for applications where the semantics plays more of a key role such as scientific software or voice synthesis."
Reference: W3C Recommendation 21-February-2001, edited by David Carlisle (NAG), Patrick Ion (Mathematical Reviews, American Mathematical Society), Robert Miner (Design Science, Inc.), and Nico Poppelier (Penta Scope). Principal authors include: Ron Ausbrooks, Stephen Buswell, Stéphane Dalmas, Stan Devitt, Angel Diaz, Roger Hunter, Bruce Smith, Neil Soiffer, Robert Sutor, Stephen Watt.
Abstract: "This specification defines the Mathematical Markup Language, or MathML. MathML is an XML application for describing mathematical notation and capturing both its structure and content. The goal of MathML is to enable mathematics to be served, received, and processed on the World Wide Web, just as HTML has enabled this functionality for text. This specification of the markup language MathML is intended primarily for a readership consisting of those who will be developing or implementing renderers or editors using it, or software that will communicate using MathML as a protocol for input or output. It is not a User's Guide but rather a reference document. This document begins with background information on mathematical notation, the problems it poses, and the philosophy underlying the solutions MathML 2.0 proposes. MathML can be used to encode both mathematical notation and mathematical content. About thirty of the MathML tags describe abstract notational structures, while another about one hundred and fifty provide a way of unambiguously specifying the intended meaning of an expression. Additional chapters discuss how the MathML content and presentation elements interact, and how MathML renderers might be implemented and should interact with browsers. Finally, this document addresses the issue of MathML characters and their relation to fonts. While MathML is human-readable, it is anticipated that, in all but the simplest cases, authors will use equation editors, conversion programs, and other specialized software tools to generate MathML. Several early versions of such MathML tools already exist, and a number of others, both freely available software and commercial products, are under development."
From the press release:
The World Wide Web Consortium (W3C) today announced the release of the Mathematical Markup Language (MathML) 2.0 as a W3C Recommendation. MathML 2.0, an XML application, provides encoding mathematical notation and content for use on the Web. A W3C Recommendation indicates that a specification is stable, contributes to Web interoperability, and has been reviewed by the W3C Membership, who are in favor of supporting its adoption by academic, industry, and research communities. MathML 2.0 builds on MathML 1 by extending the set of symbols and expressions, and through improved integration of other W3C technologies. Users of MathML 2.0 are now able to combine it with other W3C technologies to make more dynamic and varied content. Equations can be styled with Cascading Style Sheets (CSS), links can be associated to any math expression through XML Linking Language (XLink), and MathML elements can be seamlessly included in XHTML documents with namespaces. MathML2 also includes the MathML Document Object Model (MathML DOM), which provides a more convenient, and MathML-specific way to identify MathML components and enable any scripting language to manipulate it. The Math Working Group has produced test suites, and is already at work developing an XML Schema for MathML2, as well as a hybrid schema to combine XHTML and MathML 2.0. MathML 2.0 was produced by the W3C Math Working Group, an assembly of industry leaders and experts including the American Mathematical Society, Boeing Corporation, Universitá di Bologna, Design Science, IBM, MacKichan Technologies, MATH.EDU INC., Microsoft Corporation, NAG, Penta Scope, Stilo Technologies, Stratum Technical Services Ltd., Waterloo Maple Inc., University of Western Ontario, and Wolfram Research. MathML 2.0 is recognized as a mature and essential technology by both the mathematical community and software developers and manufacturers. Today, MathML 2.0 already has 17 known implementations and a variety of implementors and endorsers, as indicated in the testimonials page..."
- Mathematical Markup Language (MathML) Version 2.0
- "World Wide Web Consortium Issues MathML 2.0 as a W3C Recommendation. Scientists from Industry and Academia Produce Definitive Solution for Math on the Web."
- Testimonials for MathML 2.0 From The American Mathematical Society, Boeing, Design Science, IBM, Waterloo Maple, and Wolfram Research Inc.
- MathML 2.0 Implementation and Interoperability Report. Edited by Patrick Ion (MR / AMS).
- MathML 1.01
- W3C Math Working Group Charter
- W3C Math Working Group
- MathML Mailing List Archives
- XML DTD for MathML
- "Mathematical Markup Language (MathML)" - Main reference page.