Documentación

constantinopla
1. Objetivo del proyecto

Desde el punto de vista técnico, el proyecto consiste en tres partes:
1) Creación de un sistema que permita generar y almacenar la información de los poemas objeto de estudio en formato TEI.

2) Creación de una aplicación web que permita consultar la información relativa a los poemas.

3) Creación de una web que englobe toda la información relativa al proyecto, incluyendo la especificada en el punto anterior.

3. Aspectos del desarrollo

En este apartado, se intentarán explicar los aspectos más relevantes del desarrollo realizado para lograr los objetivos. Esta documentación deberá servir, entre otras cosas, como base para el aprendizaje continuo que creemos necesario en el ámbito de las Humanidades Digitales.
Más allá de lo que se entienda por Humanidades Digitales, desde el punto de vista puramente tecnológico, se podría decir que estamos en una fase muy temprana de la evolución de esta disciplina en los países de habla hispana. Ya sea por aspectos económicos, de tradición o simplemente porque no se ha visto la necesidad, la Humanidades no parecen haberse nutrido de los avances tecnológicos de los últimos años, o al menos no al mismo ritmo que otras disciplinas.
Sistema de generación de XML-TEI
Problemática inicial

Uno de los problemas que encuentra un investigador a la hora de generar un documento es la necesidad de conocer el formato en profundidad, lo que incluye la sintaxis exacta de XML-TEI, así como la facilidad para cometer errores cuando se escribe un documento de este tipo (es fácil olvidarse una etiqueta de cierre, unas comillas, etc). Por otra parte, se hace necesario el uso de alguna herramienta adicional a modo de editor. Existen multitud de editores que permiten hacer este trabajo; algunos son especializados en XML (como Oxygen) y otros simplemente son editores de
texto que nos ayudarán resaltando o coloreando el documento a medida vayamos escribiendo, en función del contenido (Vim, Gedit, etc).
Una vez detectado este problema, concluimos que la herramienta que hay que programar deberá aislar lo más posible al investigador, al creador del documento, de la sintaxis XML-TEI, o al menos facilitarle la tediosa tarea de escribir el documento desde cero. Por otra parte, también consideramos innecesario tener que instalar software adicional (con la posibilidad de aumentar elcoste económico del proyecto).

Solución software: primera aproximación
Teniendo en cuenta las necesidades indicadas anteriormente, decidimos que la solución deberá ser una aplicación web que permita al usuario generar, validar, modificar y borrar documentos XML-TEI directamente desde el navegador, sin necesidad de usar software adicional de terceros. Por otra parte, la aplicación deberá tratar de aislar, como se comentó anteriormente, al usuario de la escritura del XML. Para este punto, vamos a trabajar en dos partes:

1. Creación de una serie de formularios que permita al usuario dar de alta los valores de los
campos TEI de la cabecera (TEI Header) sin necesidad de conocer los tags XML asociados.
El documento TEI se generará con la información introducida en esos campos.
2. Creación de una herramienta que analice, en la medida de lo posible, la estructura de versos
y estrofas dentro del poema, y sea capaz de generar el el cuerpo del documento (XML-TEI).
La herramienta también permitirá definir otros atributos del poema (rimas, fórmulas
métricas, etc) sin necesidad de escribir código XML).

Después de evaluar toda esta casuística, llegamos a la conclusión de que una buena implementación del producto final sería crear una interfaz web basada en tecnología AngularJS, que nos permita desarrollar la aplicación en el navegador. Será en el navegador, pues, donde el usuario
podrá generar el documento. Trataremos de evitar que sea necesario escribir XML, aunque el documento final siempre podrá ser modificado, en caso de querer modificar o añadir alguna casuística no contemplada originalmente.
Por supuesto, la aplicación deberá permitir guardar el documento en un sistema de almacenamiento que nos permita posteriormente recuperar la información para consulta. Existen numerosas opciones hoy en día para guardar XML: bases de datos orientadas a XML, sistemas de
ficheros, bases de datos con soporte nativo XML. Posteriormente, para recuperar la información, emplearemos Xpath y expresiones regulares. En
cualquier caso, y dado el carácter de I+D del proyecto, es posible que estas decisiones cambien a medida que vayamos profundizando en la investigación.

¿Por qué todo en la web?
Nos hemos propuesto como un objetivo del proyecto, entre otros, que sea fácil de usar y accesible para los investigadores. Una aplicación web basada en AngularJS nos permitirá acceder a la herramienta desde cualquier dispositivo que tenga un navegador que soporte esta tecnología
(actualmente la inmensa mayoría de dispositivos la soportan). De este modo, se podrá acceder para crear o modificar un documento desde un ordenador, desde una tableta o incluso desde un móvil, sin necesidad de instalar ningún tipo de programa adicional. Sólo será necesario un navegador web (Chrome, Firefox, Explorer, Safari, etc).