MathML

MathML (от англ. Mathematical Markup Language — «язык математической разметки») — это язык разметки на основе XML для представления математических символов и формул в документах WWW. MathML рекомендован математической группой W3C.

(MathML) Mathematical Markup Language
Тип Компьютерная вёрстка
Разработчик Консорциум W3C
Написана на Изначально WEB
Первый выпуск 1996[1]
Состояние Поддерживается
Сайт w3.org/Math/
 Медиафайлы на Викискладе

MathML рассматривает не только представление, но и смысл элементов формулы. Также разрабатывается система разметки математической семантики, призванная дополнить MathML. Она называется OpenMath.

MathML имеет 2 версии — Presentation MathML и Content MathML.

История версий

MathML был предложен в 1995 году в виде тега <math> как часть стандарта HTML 3. Однако, этот стандарт оказался нереализованным в браузерах, и MathML не нашлось места в стандарте HTML 3.2[1].

В HTML5 MathML стал частью языка разметки[2][1].

Пример

В TeX описание

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

используется для представления формулы

Ниже приведено описание этой формулы с помощью MathML:

<?xml version="1.0" encoding="UTF-8"?>
<math xmlns="http://www.w3.org/1998/Math/MathML">
 <mrow>
  <mi>x</mi>
  <mo>=</mo>
  <mfrac>
    <mrow>
      <mrow>
        <mo>-</mo>
        <mi>b</mi>
      </mrow>
      <mo>±</mo>
      <msqrt>
        <mrow>
          <mrow>
            <mi>b</mi>
            <msup>
              <mn>2</mn>
            </msup>
          </mrow>
          <mo>-</mo>
          <mrow>
            <mn>4</mn>
            <mi>a</mi>
            <mi>c</mi>
          </mrow>
        </mrow>
      </msqrt>
    </mrow>
    <mrow>
      <mn>2</mn>
      <mi>a</mi>
    </mrow>
  </mfrac>
 </mrow>
</math>

XML-структура MathML обеспечивает широкую область использования и позволяет быстро отображать формулы в приложениях, таких как браузеры, а также легко интерпретировать их значения в математических программных продуктах.

Поддержка программного обеспечения

Следует с осторожностью относиться к информации о том, что программный продукт поддерживает MathML, поскольку, как правило, не сообщается о версии поддерживаемого MathML.

Существует множество утилит для преобразования математических выражений в MathML, включая конвертеры между TeX и MathML.

Язык разметки MathML поддерживается многими современными браузерами[3]:

  • Mozilla Firefox поддерживает MathML 2.0, начиная с версии Firefox 1.5. В настоящее время в разработке - поддержка MathML 3.0.
  • Opera частично[3] поддерживала MathML начиная с версии 9.5 (сборки 9656) (от 16 ноября 2007), но после перехода на WebKit поддержка была прекращена.

Google Chrome официально поддерживал MathML в версии 24[4], но позже поддержка была прекращена.[5] Многие другие браузеры поддерживают этот формат при установке соответствующих плагинов.

MathJax позволяет поддерживать MathML в браузерах, не имеющих родной поддержки формата, при помощи JavaScript.

Кроме того, MathML поддерживается основными офисными программами, такими как Microsoft Word и OpenOffice.org, а также математическими программными продуктами, например, Mathematica, Maple.

В Windows 7 реализована поддержка рукописного ввода формул. Результат распознавания представлен в виде выражения MathML[6].

Примечания

Литература

  • Kleinfeld, S. MathML for Publishers // HTML5 for Publishers. — O'Reilly Media, 2011. — 56 p. — ISBN 9781449314613.

Ссылки

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.