El MathML (Mathematical Markup Language) es un lenguaje XML utilizado para marcar una ecuaci�n matem�tica en t�rminos de su presentaci�n y tambi�n de su sem�ntica.
El MathML es un intento de facilicitar el uso y la reutilizaci�n de las matem�ticas y de los contenidos cientificos en el Web y,en general en cualquier otro tipo de aplicaci�n donde sea necesario la representaci�n de notaci�n matem�tica.
En el momento de escribir estas l�neas se encuentra en la versi�n 2.0 del 21 de Febrero de 2001, que incorpora diversas mejoras sobre la 1.0 y la 1.0.1, aunque no supone un cambio brutal sobre ellas.
Por el momento no es directamente visible en los browsers m�s utilizados aunque las empresas estan desarrollando applets y plug-ins que pueden mostrar documentos Mathtml. Los m�s conocidos son:
- El ICEBrowser, un buscador web escrito en Java
- El IBM techexplorer, un visualizador y plug-in de MathML y TeX/LaTex desarrollado por IBM.
- Y el Amaya, un buscador W3c que nos permite visualizar MathML incluso en nuestro c�digo HTML y adem�s incorpora un sencillo editor de MathML.
Pero lo mejor es que veamos un peque�o ejemplo en el que escribimos una ecuaci�n de segundo grado y la f�rmula que la soluciona.
Este ejemplo visualizado en el buscador Amaya tiene el siguiente aspecto:
y la sintaxis XML que representa la ecuaci�n de segundo grado es el siguiente:
<math> <mrow> <mi>a</mi> <msup> <mi>x</mi> <mn>2</mn> </msup> <mo>+</mo> <mi>bx</mi> <mo>+</mo> <mi>c</mi> <mo>=</mo> <mn>0</mn> <mi></mi> <mo>,</mo> <mi>con a</mi> <mo>></mo> <mn>0</mn> </mrow> </math>
�Ejercicio: Fichero en MathML
Generar el c�digo MathML para la f�rmula que soluciona la ecuaci�n de segundo grado.
Soluci�n:
El c�digo es el siguiente:
<math> <mrow> <mi>x</mi> <mo>=</mo> <mfrac> <mrow> <mo>-</mo> <mi>b</mi> <mo>±</mo> <msqrt> <mrow> <msup> <mi>x</mi> <mn>2</mn> </msup> <mo>-</mo> <mn>4</mn> <mi>ac</mi> </mrow> </msqrt> </mrow> <mrow> <mn>2</mn> <mi>a</mi> </mrow> </mfrac> </mrow> </math>
Y aqu� el c�digo completo con el c�digo MatHML integrado en el c�digo HTML de manera que sea visible en el Amaya Browser. Aunque es un tema que trataremos m�s adelante, fijaros en la utilizaci�n de Namespaces que permiten la integraci�n de dos vocabularios XML: el XHTML y el Mathtml.