Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use fence/separator operator properties in MathML Core? #209

Closed
fred-wang opened this issue May 6, 2020 · 7 comments
Closed

Use fence/separator operator properties in MathML Core? #209

fred-wang opened this issue May 6, 2020 · 7 comments
Assignees
Labels
MathML 4 Issues affecting the MathML 4 specification need specification update Issues requiring specification changes

Comments

@fred-wang
Copy link

cc @joanmarie @asurkov

They are currently mentioned here:
https://mathml-refresh.github.io/mathml-core/#operator-fence-separator-or-accent-mo
https://mathml-refresh.github.io/mathml-core/#dictionary-based-attributes
https://mathml-refresh.github.io/mathml-core/#operator-dictionary

However, these are not used at all for layout purpose.

They should be keep in MathML Core if they are necessary for assistive technologies (and so browsers must expose them via their accessibility tree). I believe Gecko and WebKit only expose them for NSAccessibility but I'm not even sure that's used by VoiceOver. In Chromium this is an open question at https://bugs.chromium.org/p/chromium/issues/detail?id=1042665

They are also discussions elsewhere about how to expose more math semantics, so maybe any method decided there could apply for fence/separator too instead of MathML-specific attributes. But that seems out of the scope of MathML Core.

@fred-wang fred-wang added MathML Core Issues affecting the MathML Core specification MathML 4 Issues affecting the MathML 4 specification need resolution Issues needing resolution at MathML Refresh CG meeting need specification update Issues requiring specification changes labels May 6, 2020
@fred-wang
Copy link
Author

Multichar entries of the operator dictionary are now handled by https://mathml-refresh.github.io/mathml-core/#operator-dictionary-compact

For the record, current estimated size is 770*2 = 1540 bytes. The cost of supporting fence/separator is significant enough, (65+3)*2 = 136 bytes so 9% of the dictionary size.

Probably not a big deal, rendering engines won't implement this anyway. This would only be needed by browsers if the AT really need them and if that can't be done by other means than dictionary-based attributes.

@fred-wang
Copy link
Author

I think there were mistakes in my previous script. Anyway, most recent estimate can be found in the spec.

@NSoiffer
Copy link
Contributor

For what it is worth, MathPlayer does not make use of either of those properties to speak or navigate math.

On the other hand, chrome is running at about 1,500,000,000 bytes right now on my computer; worrying about 136 bytes seems like a complete waste of time.

@fred-wang
Copy link
Author

On the other hand, chrome is running at about 1,500,000,000 bytes right now on my computer; worrying about 136 bytes seems like a complete waste of time.

This is the important part from my previous comment: "rendering engines won't implement this anyway. This would only be needed by browsers if the AT really need them and if that can't be done by other means than dictionary-based attributes.". So I expect this is something to be answered by a11y team / AT developers, not something decided by the CG. If they don't need it, we should just remove this from MathML Core.

fred-wang added a commit to w3c/mathml-core that referenced this issue May 21, 2020
…ator attributes. Instead a note referring mentions the tables. Also make text "attributes without observable behaviors" more consistent.

w3c/mathml#209
@fred-wang
Copy link
Author

I removed any mention on how to determine the default values of the fence and separator properties, since they are not currently used. Instead, the specification now only says it does not define any observable behavior for them (similar to what is done for maction and semantics attributes) and contains a note to suggest tables: https://mathml-refresh.github.io/mathml-core/#dfn-fence

If it turns out a11y team / AT developers need them, this can be easily reverted since the logic is still there.

@fred-wang fred-wang changed the title Remove fence/separator operator properties from MathML Core? Use fence/separator operator properties in MathML Core? May 22, 2020
@NSoiffer
Copy link
Contributor

NSoiffer commented Aug 3, 2020

At the July 27 meeting, we resolved to remove fence/separator from core. More consideration was deemed needed before removing from full.

@NSoiffer NSoiffer removed the need resolution Issues needing resolution at MathML Refresh CG meeting label Aug 3, 2020
@NSoiffer NSoiffer removed the MathML Core Issues affecting the MathML Core specification label Jun 29, 2021
@davidcarlisle
Copy link
Collaborator

davidcarlisle commented Aug 22, 2024

fence and separator attributes have been dropped from full in chapter 3 by PR #500 keep this issue open a little longer need updates to:

  • Update Changes appendix
  • Move the attributes to the legacy schema

@davidcarlisle davidcarlisle self-assigned this Aug 22, 2024
github-actions bot added a commit that referenced this issue Aug 23, 2024
SHA: fdea98d
Reason: push, by davidcarlisle

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
MathML 4 Issues affecting the MathML 4 specification need specification update Issues requiring specification changes
Projects
None yet
Development

No branches or pull requests

3 participants