close

MathML

Vai alla navigazione Vai alla ricerca

Il MathML o Mathematical Markup Language è un linguaggio di markup basato su XML , il cui obiettivo è esprimere la notazione matematica in un modo che possa essere compresa da diverse macchine, per l'uso in combinazione con XHTML nelle pagine web e per lo scambio di informazioni tra programmi matematici. Generalmente.

Il supporto del MathML è ottimo nei programmi matematici (come Maple o Mathcad ), ma è ancora scarso nei browser. A partire dal 2016, Gecko / Mozilla Firefox aveva il miglior supporto per MathML, seguito da browser basati su Webkit (come Safari ). Google Chrome aveva ereditato la funzionalità da Webkit, ma è stata rimossa a partire dalla versione 25. Opera , una volta quasi completamente supportata, l'ha persa anche dalla versione 13 a seguito della migrazione a Blink /Chrome. Non è mai stato disponibile in Internet Explorer se non tramite un componente aggiuntivo. [ 1 ] Gli autori di siti Web possono utilizzare lo script MathJax per eseguire il rendering di MathML in browser che non dispongono del supporto nativo.

Storia

Il MathML 1 è apparso come una raccomandazione del W3C nell'aprile 1998, essendo il primo linguaggio XML raccomandato dal W3C . La versione 1.0 del formato è stata rilasciata nel luglio 1999 e la versione 2.0 è apparsa nel febbraio 2001.

Nell'ottobre 2003, la seconda edizione del MathML versione 2.0 è stata rilasciata come versione finale dal gruppo di lavoro di matematica del W3C .

Il MathML è stato originariamente progettato prima del completamento dello spazio dei nomi XML . Tuttavia, è stato assegnato uno spazio dei nomi subito dopo il completamento della raccomandazione dello spazio dei nomi XML. Per l'uso in XML, gli elementi devono andare con lo spazio dei nomi e l'URI http://www.w3.org/1998/Math/MathML . Quando il MathML viene utilizzato con HTML (al contrario dell'utilizzo di XML), lo spazio dei nomi viene automaticamente dedotto dal parser HTML e non deve essere specificato nel documento.

MathML versione 3

La versione 3 della specifica MathML è stata rilasciata come Raccomandazione W3C il 20 ottobre 2010. Una raccomandazione di A MathML for CSS Profile è stata successivamente rilasciata il 7 giugno 2011; [ 2 ]​ questo è un sottoinsieme di MathML adatto per la formattazione con CSS. Un altro sottoinsieme, Strict Content MathML , fornisce un sottoinsieme rigoroso di contenuto MathML con una struttura uniforme ed è progettato per essere compatibile con OpenMath . Altri elementi del contenuto del MathML sono definiti in termini di una rigorosa trasformazione di sottoinsiemi. I nuovi elementi di contenuto sono <bind>, che associa una variabile associata (<bvar>) alle espressioni, ad esempio un indice in una sommatoria. Il nuovo elemento <share> consente la condivisione della struttura. [ 3 ]

Lo sviluppo del MathML 3.0 ha attraversato una serie di fasi. Nel giugno 2006, il W3C ha incaricato il gruppo di lavoro del MathML di sviluppare una raccomandazione per il MathML 3 fino a febbraio 2008 e nel novembre 2008 la commissione è stata prorogata fino all'aprile 2010. La sesta bozza della revisione del MathML 3 è stata pubblicata nel giugno 2009. Ad agosto 10, 2010 la versione 3 è stata trasformata in una "raccomandazione proposta" anziché in una bozza. [ 4 ]

Esempio

La nota soluzione dell'equazione di secondo grado ( formula quadratica ):

è scritto nella sintassi TeX come segue:

x = \frac{-b \pm \sqrt{b^2 - 4ac}}{2a}

e usando il MathML in questo modo:

<matematica>
 <mrow>
  <mi>x</mi>
  <mo></mese>
  <mfrac>
    <mrow>
      <mrow>
        <mo>-</mo>
        <mi>b</mi>
      </mrow>
      <mo>±</mo>
      <msqrt>
        <mrow>
          <msup>
            <mi>b</mi>
            <mn>2</mn>
          </msup>
          <mo>-</mo>
          <mrow>
            <mn>4</mn>
            <mo>⁢</mo>
            <mi>un</mi>
            <mo>⁢</mo>
            <mi>c</mi>
          </mrow>
        </mrow>
      </msqrt>
    </mrow>
    <mrow>
      <mn>2</mn>
      <mo>⁢</mo>
      <mi>un</mi>
    </mrow>
  </mfrac>
 </mrow>
</ matematica>

Nonostante sia meno compatto di TeX, la strutturazione XML promette di renderlo ampiamente utilizzabile e consente la visualizzazione istantanea in applicazioni come i browser web , oltre a facilitare l'interpretazione diretta del suo significato nei programmi matematici. Il MathML non è concepito per essere scritto o modificato direttamente dagli esseri umani.

Vedi anche

Riferimenti

  1. ^ "Giocatore di matematica" . www.dessci.com . Estratto il 19 dicembre 2016 . 
  2. ^ "Un MathML per il profilo CSS" . W3C. 7 giugno 2011 . Estratto 25-07-2013 . 
  3. Linguaggio di markup matematico versione 3.0 Raccomandazione W3C . W3.org. Estratto il 9 maggio 2012.
  4. W3C MathML 3.0 Approvato come standard internazionale ISO/IEC . W3.org. Estratto il 12 luglio 2015.

Collegamenti esterni