Mathematical Markup Language

Mathematical Markup Language (MathML, česky matematický značkovací jazyk) je součástí dokumentů konsorcia W3C (World Wide Web Consortium) jako podmnožina jazyka XML pro zápis matematických a příbuzných vzorců.

Specifikace verze 1.01 byla uveřejněna v červenci 1999 a v únoru 2001 se objevila verze 2.0. V listopadu 2003 bylo zveřejněno druhé vydání MathML verze 2.0 a byla označena jako konečná verze matematické pracovní skupiny konsorcia W3C.

MathML nepopisuje pouze grafickou prezentaci, ale může také uchovávat informaci o smyslu výrazu. Pro uchování povědomí o jednotlivých částech zapsaných vzorců je vhodnější koncept OpenMath, který je navržen pro uchování sémantických informací ve výrazech a může se používat jako doplněk MathML.

Příklad

Dobře známý vzorec pro řešení kvadratické rovnice:

se může zapsat při použití syntaxe TeXu jako

x_{1,2} = \frac{-b \pm \sqrt{b^2 - 4ac}}{2a}

a za použití MathML jako

<math>
 <mrow>
  <mi>x</mi>
  <mo>=</mo>
  <mfrac>
    <mrow>
      <mrow>
        <mo>-</mo>
        <mi>b</mi>
      </mrow>
      <mo>&PlusMinus;</mo>
      <msqrt>
        <mrow>
          <msup>
            <mi>b</mi>
            <mn>2</mn>
          </msup>
          <mo>-</mo>
          <mrow>
            <mn>4</mn>
            <mo>&InvisibleTimes;</mo>
            <mi>a</mi>
            <mo>&InvisibleTimes;</mo>
            <mi>c</mi>
          </mrow>
        </mrow>
      </msqrt>
    </mrow>
    <mrow>
      <mn>2</mn>
      <mo>&InvisibleTimes;</mo>
      <mi>a</mi>
    </mrow>
  </mfrac>
 </mrow>
</math>

Ačkoliv je MathML v porovnání se syntaxí TeXu objemnější, XML struktura dovoluje široké použití například v zobrazovacích zařízeních jako jsou webové prohlížeče nebo ulehčuje přímou interpretaci v matematických programech. Rozsahem generovaného kódu není MathML určena k přímé tvorbě a editaci člověkem.

Podpora v programech

Z hlavních webových prohlížečů, které přímo podporují formát MathML jsou to současné verze Firefoxu, jeho klonů [1] a Safari (včetně mobilního) [2]. Nepodpora v Chromu a nových Operách (přestože Opera verze 12.5 a starší MathML podporovaly) je zapříčeněna tím, že MathML není implementován ve vykreslovacím jádru Blink. Prohlížeče běžící na jádru WebKit, například Safari, by měly MathML plně podporovat. Další prohlížeče podporují MathML pomocí externích pluginů.

MathML je také podporováno hlavními kancelářskými programy jako jsou Microsoft Word, LibreOffice nebo KOffice a matematickými programy jako je Mathematica.

Externí odkazy