Hi MathJax Team,
We are migrating from MathJax 3.1.2 to 4.1.1 and observed that <mfenced> elements in our input MathML are rendered differently.
In MathJax 3.x, <mfenced> resulted in <mjx-mfenced> in the output. However, in MathJax 4.1.1, the same input is converted into <mjx-mrow> with data-semantic-type="fenced".
This change affects our pipeline, as we currently rely on the rendered structure for downstream processing and comparison.
Screenshot for more information:
version 3.x

version 4.x

Input xml received :

out xml received :

We would like to clarify the following:
<mfenced> from being converted to <mrow> in MathJax v4?We understand that MathJax output is primarily intended for rendering, but we would appreciate guidance on handling this use case.
Thank you for your support.
Thanks & Regards,
Akhil Joshi
We are migrating from MathJax 3.1.2 to 4.1.1 and observed that<mfenced>elements in our input MathML are rendered differently.In MathJax 3.x,<mfenced>resulted in<mjx-mfenced>in the output. However, in MathJax 4.1.1, the same input is converted into<mjx-mrow>withdata-semantic-type="fenced".
We would like to clarify the following:
- Is there any way to prevent
<mfenced>from being converted to<mrow>in MathJax v4?
- Is this transformation related to semantic enrichment, or is it part of the core rendering process?
- What is the recommended approach for maintaining structural consistency when migrating from v3 to v4?