Intent to Experiment: MathML columnspan/rowspan attributes on <mtd> element

68 views
Skip to first unread message

Frédéric Wang

unread,
Jul 12, 2023, 4:21:49 AM7/12/23
to blink-dev

Contact emails

fw...@chromium.org

Explainer

None

Specification

https://w3c.github.io/mathml-core/#entry-in-table-or-matrix-mtd

Summary

Implement attributes to specify the number of columns and rows that a MathML table cell is to span. This is similar to HTML colspan/rowspan attributes and does not have equivalent CSS properties.



Blink component

Blink>MathML

TAG review

None

TAG review status

Not applicable

Risks



Interoperability and Compatibility



Gecko: Shipped/Shipping (https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mtd#browser_compatibility) Mozilla positioned negatively about renaming https://github.com/mozilla/standards-positions/issues/74

WebKit: Shipped/Shipping (https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mtd#browser_compatibility)

Web developers: Positive

Other signals:

WebView application risks

Does this intent deprecate or change behavior of existing APIs, such that it has potentially high risk for Android WebView-based applications?



Goals for experimentation



Ongoing technical constraints



Debuggability



Will this feature be supported on all six Blink platforms (Windows, Mac, Linux, Chrome OS, Android, and Android WebView)?

Yes

Is this feature fully tested by web-platform-tests?

Tests are added in https://chromium-review.googlesource.com/c/chromium/src/+/4061476 However, advanced parsing such as checking the max limits 1000 and 65534 defined in HTML is a bit tedious as MathML does not have an IDL for tables yet ( https://github.com/w3c/mathml-core/issues/166#issuecomment-1411721093 ) so for now they are written as internal tests.

Flag name on chrome://flags



Finch feature name



Non-finch justification

None

Requires code in //chrome?

False

Estimated milestones

Shipping on desktop 117
Shipping on Android 117
Shipping on WebView 117


Link to entry on the Chrome Platform Status

https://chromestatus.com/feature/5157467960377344

Links to previous Intent discussions

-- 
Frédéric Wang

Frédéric Wang

unread,
Jul 12, 2023, 4:31:27 AM7/12/23
to blin...@chromium.org

Hello,

This is actually an intent to ship (sorry for sending email with the wrong title).

To summarize a bit conversations, columnspan/rowspan was something that was requested by web developers and is used in existing documents. We cannot just say "use CSS instead" as they are no equivalent properties.

Initially, we wanted to have this in the initial MathML implementation but things were postponed because we needed to decide between "make things more compatible with HTML" (i.e. colspan/rowspan names) or "make things backward compatible with MathML3" (i.e. columnspan/rowspan names). Given the latter is already implemented by Firefox/WebKit and used in existing documents and tools we decided to go with the latter (Mozilla also positioned negatively about changing the name).


-------------


Contact emails

fw...@chromium.org

Explainer

None

Specification

https://w3c.github.io/mathml-core/#entry-in-table-or-matrix-mtd

Summary

Implement attributes to specify the number of columns and rows that a MathML table cell is to span. This is similar to HTML colspan/rowspan attributes and does not have equivalent CSS properties.



Blink component

Blink>MathML

TAG review

None

TAG review status

Not applicable

Risks



Interoperability and Compatibility



Gecko: Shipped/Shipping (https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mtd#browser_compatibility) Mozilla positioned negatively about renaming https://github.com/mozilla/standards-positions/issues/74

WebKit: Shipped/Shipping (https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mtd#browser_compatibility)

Web developers: Positive

Other signals:

WebView application risks

Does this intent deprecate or change behavior of existing APIs, such that it has potentially high risk for Android WebView-based applications?



Debuggability



Will this feature be supported on all six Blink platforms (Windows, Mac, Linux, Chrome OS, Android, and Android WebView)?

Yes

Is this feature fully tested by web-platform-tests?

Yes

Tests are added in https://chromium-review.googlesource.com/c/chromium/src/+/4061476 However, advanced parsing such as checking the max limits 1000 and 65534 defined in HTML is a bit tedious as MathML does not have an IDL for tables yet ( https://github.com/w3c/mathml-core/issues/166#issuecomment-1411721093 ) so for now they are written as internal tests.

Flag name on chrome://flags



Finch feature name



Non-finch justification

None

Requires code in //chrome?

False

Estimated milestones

Shipping on desktop 117
Shipping on Android 117
Shipping on WebView 117


Anticipated spec changes

Open questions about a feature may be a source of future web compat or interop issues. Please list open issues (e.g. links to known github issues in the project for the feature specification) whose resolution may introduce web compat/interop risk (e.g., changing to naming or structure of the API in a non-backward-compatible way).



Link to entry on the Chrome Platform Status

https://chromestatus.com/feature/5157467960377344

Links to previous Intent discussions

Mike Taylor

unread,
Jul 12, 2023, 11:21:53 AM7/12/23
to Frédéric Wang, blin...@chromium.org

LGTM1 - seems like an obvious interop win.

On 7/12/23 4:31 AM, Frédéric Wang wrote:

Hello,

This is actually an intent to ship (sorry for sending email with the wrong title).

To summarize a bit conversations, columnspan/rowspan was something that was requested by web developers and is used in existing documents. We cannot just say "use CSS instead" as they are no equivalent properties.

Initially, we wanted to have this in the initial MathML implementation but things were postponed because we needed to decide between "make things more compatible with HTML" (i.e. colspan/rowspan names) or "make things backward compatible with MathML3" (i.e. columnspan/rowspan names). Given the latter is already implemented by Firefox/WebKit and used in existing documents and tools we decided to go with the latter (Mozilla also positioned negatively about changing the name).


-------------


Contact emails

fw...@chromium.org

Explainer

None

Specification

https://w3c.github.io/mathml-core/#entry-in-table-or-matrix-mtd

Summary

Implement attributes to specify the number of columns and rows that a MathML table cell is to span. This is similar to HTML colspan/rowspan attributes and does not have equivalent CSS properties.



Blink component

Blink>MathML

TAG review

None

TAG review status

Not applicable

Risks



Interoperability and Compatibility



Gecko: Shipped/Shipping (https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mtd#browser_compatibility) Mozilla positioned negatively about renaming https://github.com/mozilla/standards-positions/issues/74
--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/c3ada6e8-03f7-57e6-7b63-9ccf3d9a4440%40igalia.com.

Yoav Weiss

unread,
Jul 12, 2023, 11:26:40 AM7/12/23
to Mike Taylor, Frédéric Wang, blin...@chromium.org

Daniel Bratell

unread,
Jul 12, 2023, 12:08:16 PM7/12/23
to Yoav Weiss, Mike Taylor, Frédéric Wang, blin...@chromium.org
Reply all
Reply to author
Forward
0 new messages