MathML
MathML (ang. Mathematical Markup Language, matematyczny język znaczników) – język będący zastosowaniem XML-a, służący do opisywania wzorów i symboli matematycznych.
Specyfikacje języka MathML opracowywane są przez W3C. Aktualną wersją (od 2014 roku) jest MathML 3.0.
MathML jest na coraz szerszą skalę wykorzystywany do prezentacji wzorów w Internecie na stronach WWW. Znaczniki MathML można umieścić zarówno w osobnym dokumencie (z rozszerzeniem .mml), jak i włączyć do dokumentu XHTML lub HTML5.
Standard ten jest obsługiwany przez przeglądarki oparte na silnikach Gecko (od 2002 roku) i WebKit (od 2010 roku) oraz przez przeglądarkę Opera. Dla innych przeglądarek konieczne jest zainstalowanie odpowiedniej wtyczki (np. MathPlayer dla Internet Explorera). W połowie 2019 roku trwają prace nad wsparciem standardu MathML w silniku Blink (używanym m.in. przez Chrome'a).
Historia
Główne wersje języka to:
- MathML 1.0 (1998): wersja ta zawierała podstawowy zestaw słów kluczowych (w większości istniejący do dziś), nie wykorzystywała jednak wielu możliwości jęz. XML (takich jak np. przestrzenie nazw), które dodane zostały do XML-a później,
- MathML 2.0 (2001): w wersji tej wprowadzono podział na znaczniki prezentacyjne, opisujące sposób renderowania wzorów, oraz znaczniki semantyczne, opisujące matematyczne znaczenie wzorów i mogące być wykorzystywane do obliczeń. Oba typy znaczników można stosować jednocześnie. W tej wersji dodano ponad 20 słów kluczowych (elementów) języka,
- MathML 3.0 (2010): w wersji tej poprawiono możliwości formatowania wzorów, poszerzono możliwości wykorzystania hiperreferencji oraz współpracę ze standardem OpenMath.
Prosty przykład dokumentu MathML
<!DOCTYPE math PUBLIC "-//W3C//DTD MathML 2.0//EN" "http://www.w3.org/Math/DTD/mathml2/mathml2.dtd">
<math xmlns="http://www.w3.org/1998/Math/MathML">
<mrow>
<msup>
<mfenced>
<mrow>
<mi>x</mi>
<mo>+</mo>
<mi>y</mi>
</mrow>
</mfenced>
<mn>4</mn>
</msup>
</mrow>
</math>
Powyższy przykład obrazuje zapis
Przypisy
Linki zewnętrzne
- W3C Math Home – informacje o MathML i oprogramowaniu wspierającym ten standard
- Specyfikacja MathML 3.0.