首页 | 主题 | 图库 | 问答 | 文摘 | 原创 | 百科

历史 | 地理 | 人物 | 艺术 | 体育 | 科学 | 音乐 | 电影 | 信息技术 | 世界遗产

 开放、中立,源自维基百科

个人工具


数学置标语言

维库,知识与思想的自由文库

(重定向自MathML)
跳转到: 导航, 搜索

数学置标语言Mathematical Markup LanguageMathML),是一种基于XML的标准,用来在互联网上书写数学符号和公式的置标语言。它是由W3C的数学工作组提出的。语言规格1.01版于1999年7月公布,2.0版于2001年2月出现。W3C的数学工作组之后又在2003年10月发布了MathML的最终版——2.0第二版。

由于数学符号和公式的结构复杂且符号与符号之间存在多种逻辑关系,MathML的格式十分繁琐。因此,大多数人都不会去手写MathML,而是利用其它的工具来编写,其中包括TeX到MathML的转换器。在现在几个主要的网页浏览器中,最新版的MozillaMozilla FirefoxNetscape Navigator都已经对MathML提供直接的支持。微软Internet Explorer在安装了MathPlayer插件后也可以识别MathML。此外,MathML还得到了一些办公软件的支持,如OpenOffice.orgMicrosoft Office

[编辑] 结构和句法

MathML十分类似HTML,但非常繁琐。它继承了角括号和双标签(<标签>内容</标签>)的用法。

例如,书写以下的公式(LaTeX):

x = \frac{-b \pm \sqrt{b^2 - 4ac}}{2a}


若用LaTeX,只需要一行代码:

x = \frac{-b \pm \sqrt{b^2 - 4ac}}{2a}

但用MathML,则需要:

<mrow>
  <mi>x</mi>
  <mo>=</mo>
  <mfrac>
    <mrow>
      <mrow>
        <mo>-</mo>
        <mi>b</mi>
      </mrow>
      <mo>&PlusMinus;</mo>
      <msqrt>
        <mrow>
          <msup>
            <mi>b</mi>
            <mn>2</mn>
          </msup>
          <mo>-</mo>
          <mrow>
            <mn>4</mn>
            <mo>&InvisibleTimes;</mo>
            <mi>a</mi>
            <mo>&InvisibleTimes;</mo>
            <mi>c</mi>
          </mrow>
        </mrow>
      </msqrt>
    </mrow>
    <mrow>
      <mn>2</mn>
      <mo>&InvisibleTimes;</mo>
      <mi>a</mi>
    </mrow>
  </mfrac>
</mrow>

虽然如此,由于MathML是严格遵守XML规范的语言,很多已经运用XML的软件可以轻易的读懂MathML。这也是这种语言的制作者W3C组织宁可选择复杂的句法也要和标准一致的一个重要原因。

[编辑] 参看

[编辑] 外部链接

其它语言
AD Links