Loading AI tools
З Вікіпедії, вільної енциклопедії
MathML (англ. Mathematical Markup Language, мова розмітки математичних виразів) — основана на XML мова розмітки для описання математичних виразів разом зі структурою та змістом. Застосовується для розміщення математичних формул на сторінках інтернету.
Стандарт мови розмітки MathML має статус рекомендації (англ. Recommendation) консорціуму W3C.
Версія 1.01 специфікації була оприлюднена в липні 1999, а версія 2.0 з'явилась в лютому 2001. У жовтні 2003, другу редакцію стандарту було опубліковано як остаточну версію. В липні 2006, консорціум W3C поставив завдання робочій групі з розробки MathML (англ. MathML Working Group) розробити стандарт MathML версії 3 до лютого 2008.
Розробка MathML відбувалась до остаточного затвердження стандарту Простору імен XML (англ. XML namespaces). Як такі, документи MathML часто не містять посилання на простір назв. Однак, рекомендованим простором назв для документів MathML є http://www.w3.org/1998/Math/MathML[1].
MathML містить інструкції не лише тільки для представлення, а і значення складових формули (остання має назву «англ. Content MathML»). Оскільки значення рівняння зберігається окремо від його представлення, спосіб відображення цього рівняння визначається користувачем (або програмою, що використовує користувач для перегляду формул). Наприклад, вебсторінки, що містять MathML можуть відображатись як звичайні сторінки в багатьох веббраузерах, а користувачі з вадами зору, використовуючи спеціальне програмне забезпечення, — читач екрана (англ. screen reader), можуть почути ці формули.
Відома формула розв'язків квадратного рівняння:
може бути записана в синтаксисі мови LaTeX так:
x=\frac{-b \pm \sqrt{b^2 - 4ac}}{2a}
в troff/eqn так:
x={-b +- sqrt{b sup 2 - 4ac}} over {2a}
в OpenOffice.org Math так (обидва варіанти правильні):
x={-b plusminus sqrt {b^2 - 4 ac}} over {2 a}
x={-b +- sqrt {b^2 - 4ac}} over {2a}
Наведене вище рівняння може бути записано в Presentation MathML як вираз, що складається із елементів описання представлення, таких як mfrac або msqrt:
<math xmlns="http://www.w3.org/1998/Math/MathML">
<mi>x</mi>
<mo>=</mo>
<mfrac>
<mrow>
<mrow>
<mo>-</mo>
<mi>b</mi>
</mrow>
<mo>±</mo>
<msqrt>
<msup>
<mi>b</mi>
<mn>2</mn>
</msup>
<mo>-</mo>
<mrow>
<mn>4</mn>
<mo>⁢</mo>
<mi>a</mi>
<mo>⁢</mo>
<mi>c</mi>
</mrow>
</msqrt>
</mrow>
<mrow>
<mn>2</mn>
<mo>⁢</mo>
<mi>a</mi>
</mrow>
</mfrac>
</math>
Елемент annotation можна використовувати для зберігання семантичної анотації у відмінному від XML форматі, наприклад, у форматі, що використовується редактором формул. Як варіант, рівняння може бути представлене в Content MathML у вигляді дерева, що складається із функціональних елементів подібних до apply (для застосування функції) або eq (для відношення рівності):
<math xmlns="http://www.w3.org/1998/Math/MathML">
<apply>
<eq/>
<ci>x</ci>
<apply>
<frac/>
<apply>
<csymbol definitionURL="http://www.example.com/mathops/multiops.html#plusminus">
<mo>±</mo>
</csymbol>
<apply>
<minus/>
<ci>b</ci>
</apply>
<apply>
<power/>
<apply>
<minus/>
<apply>
<power/>
<ci>b</ci>
<cn>2</cn>
</apply>
<apply>
<times/>
<cn>4</cn>
<ci>a</ci>
<ci>c</ci>
</apply>
</apply>
<cn>0.5</cn>
</apply>
</apply>
<apply>
<times/>
<cn>2</cn>
<ci>a</ci>
</apply>
</apply>
</apply>
<annotation encoding="TeX">
x=\frac{-b \pm \sqrt{b^2 - 4ac}}{2a}
</annotation>
<annotation encoding="StarMath 5.0">
x={-b plusminus sqrt {b^2 - 4 ac}} over {2 a}
</annotation>
</math>
У дереві виразів наведеному вище, елементи подібні до times визначено специфікацією MathML і ними позначаються математичні функції, що застосовуються до елементів рівного рівня, які інтерпретуються як аргументи. Елемент csymbol є загальним елементом розширення, значення якого описується в документі за адресою, вказаною в атрибуті definitionURL.
Не зважаючи на те, що нотація в XML менш компактна за TeX, застосування XML має потенціал для поширеного застосування на вебсторінках, відображення у веббраузерах, та безпосередньої інтерпретації у спеціалізованому математичному програмному забезпеченні. MathML не призначена для перегляду або редагування вручну.[2]
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.