MathML

Материал из Википедии — свободной энциклопедии
Это старая версия этой страницы, сохранённая Bogdan Yurov (обсуждение | вклад) в 21:22, 28 октября 2013 (Поддержка программного обеспечения). Она может серьёзно отличаться от текущей версии.
Перейти к навигации Перейти к поиску
(MathML) Mathematical Markup Language
Тип Компьютерная вёрстка
Разработчик Консорциум W3C
Написана на Изначально WEB
Первый выпуск 1978
Последняя версия
Состояние Поддерживается
Сайт W3C MathML
Логотип Викисклада Медиафайлы на Викискладе

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

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

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

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

Пример

В 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>
        <mo>±</mo>
      </mrow>
      <msqrt>
        <mrow>
          <msup>
            <mi>b</mi>
            <mn>2</mn>
          </msup>
          <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, включая конвертеры между TeX и MathML.

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

  • 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]

Многие другие браузеры поддерживают этот формат при установке соответствующих плагинов.

Чтобы в браузере отображалось выражение MathML, внедрённое в документ XHTML, нужно:

  1. Использовать браузер, поддерживающий MathML.
  2. DOCTYPE документа должен быть вида:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1 plus MathML 2.0//EN" "http://www.w3.org/Math/DTD/mathml2/xhtml-math11-f.dtd">
  3. Тег "html" должен содержать пространство имён xmlns="http://www.w3.org/1999/xhtml"
  4. Файл документа должен быть обязательно с расширением .xhtml или .xml
  5. Теги "math" должны содержать пространство имён http://www.w3.org/1998/Math/MathML
  6. Нужно использовать Presentation Markup, т.к. с отображением Content Markup пока проблемы.

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

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

См. также

Примечания

Ссылки