Un enfoque metalingüístico al procesamiento de documentos XML
- TEMPRADO BATTAD, BRYAN JESÚS
- José Luis Sierra Rodríguez Director/a
Universidad de defensa: Universidad Complutense de Madrid
Fecha de defensa: 18 de diciembre de 2015
- Juan Luis Pavón Mestras Presidente/a
- Ana Fernández-Pampillón Cesteros Secretario/a
- Juan de Lara Jaramillo Vocal
- José Emilio Labra Gayo Vocal
- Miguel Rodríguez Artacho Vocal
Tipo: Tesis
Resumen
Esta tesis defiende un enfoque metalingüístico al desarrollo de aplicaciones de procesamiento XML, según el cual estas aplicaciones se conciben como procesadores de lenguaje, se describen utilizando formalismos de especificación de alto nivel, y se generan automáticamente a partir de dichas especificaciones. La tesis comienza realizando un análisis unificado de las propuestas más relevantes al desarrollo dirigido por lenguajes de aplicaciones de procesamiento XML realizadas en el Grupo de Investigación en Ingeniería de Lenguajes Software y Aplicaciones (ILSA) de la Universidad Complutense de Madrid (UCM). Como resultado de este análisis, se identifican las dos principales limitaciones de estas propuestas: (i) no abordar la relación existente entre gramáticas específicas para el procesamiento y gramáticas documentales, y (ii) no abordar adecuadamente la especificación modular de tareas complejas. Para resolver la limitación relativa a la relación entre gramáticas específicas para el procesamiento y gramáticas documentales, la tesis comienza fomentando la abstracción de la gramática documental en forma de una gramática EBNF. Seguidamente propugna realizar gramaticalmente cada expresión regular en dicha gramática mediante una gramática BNF no autoembebible. Como resultado, es posible comprobar automáticamente si la gramática específica para el procesamiento se ha obtenido correctamente (si es conforme con la gramática EBNF). Dicha comprobación se apoya en un método novedoso basado en la traducción de las gramáticas no autoembebibles a expresiones regulares. Así mismo, la tesis desarrolla una generalización de dicho método para que pueda operar sobre gramáticas arbitrarias. El resultado, en este caso, no será ya una expresión regular, sino una gramática EBNF equivalente. Esto permite aplicar el criterio de conformidad directamente de gramática BNF a gramática BNF. Dicha generalización se ha plasmado en una herramienta denominada Grammar Equivalence Checker, que ha permitido evaluar la eficacia y usabilidad del método con resultados positivos. La resolución de la limitación relativa a la especificación modular de tareas de procesamiento complejas se ha llevado a cabo formulando un nuevo modelo de gramática de atributos: las gramáticas de atributos multivista. Dichas gramáticas se organizan en vistas gramaticales, entendidas como fragmentos de gramáticas de atributos formuladas sobre gramáticas potencialmente diferentes a las del resto de los fragmentos, pero conformes con una gramática EBNF de base, que abstrae, a su vez, a la gramática documental. De esta forma, los árboles sintácticos asociados por las distintas vistas a un documento comparten los no terminales de núcleo de la gramática EBNF, y, por tanto, pueden combinarse en una única estructura de bosque de análisis sintáctico, uniéndose a través de los terminales y de dichos no terminales de núcleo. Es posible, entonces, generalizar el proceso de evaluación semántica para que, en lugar de operar sobre árboles de análisis sintáctico, opere sobre estos bosques. Dado que en cada vista es posible utilizar los atributos de los no terminales de núcleo introducidos en otras vistas, es posible interrelacionar dichas vistas no sólo sintácticamente, sino también semánticamente. En esta tesis se han definido mecanismos que permiten operacionalizar de manera efectiva el modelo, tanto en la fase de análisis, como en la fase de evaluación semántica. Para demostrar la viabilidad del enfoque, se ha desarrollado una herramienta denominada XLOP3, que permite llevar a cabo la especificación y generación de tareas de procesamiento de documentos XML mediante gramáticas de atributos multivista. Así mismo, XLOP3 se ha utilizado para desarrollar un sistema denominado eMU, orientado a la generación de videojuegos educativos a partir de documentos XML. El carácter no trivial de este sistema ha arrojado evidencia positiva respecto a la utilidad práctica del enfoque.