数学标记语言,是一种基于
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不但规定数学式子的表现,而且也规定数学数字的含义(前者叫做“Presentation MathML”,后者叫做“Content MathML”)。由于数学式子的意义与表现是分离开的,如何交流内容留给了用户。
内容内涵的MathML,侧重于表达式的语义,而不是布局。中间的 Content MathML 是用
元素来表示功能的具体应用。被应用的功能的长子元素放在下,并且它的操作数或参数是剩下来的子元素, Content MathML 只有少许属性。MathML由两种基本独立的标记组成:一种是
表现型标记(Presentation Markup),用来描述数学公式的层次结构;另一种是内容型
标记(Content Markup),用来描述数学公式的逻辑内容主要应用的是表现型标记,用它可以精确地控制一个表达式的外观,如在浏览器中的显示、或在打印纸上的打印样式等。在MathML2.0规范中,表现型标记共有31个、50种属性用于数学符号的编码。