¿Por qué DBTexMath?

Aunque DBTexMath no es la única alternativa para la representación de expresiones matemáticas en documentos Docbook, en esta sección se explicará el porqué de su elección.

Para los que aún no han intentado escribir documentos DocBook que involucren expresiones matemáticas complejas tal vez les sorprenda el hecho de que DocBook no provee herramientas estándar para tal actividad.

En realidad, la alternativa propuesta (aunque no formalmente) por OASIS consortium[1] es MathML [2]. Sin embargo, según mi parecer, todavía no se habla de una herramienta estándar que venga dentro de la DTD para la representación de expresiones matemáticas. En efecto, hay varias formas de hacer esto como es descrito en http://www.sagehill.net/docbookxsl/Math.html. El uso de MathML tiene dos grandes inconvenientes:

Para Allin Cottrell, estos dos problemas fueron lo suficiente importantes como para buscar o crear otra alternativa. El resultado fue su proyecto DBTexMath.

Hasta aquí todo muy bien pero, hasta ahora no hemos contestado la pregunta a la que hace referencia el título de esta sección. ¿Por qué usar DBTexMath en lugar de, por ejemplo, MathML?

Primero que nada, MathML y DBTeXMath parecen ser las dos únicas herramientas para auxiliar a DocBook en la edición matemática. Si algún usuario encuentra otra le agradezco que me lo comunique. Segundo, hemos visto las deficiencias de la edición directa de código MathML dentro de nuestros documentos DocBook. Y tercero, podemos decir que la edición de expresiones matemáticas en el lenguaje TeX es casi perfecta. Con unas pocas líneas se pueden crear expresiones que, en otra clase de lenguajes para los mismos propósitos serían muy complejas. Una prueba de ello es que proyectos orientados a las ciencias (como por ejemplo GSL, la librería para propósitos científicos de GNU) utilizan en su documentación de sólo texto (páginas manual o info) el lenguaje TeX para representar expresiones matemáticas complejas. Esto da una idea de lo práctico que es TeX y del gran uso que se le da. Un ejemplo de la facilidad de la conveniencia de su uso para representar expresiones matemáticas es el siguiente. La cadena

	x_j = \sum_{k=0}^{N-1} z_k e^{ -2\pi i j k / N }
      
representa la expresión para la transformada discreta de Fourier:

Con este pequeño ejemplo, se puede apreciar la facilidad y lo intuitivo del uso de TeX para escribir matemáticas.

Notas

[1]

Organization for the Advancement of Structured Information Standards: la entidad responsable del mantenimiento y desarrollo de DocBook

[2]

Ver www.docbook.org/xml/mathml

[3]

Sin embargo en las hojas XSL el soporte a MathML existe y es descrito en http://www.sagehill.net/docbookxsl/MathML.html