数学标记语言,是一种基于XML(标准通用标记语言的子集)的标准,用来在互联网上书写数学符号和公式的置标语言。
语言介绍数学置标语言,是一种基于XML的标准,用来在互联网上书写数学符号和公式的置标语言。它是由万维网联盟的数学工作组提出的。语言规格1.01版于1999年7月公布,2.0版于2001年2月出现。万维网联盟的数学工作组在2003年10月发布了MathML 2.0的第二版,之后又在2010年10月发布了MathML 3.0。
由于数学符号和公式的结构复杂且符号与符号之间存在多种逻辑关系,MathML的格式十分繁琐。因此,大多数人都不会去手写MathML,而是利用其它的工具来编写,其中包括TeX到MathML的转换器。主要的网页浏览器中,最新版的Mozilla、Mozilla Firefox和Netscape Navigator都已经对MathML提供直接的支持,但Chrome却又停止支持,原因是Google出于安全性的考虑。微软的Internet Explorer在安装了MathPlayer插件后也可以识别MathML。此外,MathML还得到了一些办公软件的支持,如openoffice .org和Microsoft Office。
MathML是受XML的启发在万维网联盟数学工作组的具体组织下产生的,作为XML定义的一种应用,它用标记的形式来表示数学表达式。用MathML形式 来描述数学表达式,不仅可以明确地表达数学内容,而且可以在Web的其它应用程序中实现再利用和转换。MathML 标记的递归性和树状结构使得它在计算机程序的实现上更方便、简单。MathML 使用文本的形式来描述数学表达式的树形结构,克服了传统的Web中使用图片表达数学公式的缺点。
历史它是由W3C的数学工作组提出的。语言规格1.01版于1999年7月公布,2.0版于2001年2月出现。W3C的数学工作组在2003年10月发布了MathML 2.0的第二版, 之后又在2010年10月发布了MathML 3.0.
结构与语法MathML十分类似HTML,但非常繁琐。它继承了角括号和双标签(内容)的用法。
MathML不但规定数学式子的表现,而且也规定数学数字的含义(前者叫做“Presentation MathML”,后者叫做“Content MathML”)。由于数学式子的意义与表现是分离开的,如何交流内容留给了用户。
Presentation MathML
表现形式的MathML,侧重于如何显示一个数学式子,大约有30个元素。元素名字全部以m开头。
Content MathML
内容内涵的MathML,侧重于表达式的语义,而不是布局。中间的 Content MathML 是用元素来表示功能的具体应用。被应用的功能的长子元素放在下,并且它的操作数或参数是剩下来的子元素, Content MathML 只有少许属性。1
标记类型MathML由两种基本独立的标记组成:一种是表现型标记(Presentation Markup),用来描述数学公式的层次结构;另一种是内容型标记(Content Markup),用来描述数学公式的逻辑内容主要应用的是表现型标记,用它可以精确地控制一个表达式的外观,如在浏览器中的显示、或在打印纸上的打印样式等。在MathML2.0规范中,表现型标记共有31个、50种属性用于数学符号的编码。2
本词条内容贡献者为:
任毅如 - 副教授 - 湖南大学