MathML <mo> 标记包裹小数点

MCT*_*r17 2 html mathml

我正在使用我们的学习管理系统 (LMS) 中内置的 MathML 编辑器,并注意到一些奇怪的东西。当我输入浮点数时,它会用<mo>标签包裹小数点。

例如,我希望1.2输出为:

<mn>1.2</mn>
Run Code Online (Sandbox Code Playgroud)

但是,编辑器输出:

<mn>1</mn>
<mo>.</mo>
<mn>2</mn>
Run Code Online (Sandbox Code Playgroud)

我很好奇是否有人可以确认这两个输出相等或不相等,以便我知道是否请求修复。

Pet*_*ger 5

我认为有几个方面。

它们在视觉上会呈现相同的效果吗?

否。大多数渲染器会在句点周围添加空格,因为MathML 运算符字典指定.为中缀运算符。

1.2在 MathML 中首选的写作方式是什么?

是的。 <mn>1.2</mn>. 请参阅规范中mn示例

它们在语义上相同吗?

这大概是见仁见智了。我会争辩说他们不是。使用最少的上下文(例如,lang=en某处),很清楚什么<mn>1.2</mn>意思,而<mn>1</mn><mo>.</mo><mn>2</mn>更通用(特别是,因为它违背了规范的建议)。

AT 会为非视觉用户呈现相同的效果吗?

例如MathPlayer(JAWS什么,NVDA,海豚使用)将语音<mn>1.2</mn>为“一分二”,并<mn>1</mn><mo>.</mo><mn>2</mn>为“1点二”。ChromeVox 将后者称为“一期二”。