Re: [w3ctag/design-reviews] Review MathML (#313)

During TPAC discussions, it appeared that not everybody in the TAG group was aware of recent MathML activities. Here is a quick summary:

* As @littledan  mentioned, a MathML in HTML5 implementation note has been available for some time in order to simplify and improve the MathML 3 specification [1]. In particular, it is accurate enough to write cross-compatible WPT tests. After suggestion by Youenn Fablet (Apple) these tests were merged into the main WPT repository [2]. Two years ago, we (Igalia) sent various ideas for a future version of MathML to the Math WG mailing list. However, the Math WG has been inactive since that time.

* In 2014, Microsoft officially integrated Word's MATH table into the OpenType standard [3]. This has been used for the MathML in HTML5 implementation note and is supported by Mozilla and WebKit's MathML implementations. It is provided by various math fonts [4].

* MathML has shipped in Mozilla browsers since 2002 [5]. Recently, Emilio Cobos (Mozilla) has done some minimal maintenance of the code, especially to make it work with Stylo (Servo's CSS style system). At the web engines hackfest, we mentioned ideas to simplify Mozilla's implementation [6].

* WebKit has supported MathML since 2010 [7]. The implementation had some design issues and was only enabled for a short time in Chromium due to security and maintenance concerns (the code was completely removed after Blink fork). Two years ago, Igalia worked on a complete refactoring of WebKit's MathML code based on the MathML in HTML5 implementation note, making making these concerns obsolete [8].

* A bit more that one year ago, Igalia and Google's layout team agreed on a plan to implement MathML in Chromium, based on LayoutNG [9]. Then we have been waiting for LayoutNG to be stable enough (from Google's feedback, that should be the case very soon now) and in parallel have looked for sponsors for this project. One is already public: NISO announced they got a grant to support this effort [10].

We plan to announce and launch the MathML in Chromium project and to give further details very soon, after internal discussions. However, one of the idea will be to pursue this effort to get a core subset of MathML that is compatible with web engines' implementations and test frameworks. This will allow to keep Chromium's implementation aligned with the long-term Houdini goals (we plan to implement new APIs e.g. for math fonts), to clean up WebKit/Gecko implementations and maybe help Edge developers.

I hope this clarifies MathML status and Igalia's plan.

[1] http://www.mathml-association.org/MathMLinHTML5/
[2] http://w3c-test.org/mathml/
[3] https://blogs.msdn.microsoft.com/murrays/2014/04/27/opentype-math-tables/
[4] https://developer.mozilla.org/en-US/docs/Mozilla/MathML_Project/Fonts#Fonts_with_a_MATH_table
[5] http://www.mozillazine.org/articles/article2278.html
[6] https://bugzilla.mozilla.org/show_bug.cgi?id=1495813
[7] https://webkit.org/blog/1366/announcing%e2%80%a6mathml/
[8] https://webkit.org/blog/6803/improvements-in-mathml-rendering/ and https://trac.webkit.org/wiki/MathML/Early_2016_Refactoring
[9] https://bugs.chromium.org/p/chromium/issues/detail?id=6606#c61
[10] https://www.niso.org/niso-io/newsline/2018/08/newsline-august-2018


-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/w3ctag/design-reviews/issues/313#issuecomment-434352168

Received on Tuesday, 30 October 2018 15:45:19 UTC