MathML
MathML (от англ. Шаблон:Lang-en2 — язык математической разметки) — язык разметки на основе XML для представления математических символов и формул в веб-документах. Разрабатывается и пропагандируется математической группой W3C.
MathML учитывает не только представление, но и смысловое содержание элементов формул, в связи с чем разделён на две ветви — Presentation MathML и Content MathML. Также разрабатывается система разметки математической семантики OpenMath, призванная дополнить MathML смысловой информацией.
История версий
MathML был предложен в 1995 году в виде тега <math> как часть стандарта HTML версии 3. Однако этот стандарт оказался нереализованным в браузерах, и MathML не нашлось места в стандарте HTML 3.2<ref name=autogenerated1 />.
Версии:
- июль 1999 года — версия 1.02
- февраль 2001 года — версия 2.0
- октябрь 2003 года — вторая редакция версии 2.0
- октябрь 2010 года — версия 3.0
В HTML5 MathML стал частью языка разметки<ref>http://www.w3.org/TR/html5/embedded-content-0.html#mathml Шаблон:Webarchive 4.8.15 MathML]</ref><ref name=autogenerated1 />.
Пример
В [[TeX|Шаблон:TeX]] описание: <source lang="latex">x = \frac{-b \pm \sqrt{b^2 - 4ac}}{2a}</source>
используется для представления формулы:
- <math>x = \frac{-b \pm \sqrt{b^2 - 4ac}}{2a}</math>
Эта же формула с помощью MathML: <source lang="xml"> <math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mi>x</mi> <mo>=</mo>
<mrow>
<mfrac>
<mrow>
<mo>−</mo>
<mi>b</mi>
<mo>±</mo>
<msqrt>
<msup><mi>b</mi><mn>2</mn></msup>
<mo>−</mo>
<mn>4</mn><mi>a</mi><mi>c</mi>
</msqrt>
</mrow>
<mrow> <mn>2</mn><mi>a</mi> </mrow>
</mfrac>
</mrow>
<mtext>.</mtext>
</math> </source>
XML-структура MathML обеспечивает широкую область использования и позволяет быстро отображать формулы в приложениях, таких как браузеры, а также легко интерпретировать их значения в математических программных продуктах.
Поддержка программного обеспечения
Информация от программных продуктов о поддержке MathML не всегда соответствует ожиданиям, поскольку, как правило, не указывается о версии поддерживаемого MathML и полнота поддержки.
Существует множество утилит для преобразования математических выражений в MathML, включая конвертеры между TeX и MathML.
Язык разметки MathML поддерживается многими современными браузерами<ref name="autogenerated2">Шаблон:Cite web</ref>:
- Mozilla Firefox поддерживает MathML 2.0 начиная с версии Firefox 1.5; поддержка MathML 3.0 — в разработке;
- Opera частично<ref name=autogenerated2 /> поддерживала MathML начиная с версии 9.5 (сборки 9656) (от 16 ноября 2007), но после перехода на WebKit поддержка была прекращена;
- Google Chrome официально поддерживал MathML в версии 2.4<ref>Шаблон:Cite web</ref>, но позже поддержка была прекращена.<ref>Шаблон:Cite web</ref>. Начиная с версии Chrome 109 поддержка вновь появилась.<ref>Шаблон:Cite web</ref>
Многие другие браузеры поддерживают этот формат при установке соответствующих плагинов.
MathJax позволяет отрисовывать MathML-формулы в браузерах, не имеющих родной поддержки формата, при помощи JavaScript.
Кроме того, MathML поддерживается основными офисными программами, такими как Microsoft Word и OpenOffice.org, а также математическими программными продуктами, например, Mathematica, Maple.
В Windows 7 реализована поддержка рукописного ввода формул. Результат распознавания представлен в виде выражения MathML<ref>Шаблон:Cite web</ref>.
Примечания
Литература
Ссылки
- MathML на сайте W3C — спецификации, FAQ, список поддерживаемого ПО
- MathML в Mozilla
- Мануал для MathML Presentation
- Поддержка MathML браузерами
- MathPlayer— плагин для Internet Explorer.
- Стандарт OpenMath
Ошибка скрипта: Модуля «Unsubst» не существует.
Шаблон:Языки разметки документов Шаблон:Стандарты W3C К:Приложения обобщённых языков разметки