Academia.eduAcademia.edu
13 SILEX. La IDE de la mina neolítica de Casa Montero (Madrid) Alfonso Fraguas Bravo Antonio Menchero Fernández Antonio Uriarte González Juan Manuel Vicent García Susana Consuegra Rodríguez Pedro Díaz-del-Rio Español Nuria Castañeda Clemente Cristina Criado Torija Enrique Capdevila Montes Marta Capote Fernández SILEX ha sido creado para gestionar y distribuir de forma eficiente y sistemática un conjunto de datos heterogéneo, complejo e ingente de cara a la caracterización de aspectos precisos de un yacimiento inusual como es una mina de sílex. Alfonso Fraguas Bravo Antonio Menchero Fernández Antonio Uriarte González Juan Manuel Vicent García Susana Consuegra Rodríguez Pedro Díaz-Del-Río Español Cristina Criado Torija Enrique Capdevila Montes Marta Capote Fernández Grupo de Investigación “Prehistoria Social y Económica”, Instituto de Historia, CCHS-CSIC 1. SILEX: Presentación SILEX, acrónimo de Sistema de Información Locacional en XML, es la Infraestructura de Datos Espaciales (IDE) de Casa Montero. Representa la aplicación de las últimas tecnologías de la información al almacenamiento, gestión y difusión de la voluminosa información arqueológica primaria de la mina de sílex neolítica de Casa Montero. Gracias a SILEX, el registro arqueológico de este yacimiento es accesible a través de la web (http: // www. casamontero. org/ide. html) y utilizable libremente. La IDE se desarrolló íntegramente en el seno del Grupo de Investigación de Prehistoria Social y Económica (IH, CSIC) una de cuyas líneas de trabajo es la aplicación de las Tecnologías de la Información y la Comunicación (TIC) en Arqueología. Otra parte del Grupo desarrollaba el Proyecto de Investigación del yacimiento Casa Montero. El trabajo comenzó durante el verano de 2007 y fue presentado en la Reunión Nacional de la Infraestructura de Datos Espaciales de España (IDEE) (“Las Infraestructuras de Datos Espaciales (IDE) y sus aplicaciones en proyectos de investigación científico-tecnológicos”), celebrada en Madrid en febrero de 2010 (http: // www. cchs. csic. es /es /node /281389). En 2011 se testaron los fallos en las consultas a través de la interfaz. SILEX ha sido diseñado según un enfoque abierto, basado en el uso de estándares y software de código abierto. Es un sistema de información distri363 SILEX: LA IDE DE LA MINA NEOLÍTICA DE CASA MONTERO (MADRID) buido con una arquitectura en tres capas: la capa de datos, formada por información SIG y una compleja base de datos temática organizada según el modelo entidad-relación; la capa del servicio web, que incorpora el uso de protocolos y lenguajes estándar para el acceso a la base de datos; y la capa de interfaz, un mashup que combina formularios y un visor geográfico para la consulta y recuperación de la información. 2. El registro arqueológico de SILEX SILEX ha sido desarrollado como parte del “Proyecto de Investigación Arqueológica en el yacimiento de Casa Montero (Madrid). Producción y circulación de sílex en el neolítico de la Meseta”1 para la gestión sistemática y distribución de datos recuperados durante la excavación de un sitio arqueológico en particular, la mina de sílex del Neolítico Antiguo de Casa Montero (Madrid). La mina de Casa Montero, situada en plena zona de crecimiento de la ciudad de Madrid, fue descubierta en septiembre de 2003 durante los preceptivos trabajos arqueológicos realizados con carácter previo a la construcción del tercer cinturón de circunvalación de Madrid (M-50). La Dirección General de Patrimonio Histórico de la Comunidad de Madrid, ante la singularidad e importancia del yacimiento, obligó a modificar el trazado de la carretera, lo que permitía conservar el área de mayor concentración de restos. La excavación arqueológica se llevó a cabo en tres campañas (24 meses) entre septiembre de 2003 y agosto de 2006 y produjo un conjunto de datos vasto y complejo, especialmente en lo relativo al registro de campo y al inventario y estudio del material lítico2. De las 818 interfaces excavadas, SILEX recoge sólo las 737 en las que se concluyeron los trabajos. El mayor número de estructuras pertenece al Neolítico Antiguo, de las que 339 tienen fines extractivos (pozos, pozos de tanteo y cantera) y tanto el grupo “otros”, que incluye agujeros de poste, de cabrestante y pates hallados en el interior de los pozos, como las excavaciones lateProyecto financiado por Autopista Madrid Sur C.E.S.A. en el marco del Convenio de Colaboración entre la Consejería de Cultura y Deportes de la Comunidad de Madrid, el Consejo Superior de Investigaciones Científicas (CSIC) y Autopista Madrid Sur Concesionaria Española S.A. para la investigación, conservación y difusión del yacimiento arqueológico de Casa Montero (Madrid). 2 Los detalles sobre las circunstancias patrimoniales del yacimiento, los aspectos metodológicos de las tres campañas de excavación y detalles de los resultados, pueden consultarse en: Consuegra et al. 2004; Díaz-del-Río et al. 2006, 2008, 2010; Capote et al. 2008; Bustillo et al. 2009; o también en la web del proyecto: http://www.casamontero.org/index.html 1 364 ALFONSO FRAGUAS ET AL. rales son interfaces ligadas a los pozos de extracción de sílex. SILEX muestra la descripción pormenorizada de cada interfaz y depósito mediante una serie de atributos (100 y 58 respectivamente). Son comunes a ambas entidades los atributos dedicados a la identificación, localización, caracterización estratigráfica y física, relaciones físicas y estratigráficas, interpretación, observaciones y documentación. Además, cada entidad tiene sus propios atributos específicos. En el caso de las interfaces, junto a las propiedades de las estructuras básicas de explotación, se definen de forma independiente tanto las Evidencias de Explotación (EE) como los Medios Auxiliares para la Explotación (MAE). Estos elementos, indefectiblemente vinculados a los pozos, definen con precisión las características de la explotación silícea y requieren descriptores particulares. Tabla 1. Distribución de las interfaces recogidas en SILEX por fases. En cuanto a los depósitos, se han excavado un total de 4624, de los que SILEX recoge 3240 (Tabla 2), por los mismos motivos que en el caso de las interfaces. Constituyen mayoritariamente los rellenos de las estructuras subterráneas del yacimiento, especialmente de aquellas destinadas a la explotación del sílex en época neolítica. Lo más novedoso de su descripción en SILEX es la tipificación de los sedimentos constitutivos de los rellenos en 6 tipos y la reseña de su posición (basal, intermedia o superior) en la secuencia estratigráfica de los pozos. La combinación de ambos datos permite realizar un diagnóstico sobre las estrategias de colmatación intencionada de las estructu365 SILEX: LA IDE DE LA MINA NEOLÍTICA DE CASA MONTERO (MADRID) ras de explotación. Se recoge también la presencia/ausencia de materiales arqueológicos, así como el peso y densidad de los restos líticos e industria lítica en cada relleno. Tabla 2. Distribución de los depósitos recogidos en SILEX por fases. Los restos líticos constituyen el material más abundante recuperado en Casa Montero; su peso total asciende a 65.885 kg. El conjunto está formado mayoritariamente por productos de desecho de la extracción y configuración de los nódulos de sílex (Castañeda y Criado 2006, Castañeda et al. 2008; Castañeda 2009). SILEX gestiona la información de un muestreo de 190.828 piezas (Tabla 3). El estudio se articula en cuatro niveles de análisis de las piezas, que van desde el simple recuento por categorías al análisis completo mediante la cumplimentación de 63 atributos descriptivos. Estos recogen información respecto a la materia prima, alteraciones, caracteres morfométricos y tecnológicos. Además, algunas categorías como láminas y núcleos tienen un estudio específico encaminado a la caracterización de aquellas particularidades que no se recogen en el análisis general. 366 ALFONSO FRAGUAS ET AL. Tabla 3. Recuentos de unidades estratigráficas y piezas, por nivel de análisis en SILEX por fases. Entre los restos líticos son minoritarias las BNEs por su materia prima (clastos de cuarcita preferentemente), su procedencia externa al yacimiento y su funcionalidad (percutores). SILEX recoge el inventario de este conjunto de 4663 piezas así como aquellas analizadas (513) (Tabla 4). El análisis general de la pieza (materia prima, alteraciones, conservación, forma y medidas) se realiza en 10 atributos mientras otros 10 se destinan a la caracterización de las superficies de trabajo, aquellas que presentan huellas macroscópicas de uso. Tabla 4. Recuento de BNEs, por nivel de análisis. 3. La ética de SILEX: un sistema abierto e interoperable “Cualquier reflexión sobre el diseño y el desarrollo tecnológico debe incorporar una mirada ética” (Feltrero 2007: 11). En nuestro caso, dicha postura ética se basa en la idea de que compartir el conocimiento contribuye al desarrollo de la sociedad, en general, y de la ciencia, en concreto. Es por ello que una de las directrices que guiaron el desarrollo de SILEX fue hacer efectiva la distribución integral y sin restricciones de los datos primarios, los procedimientos y los resultados en él implicados. 367 SILEX: LA IDE DE LA MINA NEOLÍTICA DE CASA MONTERO (MADRID) En el campo de las TIC, este enfoque se conoce como abierto (open, en inglés) (Walsh 2010). El desarrollo de las tecnologías digitales de almacenamiento, organización y distribución de la información ha propiciado entre los usuarios la creciente conciencia de las posibilidades que ello ofrece en la trasmisión e intercambio del conocimiento y la reivindicación de su realización efectiva. Dentro del enfoque abierto se pueden distinguir tres aspectos (Lobo 2010): Open Data, Open Source y Open Access. El concepto de Open Data es el más directamente relacionado con los objetivos de SILEX y consiste en que los datos primarios generados por la actividad científica, en concreto, e institucional, en general, sean accesibles de forma integral3. Habitualmente, el acceso al conjunto de los datos primarios de una excavación arqueológica es complicado para la mayor parte de los investigadores. Las memorias y publicaciones elaboradas por los excavadores suelen presentar dichos datos de forma parcial, presentando aquellos más significativos, o sintética, en forma de gráficos y resúmenes numéricos. Por otra parte, pese al desarrollo de las tecnologías digitales, sigue siendo mayoritaria la publicación de información arqueológica en formato analógico, bajo la forma del tradicional inventario en papel. SILEX pretende salvar estas limitaciones, facilitando a cualquier investigador el acceso directo y completo a los datos primarios del yacimiento de Casa Montero. Además, dicho acceso es dinámico, a través de un interfaz web que permite explorar, consultar y extraer conjuntos específicos de datos según los criterios explicitados por el usuario. La idea no es publicar un libro digital estático y plano, sino una herramienta para la selección y descarga de información. El acceso a los datos primarios permite a los investigadores realizar análisis alternativos y obtener resultados científicos complementarios o incluso contradictorios a los generados en su momento por los propios excavadores del yacimiento. Respecto al software abierto empleado en la implementación del sistema tiene mayoritariamente licencias de uso tipo Open Source4 (Código Abierto) y Free Software5 (Software Libre). La diferencia entre ambos conceptos consiste en que el primero tiene un significado más tecnológico, mientras que el del segundo es más político. En cualquier caso, en la actualidad se conoce la combinación de ambos tipos de licencia de software con el acrónimo FOSS Panton Principles. Principles for Open Data in Science: http://pantonprinciples.org/ Open Source: http://www.opensource.org/ 5 Free Software: http://www.fsf.org/ 3 4 368 ALFONSO FRAGUAS ET AL. (Free and Open Source Sofware) (ver en el anexo la relación del software FOSS utilizado en el desarrollo de SILEX). Por último, el concepto de Open Access se refiere a la publicación de los artículos científicos en Internet de forma gratuita6. Por ello, es accesible toda la documentación producida desde el Proyecto Casa Montero y SILEX (http://www.casamontero.org/rec_publi.html). El intercambio de datos requiere el uso de un lenguaje común entre el productor y el usuario a la hora de garantizar la interoperabilidad o la capacidad de compartir y trasmitir información entre diversos sistemas. La interoperabilidad conlleva el uso de estándares, que en SILEX se concretan en el uso de los creados para internet por el World Wide Web Consortium (W3C)7 (protocolo HTTP, lenguaje XML); y los propuestos por el Open Geospatial Consortium (OGC)8 (lenguaje GML, servicios web OGC) para la información geográfica y espacial. De hecho, muchos de estos estándares de facto han pasado a ser estándares de iure mediante su conversión en normas ISO (International Organization for Standardization), como en el caso de XML y GML y de algunos servicios OGC, como WMS. El empeño por la interoperabilidad y estandarización ha tenido su eco en el ámbito legal y administrativo, mediante la promulgación de leyes que promueven la normalización y la distribución libre y abierta de los datos generados por las instituciones públicas. Un ejemplo pionero es la Directiva INSPIRE de la Unión Europea9, que reclama la estandarización y publicación en Internet de los datos geoespaciales creados por sus estados miembros. Dicha directiva ha sido transpuesta al ordenamiento jurídico español por medio de la Ley 14/2010 de Infraestructuras y Servicios de Información Geográfica en España (LISIGE). 4. La arquitectura del sistema SILEX En los siguientes apartados se describe la arquitectura de este sistema de información que han sido publicadas anteriormente (Fraguas et al. 2008, 2009, 2010a, 2010b y 2010c). Budapest Open Access Initiative: http://www.soros.org/openaccess/index.shtml World Wide Web Consortium (W3C): http://www.w3.org/ 8 Open Geospatial Consortium: http://www.opengeospatial.org/ 9 INSPIRE (Infraestructure for Spatial Information in Europe): http://inspire.jrc.ec.europa.eu/. Directiva INSPIRE 2007/2/EC: http://eur-lex.europa.eu/JOHtml.do?uri=OJ:L:2007:108:SOM:ES:HTML 6 7 369 SILEX: LA IDE DE LA MINA NEOLÍTICA DE CASA MONTERO (MADRID) SILEX es una Infraestructura de Datos Espaciales (IDE). Tanto la definición de IDE10 como las páginas de César Parcero-Oubiña en este mismo volumen, indican tres elementos imprescindibles en una IDE: la presencia de información de tipo espacial o geográfico (en la línea de los Sistemas de Información Geográfica), su accesibilidad a través de la Red y su diseño según estándares y normas, a fin de hacer posible la compatibilidad entre diferentes IDEs. SILEX es un sistema de información distribuido, esto es, accesible a través de Internet. El diseño de SILEX se basa en la propia arquitectura de la World Wide Web, cuyo principal exponente es el protocolo HTTP. La información se organiza en recursos, a cada uno de los cuales corresponde su propio identificador universal o URI (Uniform Resource Identifier) (Berners-Lee 1996), al que también podemos referirnos en términos navegacionales como URL (Uniform Resource Locator). En el caso de los recursos de información espacial, sus URIs correspondientes incorporan un procedimiento remoto (RPC, Remote Procedure Call). El uso de URIs como punteros de acceso a la información hace de SILEX una base de datos orientada a grafos, una red de nodos de conectados por arcos o relaciones a través de un sistema distribuido (Fig. 1). Fig. 1. Grafo en el que se representan las relaciones entre recursos de información. 10 370 Definición de IDE: http://www.idee.es/show.do?to=pideep_que_es_IDEE.ES ALFONSO FRAGUAS ET AL. Si cada recurso de información (por ejemplo, un pozo, un depósito o una pieza lítica) tiene su propio URI, es accesible mediante cualquier aplicación de software capaz de navegar por la Web. Los URIs son cadenas de texto que pueden ser fácilmente almacenadas (por ejemplo, en tablas o en el propio directorio de “Favoritos” del navegador) y compartidas (por ejemplo, vía correo electrónico). Además, pueden ser indexadas por los buscadores, como Google, lo que permite localizarlas mediante estas herramientas. Si además los recursos están vinculados mediante sus propios URIs, es posible navegar a través de todo el conjunto de datos usando vínculos, del mismo modo en que se exploran las páginas web. Por tanto, si varios servidores publican información y todos ellos comparten un marco de publicación (Framework) común, cualquier cliente podrá obtener datos de ellos. El framework puede funcionar como un catálogo, mediante el indexado de recursos localizados en diferentes servidores, de modo que estén conectados unos con otros. Como sistema de información distribuido, SILEX tiene una típica arquitectura multi-capa, compuesta por tres niveles (Fig. 2): 1) capa de persistencia o almacenamiento (base de datos) 2) capa de procesamiento, para el acceso a los datos 3) capa de visualización o presentación o interfaz de usuario web. Fig. 2. Arquitectura de SILEX. 371 SILEX: LA IDE DE LA MINA NEOLÍTICA DE CASA MONTERO (MADRID) En el caso de SILEX, la capa de procesamiento se ha construido como un servicio web. Cada capa está codificada de forma autónoma e interaccionan entre ellas mediante interfaces. La principal ventaja de este tipo de arquitectura es que minimiza el impacto que la modificación de una capa sobre las demás. Los sistemas multi-capa son fácilmente escalables, es decir, pueden ampliarse y adaptarse a nuevas necesidades sin que ello comprometa su funcionamiento. Por ejemplo, en SILEX hemos seleccionado una base de datos nativa XML para el almacenamiento de la información temática; sin embargo, podríamos sustituirla por una base de datos relacional sin que ello afecte a las capas de servicios y de visualización. 5. La base de datos de SILEX SILEX, como cualquier otra IDE o SIG, integra dos tipos de información: temática y espacial. Cada una de ellas ha sido organizada según un determinado modelo de datos, entendiendo por este un conjunto de conceptos, reglas y convenciones que permiten describir una determinada realidad (De Miguel y Piattini 1993: 162). 5.1. El modelo de datos temático 5.1.1. El Modelo Entidad-Relación Extendido (ERE) La parte temática de la información es la más amplia y compleja de SILEX. Ha sido organizada según el Modelo Entidad-Relación Extendido (ERE), uno de los más utilizados actualmente en el diseño de sistemas de información. Dicho modelo es un desarrollo del ya clásico Modelo Entidad-Relación (ER) (Chen 1976), con una fuerte incorporación de conceptos y métodos procedentes del enfoque Orientado a Objetos (Gogolla 1994; Hartmann 2003). El modelo ERE se basa en tres conceptos: entidad, atributo y relación. — Entidad: Chen (1976: 10) define una entidad como una “cosa” que puede identificarse de forma diferenciada. Algunas entidades arqueológicas de SILEX serían una unidad estratigráfica, un pozo minero, una pieza lítica o una muestra arqueobotánica. Las entidades se agrupan genéricamente en tipos de entidad o, clases si empleamos la terminología del modelado orientado a objetos. A nivel semántico, cada clase se representa mediante un sustantivo o una locución sustantiva (por ejemplo, pozo o pieza lítica). — Atributo: Propiedad o característic a través de las que se describe cada entidad concreta, para la que cada atributo adopta un valor concreto (por ejemplo, el diámetro máximo y la cota absoluta de la boca en el 372 ALFONSO FRAGUAS ET AL. caso de un pozo, o el peso y la materia prima en el caso de una pieza lítica).Cada clase incorpora una serie de atributos. 1. Relaciones de asociación o roles: Proceden del propio modelo ER clásico. Expresan algún tipo de vínculo entre entidades (inclusión, composición, conexión, etc.). A nivel semántico, el rol se expresa mediante un verbo activo (por ejemplo, una UE negativa corta UEs positivas o un depósito contiene hallazgos). Una característica de las relaciones de asociación es la cardinalidad o multiplicidad, que indica el número mínimo y máximo de entidades concretas de cada clase que intervienen en la relación. Existen tres tipos genéricos de cardinalidad: a. Uno a uno: Cada entidad de una determinada clase A está relacionada, como máximo, con una entidad de la otra clase B, y viceversa. b. Uno a varios: Cada entidad de la clase A puede relacionarse con más de una entidad de la clase B, e inversamente, cada entidad de la clase B sólo puede relacionarse, como máximo, con una entidad de la clase A. c. Varios a varios: Cada entidad de una determinada clase A puede estar relacionada más de una entidad de la clase B, y viceversa. Cada uno de estos tres tipos básicos de cardinalidad se concreta mediante la especificación exacta del número mínimo y máximo de casos de cada entidad. Veamos algunos ejemplos de cardinalidades, concretamente del tipo uno a varios, en el propio modelo de datos de SILEX (Fig. 3). La relación entre Herramienta y ParteActiva exige al menos un elemento de cada clase de entidad; la cardinalidad sería (1,1) para Herramienta y (1,n) para Parte Activa. Esto significa que toda parte activa debe pertenecer a una herramienta, mientras que toda herramienta, por el hecho de serlo, debe tener al menos una parte activa. Por el contrario, en la relación entre Unidad Muestreo y UE Negativa la cardinalidad es (0,1) y (0,n), respectivamente, lo que significa que puede haber UEs negativas que no estén vinculadas a unidades de muestreo y, además, unidades de muestreo sin UEs negativas. Como último ejemplo, la relación entre las clases Nivel y Levantamiento presenta cardinalidades (1,1) y (0,n), ya que un levantamiento tiene que estar asociado necesariamente a un nivel, pero pueden existir niveles sin levantamientos vinculados. 373 SILEX: LA IDE DE LA MINA NEOLÍTICA DE CASA MONTERO (MADRID) Fig. 3. Modelo de datos de SILEX. 374 ALFONSO FRAGUAS ET AL. 375 SILEX: LA IDE DE LA MINA NEOLÍTICA DE CASA MONTERO (MADRID) 2. Relaciones de herencia o de especialización/generalización (E/G): Han sido adoptadas del enfoque orientado a objetos. Establecen relaciones taxonómicas entre clases, las cuales expresan la pertenencia de una determinada clase, denominada subclase, a otra clase de nivel más general / genérico o superior, denominada superclase. Semánticamente se expresan mediante el verbo ser (por ejemplo, una lámina es una pieza lítica o un pozo es una UE negativa). En otras palabras, una subclase es una especialización de una superclase, una categoría más específica de esta (por ejemplo, una lámina es una subclase de pieza lítica). Inversamente, una superclase es una generalización de una subclase, una categoría más genérica (por ejemplo, una pieza lítica es una superclase de una lámina). En virtud de este tipo de relación, una subclase hereda los atributos de su superclase correspondiente, los cuales suma a los suyos propios. Por ejemplo, un atributo de una pieza lítica es el tipo de material, atributo que también es propio de la subclase lámina. 5.1.2. El modelo de datos temático de SILEX SILEX tiene un modelo de datos complejo (Fig. 3)11 en el que se distinguen tres bloques fundamentales: uno relativo al proceso de excavación del yacimiento, otro dedicado a las unidades estratigráficas y un tercero sobre los ítems arqueológicos, entre los cuales la industria lítica tiene una presencia predominante. El primer bloque “cuelga” de la clase Yacimiento, que es el objeto de la excavación. Esta clase sólo comprende un único caso, el yacimiento de Casa Montero, debido a que SILEX ha sido diseñado ex profeso para este. Podría pensarse, por tanto, que dicha clase es innecesaria. Sin embargo, abre la posibilidad de incluir nuevos yacimientos y, de este modo, extender el modelo a sus datos de excavación. Sobre el yacimiento se han efectuado varias campañas de excavación (Campaña). En algunos casos, estas han comportado la definición de determinadas unidades espaciales para la ejecución de los trabajos de excavación. Unas son las áreas (Area), destinadas a diferenciar determinadas partes del yacimiento. Otras son las unidades definidas y seleccionadas mediante la mencionada estrategia de muestreo sistemático alineado (UnidadMuestreo) (Díaz-del-Río et al. 2007). 11 376 http://www.casamontero.org/webservice/schemas/modelo.pdf ALFONSO FRAGUAS ET AL. Los abundantes materiales arqueológicos recuperados en cada campaña han sido organizados en palés (Pale), cada uno de ellos formado a su vez por cajas (Caja). El segundo bloque, el relativo a las unidades estratigráficas, responde a la excavación con el método Harris (1991), en el que la entidad fundamental es la unidad estratigráfica (UE). Dicha clase tiene dos subclases, vinculadas a ella mediante sus respectivas relaciones de herencia, UEPositiva y UENegativa. La clase UEPositiva tiene una única subclase, Deposito, debido a que en la excavación de Casa Montero todas las UEs positivas documentadas fueron depósitos de relleno. En cuanto a las unidades negativas, existe una amplia variedad de subclases, todas las cuales, salvo Fosa, son resultado de los trabajos mineros: Pozo, Pate, AgujeroPoste, AgujeroPolea, Fosa y ExcavacionLateral. Por otra parte, la clase MedioAuxiliar incorpora diversas subclases, algunas de las cuales son UEs negativas (Pate, AgujeroPoste, AgujeroPolea) y otras no (Estrechamiento, Repisa). Las relaciones estratigráficas entre las UEs se recogen en el modelo mediante relaciones de asociación: relaciones de superposición entre depósitos, relaciones de corte de unidades negativas a depósitos u otras negativas y, en tercer lugar, relaciones de relleno de unidades negativas por depósitos. Una parte del yacimiento, de cronología paleolítica, fue excavada siguiendo un sistema diferente al Harris, mediante el registro de niveles arqueológicos (Nivel) y la división de cada uno en levantamientos artificiales (Levantamiento). Cabe señalar que la clase Nivel podría haberse asimilado conceptualmente a la de UEPositiva y haber constituido una subclase de esta. Sin embargo, dada la especificidad de esta parte de la excavación, se decidió diferenciar los niveles como una clase aparte de la taxonomía establecida por Harris. Además de las UEs y los niveles, en el proceso de excavación (concretamente en el de las unidades de muestreo) también se registraron las vetas de sílex (Veta). Estas fueron identificadas durante la excavación de las unidades negativas, ya que habían sido cortadas por estas en el pasado en el transcurso de las actividades mineras. Precisamente, la clase CorteVeta recoge las intersecciones de las vetas por las UEs negativas. A su vez, la clase MuestraVeta se refiere a las muestras de sílex tomadas en los cortes de las vetas. El tercer bloque está dedicado a los ítems arqueológicos y tiene como eje la clase Hallazgo, de la que hay diversas subclases: PiezaLitica, Fauna, IndustriaOsea, Ceramica, Arqueobotanica, esta última a su vez con la subclase MuestraCarbon. La gran mayoría de los hallazgos pertenecen a la clase Pie377 SILEX: LA IDE DE LA MINA NEOLÍTICA DE CASA MONTERO (MADRID) zaLitica, dadas las características del yacimiento, y su descripción detallada y sistemática mediante el sistema lógico analítico (Mora et al. 1992) cubre una importante parte del modelo de datos. De este modo, hay un amplio conjunto de subclases de piezas líticas que responden a las categorías definidas por dicho sistema: bases naturales (BNA), bases positivas (BP), bases positivas fracturadas (BPF), etc. Algunas de estas clases tienen otras asociadas, como las superficies (Superficie) de las bases negativas o las superficies de talla (SuperficieTalla) con las bases negativas de primera y segunda generación (BN1G y BN2G). También se han considerado los remontajes de piezas líticas (Remontaje). Cada remontaje, a su vez, puede tener superficie. Por último, algunas piezas líticas pueden ser herramientas (Herramienta), las cuales pueden presentar una o varias partes activas (ParteActiva). Aunque ha sido diseñado específicamente para el yacimiento de Casa Montero, con sus idiosincrasia particular, cabe señalar que no es un modelo cerrado, ya que la mayoría de sus clases son extrapolables a otros casos de estudio y, además, admite la adición de otras nuevas que enriquezcan las posibilidades de descripción del registro arqueológico (por ejemplo, otros tipos de UE positiva distintas a los depósitos, u otros tipos de hallazgos, como objetos metálicos). Ello hace posible su aplicación a los datos de excavación de otros yacimientos. 5. 2. El modelo de datos espacial SILEX contiene dos conjuntos de datos espaciales: uno principal, directamente vinculado a la base de datos temática, y otro complementario, no relacionado con esta. La información espacial conectada con la base de datos temática está formada por una serie de capas vectoriales de tipo poligonal relativas a las UEs negativas, como por ejemplo los pozos, las fosas y las excavaciones laterales. Dichas capas han sido extraídas de la planimetría CAD de la excavación (Fig. 4) y se ha asignado a cada uno de los elementos vectoriales el identificador de UE correspondiente. De este modo, cada elemento vectorial es la representación bidimensional de una UE negativa y lleva asociada la información temática de esta mediante el citado identificador. El resto de las entidades arqueológicas de la base de datos temática (por ejemplo, los depósitos o los hallazgos) no tienen representación espacial propia, aunque sí están georreferenciadas de forma indirecta a través de las UEs negativas con las que están relacionadas. 378 ALFONSO FRAGUAS ET AL. Fig. 4. Entidades espaciales en el visor geográfico. Los datos espaciales complementarios consisten, por un lado, en capas creadas a partir de la propia información de la excavación (por ejemplo, los límites de la excavación o las unidades de muestreo) y, por otro, en capas alojadas en otras IDEs a las que se accede mediante servicios web, como el WMS del Plan Nacional de Ortofotografía Aérea (PNOA). 5.3. La implementación La información temática ha sido almacenada de manera desagregada en una base de datos nativa XML. Para la codificación, este tipo de bases de datos utiliza el lenguaje XML, un lenguaje estándar creado por el W3C y diseñado para el intercambio de información entre diferentes plataformas. Su condición de lenguaje estándar para el intercambio de información lo convierte en idóneo de cara a la interoperabilidad. 379 SILEX: LA IDE DE LA MINA NEOLÍTICA DE CASA MONTERO (MADRID) Con objeto de facilitar la validación y el posterior procesamiento del esquema, se han añadido anotaciones semánticas a la descripción de las entidades. La definición y descripción de las clases del modelo de datos temático se ha llevado a cabo mediante CasamonteroML12, un esquema XML creado ad hoc. La base de datos puede ser consultada mediante XQuery, un potente lenguaje creado por el W3C para bases de datos desarrolladas en XML. Así como SQL es el lenguaje de consulta de las bases de datos relacionales, XQuery lo es de los documentos XML. Como se trata de una base de datos desagregada, cada recurso de información está alojado en un documento XML independiente. Los recursos codificados son las entidades y las relaciones. Los conjuntos de relaciones del modelo de datos de SILEX se definen en el archivo http://www.casamontero.org/webservice/schemas/relaciones_ definicion. xml. En este documento se declaran las relaciones directas de asociación y herencia y se indica la ruta para llegar de un recurso a otro en las relaciones inferidas. Las relaciones no explícitas o que no pueden heredarse no están disponibles. Por ejemplo, un fragmento de dicho documento, en el que se define la relación de asociación entre las clases Campaña y Deposito sería: <relationship-def> <from> <Campaña xmlns=”http://www.casamontero.org/2007”/> </from> <to> <Deposito xmlns=”http://www.casamontero.org/2007”/> </to> <type>http://www.antoniomenchero.es/2008/relationships/types /association</type> <cardinality-from min=”1” max=”1”/> <cardinality-to min=”0” max=”unbounded”/> <roles> <role> <forward>http://www.casamontero.org/2007/relationships /roles/asociado_a</forward> <backward>http://www.casamontero.org/2007/relationships/ roles/extraido_en</backward> CasamonteroML: http://www.casamontero.org/webservice/schemas/casamontero.xsd http://www.casamontero.org/webservice/schemas/casamontero.rng 12 380 ALFONSO FRAGUAS ET AL. </role> </roles> </relationship-def> Las relaciones de generalización o herencia están especificadas por medio de “programación” en los esquemas XML (RNG y XSD), definiendo tipos comunes para las clases que comparten tipos. Por ejemplo, se define el tipo TipoMagnitudLongitudUE y se utiliza para el atributo Profundidad de la Clases Pozo y de la Clase Pate. Las relaciones de asociación se representan en la base de datos como documentos XML. En http://www.casamontero.org/webservice/schemas/relaciones.rng está disponible su esquema. Veamos un ejemplo: <relationship id=”campanyas_2_depositos_3360_asociado_a_ extraido_en” from-name=”Campaña” from-namespace-uri=”http://www.casamontero.org/2007” from-uri=”http://www.casamontero.org /webservice/campanyas /2” to-name=”Deposito” to-namespace-uri=”http://www.casamontero.org/2007” to-uri=”http://www.casamontero.org/webservice/depositos /3360” from-to-role=”http://www.casamontero.org/2007/relationships /roles/asociado_a” to-from-role=”http://www.casamontero.org/2007/relationships /roles/extraido_en”/> La relación entre las entidades origen y destino incluye tres datos para cada entidad: su nombre (el mismo que se utiliza en XML), su espacio de nombres y su URI. Debe existir correspondencia entre el nombre y el espacio de nombres de estos elementos y los de los documentos XML. Aunque las relaciones son bidireccionales, suele haber un sentido preferente de navegabilidad. El atributo from-to-role indica el rol que juega la entidad origen en la relación y el atributo to-from-role, el de la entidad destino. Como puede apreciarse, los identificadores de los roles también son URIs. Las entidades pueden relacionarse de forma directa o inferida. En el ejemplo citado más arriba, la relación es de tipo directo. El conjunto de entidades Campaña del espacio de nombres “http://www.casamontero.org/2007” está vinculado con el conjunto de entidades Deposito del mismo espacio de nombres mediante una relación de asociación. El rol directo (forward, de la entidad origen a la destino) 381 SILEX: LA IDE DE LA MINA NEOLÍTICA DE CASA MONTERO (MADRID) es “http://www.casamontero.org/2007/relationships/roles/asociado_a” y el rol inverso (backward, de la entidad destino a la origen) es “http://www.casamontero. org/2007/relationships/roles/extraido_en”. En función de la bidireccionalidad de las relaciones, cada rol directo tiene un rol inverso. Asimismo, puede haber varios roles para el mismo tipo de relación entre dos conjuntos de entidades. Decimos que entre dos entidades hay una relación inferida si es posible relacionarlas a través de relaciones directas con entidades intermedias. Sólo se definen aquellas relaciones que tienen sentido y no presentan ambigüedades. Por ejemplo, supongamos que estamos interesados en la relación de cierta entidad Hallazgo con determinada entidad UENegativa. Según el diagrama UML no hay relación directa de asociación entre ambos conjuntos de entidades. Las entidades Hallazgo están contenidas en entidades Deposito, las cuales a su vez rellenan entidades UENegativa. Para encontrar la relación entre determinada entidad Hallazgo y la entidad UENegativa de la que procedería, es necesario seguir esa cadena de relaciones. En cuanto a la información espacial, las capas vectoriales están almacenadas en un sistema de gestión de base de datos objeto-relacional con módulo espacial. La base de datos tiene vinculados documentos digitales de dos tipos: fotografías relativas a diferentes tipos de entidades arqueológicas, tanto hallazgos como unidades estratigráficas, y dibujos de las secciones de los pozos mineros (clase Pozo) (Fig. 5). Dichos documentos son ficheros con formatos estándar (las fotografías en JPG y los dibujos en PDF) y están almacenados en la propia estructura de directorios del servidor web. 382 ALFONSO FRAGUAS ET AL. Fig. 5. Documentos digitales del pozo 7326 vinculados a la base de datos: sección arqueológica y fotografías durante el proceso de excavación. 6. SILEX: su servicio web SILEX está organizado como un mashup que combina diversos recursos web a los que se accede mediante diferentes servicios. Hemos utilizado dos tipos de arquitecturas de software diferentes: para los datos temáticos, una Arquitectura Orientada a Recursos (Resource Oriented Architecture, ROA), y para los datos espaciales, una Arquitectura Orientada a Servicios (Service Oriented Architecture, SOA) (ver una comparación en Tabla 5). ROA utiliza el protocolo HTTP, el protocolo de transferencia de datos en que se fundamenta la Web. SOA, por su parte, se basa en el protocolo SOAP (Simple Object Access Proto383 SILEX: LA IDE DE LA MINA NEOLÍTICA DE CASA MONTERO (MADRID) col), implementado a su vez sobre HTTP. La combinación de ambas arquitecturas ya fue ensayada en ARANO13, una IDE dedicada al arte rupestre de África nororiental (Fraguas 2008). Tabla 5. Comparación de ROA y SOA (a partir de Thelin 2003). Mediante ROA se accede directamente a los recursos, mientras que con SOA se llega a estos a través de servicios. La granularidad, es decir, el nivel máximo de división con el que se puede acceder a la información, es más fina en ROA que en SOA, ya que permite acceder al recurso de información sin necesidad de recuperar todo el conjunto y luego filtrarlo. Respecto a la parte del mashup encargada de interactuar con la información temática, basada en la Arquitectura Orientada a Recursos (ROA), quizás supone el aporte tecnológico más novedoso del sistema. Esta ha sido implementada mediante servicios RESTful (Richardson y Ruby 2007), que consiste en un conjunto de directrices para la implementación de la arquitectura REST (Fielding 2000). Según sus diseñadores, ROA tiene cuatro ventajas (Richardson y Ruby 2007: 79): 1) addressability: el servicio web expone al menos un URI para cada fuente de información; 2) connectedness: la representación solicitada incluye URIs de otros recursos y formas con las que se puede construir otro URI, por lo que el cliente puede descubrir nueva información simplemente siguiendo los enlaces; 3) statelessness: cada petición al servicio web ocurre de forma aisThe Spatial Data Infrastructure of North-east African Rock Art (ARANO SDI): http://www.arano.co.nr 13 384 ALFONSO FRAGUAS ET AL. lada a las demás, incluyendo toda la información necesaria para generar una respuesta, es decir, el servidor no requiere datos adicionales acerca de las solicitudes anteriores, aunque si fuera necesario esta se facilitará de nuevo por el cliente; 4) uniform interface: las operaciones que pueden ser ejecutadas son las mismas para cualquier recurso. Los servicios web de tipo RESTful requieren un interfaz uniforme. Este lo proporciona el protocolo HTTP, que consiste en un conjunto de métodos, códigos de estado, cabeceras y contenidos distinguibles por su tipo MIME (Multipurpose Internet Mail Extensions). Los métodos más importantes de HTTP son POST, GET, PUT y DELETE. Pueden compararse respectivamente con las operaciones básicas en bases de datos CRUD (CREATE, READ, UPDATE y DELETE), aunque la correspondencia no es completamente unívoca. El método GET equivale a una operación READ, y DELETE a la operación del mismo nombre. Sin embargo PUT puede resultar en una modificación de un recurso (UPDATE) o en su creación si no este no tiene existencia previa (CREATE). El método POST es un método comodín; debería asociarse a la creación de recursos (CREATE), pero a veces se utiliza para invocar operaciones de modificación y borrado. En este servicio web todos los recursos soportan peticiones HTTP GET a su URI, lo que devuelve una representación de los mismos. La actualización de los recursos mediante modificación, eliminación y creación se consigue con los métodos PUT, POST y DELETE, respectivamente. En las siguientes secciones se describe con algo más de detalle el servicio web REST de SILEX. Para una definición exhaustiva de su funcionamiento debe consultarse el manual técnico del mismo14. En lo referente a la información espacial, se ha optado por una Arquitectura Orientada a Servicios (SOA), en la línea de la Directiva INSPIRE (Lucchi et al. 2008). Esto permite integrar en el módulo espacial de SILEX los servicios y recursos de distintas IDEs e, inversamente, incluir este como un nodo de otras. La arquitectura SOA ha sido implementada mediante servicios OGC basados en el protocolo SOAP, que habilita llamadas independientes de la plataforma. Los servicios estándar definidos por OGC que SILEX utiliza son los siguientes: 14 Aplicación Web Casa Montero: http://www.casamontero.org/webservice/schemas/WS_manual_1.0.pdf 385 SILEX: LA IDE DE LA MINA NEOLÍTICA DE CASA MONTERO (MADRID) 1) Web Map Service (WMS), para servir imágenes de tipo cartográfico (en formato JPG y PNG) generadas a partir de capas georreferenciadas. 2) Web Feature Service (WFS), para la solicitud de fenómenos (información vectorial). El fenómeno recuperado se codifica en formato GML (Geographic Markup Language)15, que es un metalenguaje XML para la descripción de fenómenos geográficos. 3) Web Coverage Service (WCS), para la solicitud de coberturas (información ráster) La cobertura recuperada, por ejemplo en formato GeoTIFF, es útil para su análisis espacial. 4) Catalog Web Service (CSW), para descubrir, hojear y consultar los metadatos de los datos, servicios y otros recursos. SILEX soporta todas las solicitudes estándar de cada uno de los citados servicios OGC. Por ejemplo, WMS tiene dos tipos de solicitud obligatorias: GetCapabilities y GetMap. La primera devuelve el listado de capas geográficas que utiliza el servicio, mientras que la segunda es la encargada de generar los mapas a partir de dichas capas. El URI del GetCapabilities WMS de SILEX es: http://www.casamontero.org/wms?request=getCapabilities Por su parte, el URI del GetMap que permite visualizar la totalidad de los pozos excavados es: http://www.casamontero.org/wms?service=WMS&version=1.1. 0&request=GetMap&layers=CM:pozos&styles=&bbox=455324.782, 4472766.495,455465.555,4472993.947&width=316&height=512&srs =EPSG:23030&format=image/jpeg En resumen, el acceso a la información temática se realiza mediante peticiones tipo RESTful, mientras que la información espacial se recupera a través de peticiones tipo SOAP. Veámoslo con el ejemplo de un pozo concreto, el 3326. Si queremos obtener la información temática asociada a este, utilizaremos el siguiente URI RESTful: http://www.casamontero.org/webservice/pozos/3326.xml Dicho URI nos devolverá los atributos temáticos del pozo 3326, en este caso en formato XML: 15 386 Geographic Markup Language (GML): http://www.opengis.net/gml/ ALFONSO FRAGUAS ET AL. <?xml version=”1.0” encoding=”UTF-8”?> <Pozo xmlns=”http://www.casamontero.org/2007”> <URI>http://www.casamontero.org/webservice/pozos /3326</URI> <Id>3326</Id> <Identificacion> <Anno>2006</Anno> <NumeroPlanimetria>2920</NumeroPlanimetria> </Identificacion> <Dimensiones> <Profundidad>443</Profundidad> <CotaAbsolutaBoca>650.41</CotaAbsolutaBoca> <CotaAbsolutaBase>st</CotaAbsolutaBase> <DimensionBoca>146 x 138</DimensionBoca> <DiametroMaximo>146</DiametroMaximo> <DiametroMinimo>60</DiametroMinimo> </Dimensiones> <Morfologia> <PlantaFosa>tipo2</PlantaFosa> <BaseTipo>nr</BaseTipo> <FondoTipo>nr</FondoTipo> <BocaTipo>tipo3</BocaTipo> <CorteEnBocaTipo>tipo3</CorteEnBocaTipo> <CorteEnBaseTipo>nr</CorteEnBaseTipo> <ParedesTipo>tipo1</ParedesTipo> </Morfologia> <Otros> <Fase>neolitica</Fase> <RepresentacionGrafica>http://www.casamontero.org</ RepresentacionGrafica> </Otros> <Vetas> <NumeroVetas>2</NumeroVetas> </Vetas> <link:Resource xmlns:link=”http://www.antoniomenchero.es/2007/link” href=”http://www.casamontero.org/webservice/pozos/3326 /relationships?show=link”/></Pozo> Si lo que queremos es la información espacial del pozo 3326, utilizaremos un URI SOAP: http://www.casamontero.org/wfs?service=WFS&version=1.0.0&re 387 SILEX: LA IDE DE LA MINA NEOLÍTICA DE CASA MONTERO (MADRID) quest=GetFeature&typeName=CM:pozos&filter=%3CPropertyIsE qualTo%3E%3CPropertyName%3ECM:UE%3C/PropertyName%3E%3CLite ral%3E3326%3C/Literal%3E%3C/PropertyIsEqualTo%3E Esta dará como respuesta un documento GML: <?xml version=”1.0” encoding=”UTF-8”?> <wfs:FeatureCollection xmlns=”http://www.opengis.net/wfs” xmlns:wfs=”http://www.opengis.net/wfs” xmlns:CM=”http://www.casamontero.org/” xmlns:gml=”http://www.opengis.net/gml” xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xsi:schemaLocation=”http://www.casamontero.org/ http://www.casamontero.org:8082/geoserver/wfs?service=WFS&a mp;version=1.0.0&amp;request=DescribeFeatureType&amp;type Name=CM%3Apozos http://www.opengis.net/wfs http://www.casa montero.org:8082/geoserver/schemas/wfs/1.0.0/WFSbasic.xsd”> <gml:boundedBy> <gml:null>unknown</gml:null> </gml:boundedBy> <gml:featureMember> <CM:pozos fid=”pozos.25”> <CM:the_geom> <gml:MultiPolygon srsName=”http://www.opengis.net/gml/srs/epsg.xml#23030”> <gml:polygonMember> <gml:Polygon> <gml:outerBoundaryIs> <gml:LinearRing> <gml:coordinates xmlns:gml=”http://www.opengis. net/gml” decimal=”.” cs=”,” ts=” “>455340.0284,4472953.4771 4 5 5 3 4 0 . 1 3 7 2 6 3 8 7 , 4 4 7 2 9 5 3 . 3 7 2 3 1 2 4 5 5 3 4 0 . 2 2 7 7 5 2 6 9 , 4 4 7 2 9 5 3 . 2 5 1 3 0 1 1 4 5 5 3 4 0 . 2 9 7 4 8 5 2 3 , 4 4 7 2 9 5 3 . 1 1 7 2 5 1 7 4 5 5 3 4 0 . 3 4 4 6 2 6 4 5 , 4 4 7 2 9 5 2 . 9 7 3 6 9 1 3 7 455340.36793584,4472952.8243979 455340.3668,4472952.6733 4 5 5 3 4 0 . 3 6 2 1 2 5 1 9 , 4 4 7 2 9 5 2 . 5 9 8 2 9 8 7 6 4 5 5 3 4 0 . 3 4 4 9 6 1 0 1 , 4 4 7 2 9 5 2 . 5 2 5 1 3 8 4 5 4 5 5 3 4 0 . 3 1 5 7 9 1 8 6 , 4 4 7 2 9 5 2 . 4 5 5 8 8 3 8 5 4 5 5 3 4 0 . 2 7 5 4 4 0 9 8 , 4 4 7 2 9 5 2 . 3 9 2 4 8 9 4 8 4 5 5 3 4 0 . 2 2 5 0 4 7 1 6 , 4 4 7 2 9 5 2 . 3 3 6 7 4 4 4 9 4 5 5 3 4 0 . 1 6 6 0 3 2 6 5 , 4 4 7 2 9 5 2 . 2 9 0 2 2 2 1 6 455340.10006299,4472952.25423545 455340.029,4472952.2298 4 5 5 3 3 9 . 8 4 8 2 8 2 5 2 , 4 4 7 2 9 5 2 . 2 0 1 2 7 2 8 8 388 ALFONSO FRAGUAS ET AL. 4 5 5 3 3 9 . 6 6 5 3 3 2 6 2 , 4 4 7 2 9 5 2 . 2 0 2 6 6 6 3 8 4 5 5 3 3 9 . 4 8 5 0 7 0 6 5 , 4 4 7 2 9 5 2 . 2 3 3 9 4 3 0 2 455339.31234465,4472952.29426164 455339.1518,4472952.382 4 5 5 3 3 9 . 1 0 5 3 3 8 3 6 , 4 4 7 2 9 5 2 . 4 1 0 9 3 3 8 1 4 5 5 3 3 9 . 0 6 4 5 8 6 5 9 , 4 4 7 2 9 5 2 . 4 4 7 4 7 3 4 2 4 5 5 3 3 9 . 0 3 0 7 7 5 0 7 , 4 4 7 2 9 5 2 . 4 9 0 5 1 5 6 2 4 5 5 3 3 9 . 0 0 4 9 2 4 6 5 , 4 4 7 2 9 5 2 . 5 3 8 7 6 0 8 8 4 5 5 3 3 8 . 9 8 7 8 1 5 8 , 4 4 7 2 9 5 2 . 5 9 0 7 5 2 5 7 4 5 5 3 3 8 . 9 7 9 9 6 5 0 7 , 4 4 7 2 9 5 2 . 6 4 4 9 2 0 9 8 4 5 5 3 3 8 . 9 8 1 6 0 9 4 8 , 4 4 7 2 9 5 2 . 6 9 9 6 3 0 6 2 455338.9926994,4472952.75322972 455339.0129,4472952.8041 455339.0934,4472953.1438 455339.10495199,4472953.21326187 4 5 5 3 3 9 . 1 2 7 4 4 1 8 , 4 4 7 2 9 5 3 . 2 7 9 9 8 9 7 3 4 5 5 3 3 9 . 1 6 0 2 9 2 8 8 , 4 4 7 2 9 5 3 . 3 4 2 2 7 3 4 5 5 3 3 9 . 2 0 2 6 6 3 0 9 , 4 4 7 2 9 5 3 . 3 9 8 5 1 5 0 2 455339.25346625,4472953.44727401 455339.3114,4472953.4873 4 5 5 3 3 9 . 4 0 7 7 5 1 , 4 4 7 2 9 5 3 . 5 3 5 8 9 6 3 6 4 5 5 3 3 9 . 5 1 0 6 2 8 4 1 , 4 4 7 2 9 5 3 . 5 6 8 4 7 4 8 8 4 5 5 3 3 9 . 6 1 7 3 8 9 2 9 , 4 4 7 2 9 5 3 . 5 8 4 1 9 8 6 2 4 5 5 3 3 9 . 7 2 5 2 9 0 9 3 , 4 4 7 2 9 5 3 . 5 8 2 6 6 3 6 1 4 5 5 3 3 9 . 8 3 1 5 6 1 3 3 , 4 4 7 2 9 5 3 . 5 6 3 9 0 9 3 1 4 5 5 3 3 9 . 9 3 3 4 7 0 3 7 , 4 4 7 2 9 5 3 . 5 2 8 4 1 7 5 1 455340.0284,4472953.4771</gml:coordinates> </gml:LinearRing> </gml:outerBoundaryIs> </gml:Polygon> </gml:polygonMember> </gml:MultiPolygon> </CM:the_geom> <CM:CM:UE>3326</CM:UE> </CM:pozos> </gml:featureMember> </wfs:FeatureCollection> El servicio web de información temática trabaja con tres tipos de recursos de información: entidades, relaciones y vistas. Los dos primeros están alojados en la base de datos (ver apartado 4) y son accesibles de forma directa mediante sus correspondientes URIs. Las vistas son subconjuntos de entidades que se seleccionan mediante la aplicación de una serie de criterios, relativos tanto al valor de sus atributos como a los roles de sus relaciones con otras entidades. Las herramientas de creación de vistas son de dos tipos: filtros y consultas. Ambas se expresan en forma de URIs y utilizan el lenguaje de consulta XQuery. 389 SILEX: LA IDE DE LA MINA NEOLÍTICA DE CASA MONTERO (MADRID) Los filtros se incluyen como parámetros de consulta en los URIs. Estos son transformados a XQuery por medio de una XSLT, una hoja de transformación XML. Los filtros devuelven conjuntos de entidades de tres maneras posibles: 1. Listas de entidades por tipo (no por tipo general) según el patrón de URI http://www.casamontero.org/webservice/{entityA} ?prop_A1=expr_a1&prop_A2=expr_a2&, que corresponde a las entidades del tipo A cuyas propiedades a1, a2, ... verifican las expresiones correspondientes. Si no hubiese parámetros de consulta sobre las propiedades de las entidades A, este URI devolvería todas las entidades. 2. Relaciones de una entidad con un cierto tipo de entidades según el patrón de URI http://www.casamontero.org/webser vice/{entityB}/related-to/{entityA}/{entityA-local -id}? prop_B1=expr_b1&prop_ B2=expr_b2&...&role = uri_role, que corresponde a las entidades del conjunto B cuyas propiedades b1 y b2 verifican las expresiones correspondientes que estén relacionadas directa o indirectamente con la entidad A cuyo identificador es IdA, siendo el rol de la relación aquel cuyo URI es uri_role. La especificación del rol es opcional. Si no hubiese parámetros de consulta sobre las propiedades de las entidades B, este URI devolvería todas las entidades B relacionadas con la entidad A en cuestión. 3. Relaciones entre entidades de dos tipos según el patrón de URI h t t p : / / w w w . c a s a m o n t e r o . o r g /webservice/{entityB}/related-to/{entityA}? prop_A1=expr_a1&prop_A2=expr_a2&...prop_B1=expr_b1& prop_B2=expr_b2&...&role= uri_role, que en lenguaje natu- ral se expresaría como “¿qué entidades del conjunto A que tienen propiedades a1, a2, ... que satisfacen respectivamente las expresiones expr_a1, expr_a2, ... están relacionadas con entidades del conjunto B cuyas propiedades b1, b2, ... satisfacen respectivamente las expresiones expr_b1, expr_b2, ... y tal que el rol de las relaciones es aquel cuyo URI es uri_role?”. La especificación del rol es opcional. Si no hubiese parámetros de consulta sobre las propiedades de las entidades A y B, este URI devolvería todas las entidades A relacionadas con cualesquiera entidades B. Pongamos el siguiente URI como ejemplo del tercer tipo de filtro: 390 ALFONSO FRAGUAS ET AL. http://www.casamontero.org/webservice/pozos/related-to/ bn1gs?pozo.dimensiones.profundidad=. gt 100&bn1g.dimensiones. longitud=. lt 100 Este devolvería, en un documento XML, un listado de pozos con profundidad mayor que 100 relacionados con hallazgos de tipo BN1G cuya longitud fuese inferior a 100. La segunda forma de generar vistas es realizar consultas arbitrarias. Las consultas se formulan directamente mediante XQuery. Para proteger el sistema de posibles ataques maliciosos contra el servidor de SILEX, este tipo de consultas debe ser validado por los administradores del sistema previamente a su inclusión en la lista de consultas predefinidas. Un recurso puede tener múltiples representaciones (por ejemplo, como documento XML, HTML, PDF, etc.). Esta filosofía permite que con el mismo URI, complementado con la indicación de la extensión deseada, podamos obtener el documento en diversos formatos: en hipertexto para un navegador; en formato CSV para una hoja de cálculo, una base de datos personal o un programa de estadística; o en PDF para obtener fichas imprimibles de las entidades arqueológicas. La representación por defecto es en XML, que es la misma que se utiliza en la base de datos. Dicha representación XML es la que se devuelve cuando no se explicita la extensión en el URI o cuando este se completa con la extensión .xml. Si se utiliza la extensión .csv se devuelve una representación en formato CSV y la extensión .pdf permite obtener una representación como documento PDF. 7. La interfaz web de usuario para SILEX La interfaz web de usuario (Web User Interface, WUI) es una aplicación web basada en navegador. El navegador tiene que implementar XHTML (Extensible Hypertext Markup Language, versión extendida de HTML) y JavaScript. Se trata de un cliente del servicio web comentado anteriormente, pudiendo de esta manera los usuarios navegar, consultar y actualizar los recursos de información despreocupándose del funcionamiento del propio servicio web. De esta manera, hemos desarrollado una aplicación rica de Internet (Rich Internet Aplication, RIA) que combina la tecnología AJAX (Asynchronous JavaScript And XML), XHTML y CSS (Cascading Style Sheets). AJAX interactúa con DOM (Document Object Model) a través del objeto XMLHttpRequest, que los navegadores contienen desde el año 2002. 391 SILEX: LA IDE DE LA MINA NEOLÍTICA DE CASA MONTERO (MADRID) La interfaz tiene un menú con enlaces a páginas estáticas descriptivas sobre las características principales de SILEX y a las listas de elementos de cada tipo de entidad. Además, hay un submenú para realizar consultas. Para ello, hay una serie de formularios que generan URIs para solicitar información al servicio web. Por ejemplo, la URL del ejemplo descrito en la consulta del apartado 5 se puede crear con estos formularios (Fig. 6). La lista de las unidades devueltas por una consulta es un archivo XML que se visualiza por defecto como una forma XHTML + JavaScript que se genera de forma dinámica por medio de las definiciones XForms y que se puede convertir en un documento PDF o CSV. Además, hay un visor geográfico para mostrar las capas espaciales. Uno puede “pinchar” en una determinada entidad geográfica y obtener la información temática vinculada a ella. A la inversa, cuando el resultado de una consulta temática involucra a entidades que tienen representación espacial, se puede ver su distribución en el visor. Fig. 6. Formulario para la generación de consultas temáticas. 392 ALFONSO FRAGUAS ET AL. 8. perspectivas: SILEX y la web semántica La World Wide Web ha ido cambiando desde su nacimiento y, con ella, la forma de publicar la información, incluida la arqueológica. En una primera fase, la Web 1.0, desde principios de los años 90, los documentos son de tipo estático, sin posibilidades de interacción del usuario más allá de los enlaces predefinidos en el diseño de las páginas. Si bien es cierto que puede presentarse información alojada en una base de datos, esta se incluye en la propia página web. En cierto sentido, la Web 1.0 sería la versión digital de la biblioteca analógica. Los ejemplos arqueológicos de este tipo de documentos estáticos son innumerables. En lo que a la industria lítica prehistórica respecta, dos ejemplos son la página de localizaciones espaciales de materiales silíceos arqueológicos centroeuropeos16, o la dedicada a la industria lítica prehistórica de la región de los Montes Bakony, en Hungría17. Desde 1995 se puede hablar de la Web 1.5, que posibilita la existencia de documentos dinámicos, generados a partir de la interacción del usuario con los contenidos de las páginas. En lo que a sistemas de información respecta, ello hace posible la búsqueda, selección y extracción de contenidos alojados en bases de datos, habitualmente de tipo relacional. Es el caso del sitio web del yacimiento de Çatalhöyük18 o del Corpus de Pintura Rupestre Levantina Martín Almagro Basch19. En 2004 surge la Web 2.0, concebida como un repositorio compartido de información accesible, no sólo por los internautas, sino también por los propios ordenadores, lo que posibilita realizar búsquedas sobre documentos web mediante lenguajes de consulta, como por ejemplo XQuery. Además, cobra un papel fundamental la incorporación de metadatos a la información web, para su adecuada identificación y clasificación, con lo que se abre la puerta a la denominada Web Semántica20. Desde 2006, se ha ido fraguando en el seno de la Web Semántica el concepto de datos enlazados (linked data), presentado públicamente en 2009 por Tim Berners Lee. Dicho concepto se refiere al desplazamiento de una Web basada en los documentos (Web 1.0) a una red basada en de los datos (Web Semántica). FlintSource.NET: http://www.flintsource.net/ Prehistoric industrial district in the Bakony Mountains: http://www.ace.hu/szentgal/ 18 Çatalhöyük Databases On-line: http://www.catalhoyuk.com/database/catal/ 19 Corpus Digital de Pintura Rupestre Levantina: http://www.prehistoria.ih.csic.es/AAR/ 20 Web Semántica: http://www.w3.org/standards/semanticweb/ 16 17 393 SILEX: LA IDE DE LA MINA NEOLÍTICA DE CASA MONTERO (MADRID) Veámoslo con un ejemplo. Si en un buscador no semántico (como por ejemplo Google) solicitamos las páginas relacionadas con la palabra “flint” (“sílex” en inglés), nos devolverá unos 26.200.000 enlaces, algunos tan variopintos como una empresa dedicada a pavimentos, la ciudad de Flint (Michigan) o una distribuidora de artículos náuticos. Es cierto que se puede acotar la búsqueda incluyendo el término “prehistory”, pero haciendo esto estaremos obviando todas las páginas en las que no aparezca este literalmente. Por el contrario, esta misma búsqueda sobre un buscador semántico (por ejemplo, Hakia) devolverá enlaces cuyo contenido esté semánticamente relacionado con el significado de los términos “flint” y “prehistory” y, por tanto, el resultado estará más ajustado a la temática del aprovechamiento del sílex en la Prehistoria. La Web Semántica no sólo perfecciona las búsquedas, sino que abre nuevas posibilidades, como describen los casos de usos mostrados por la WWW21. La tecnología que hace posible los datos enlazados en la Web Semántica son los documentos RDF (Resource Description Framework). RDF es un metalenguaje XML definido por el W3C en 1999. Mediante RDF se definen los metadatos de un recurso ubicado en la Web, lo cual permite que sea localizable, por ejemplo, mediante lenguajes como SPARQL (SPARQL Protocol and RDF Query Language) un lenguaje de consulta sobre grafos RDF. Aunque es una tecnología aún en fase de gestación, ya está interviniendo en la transformación de la Web en una gran base de datos interconectada donde no sólo se almacene información, sino que también se genere conocimiento. Ello se lleva a cabo mediante las denominadas ontologías, las cuales consisten en esquemas conceptuales que permiten a los sistemas informáticos inferir respuestas a partir de la información recuperada, esto es, descubrir nuevas relaciones entre los datos no imaginadas por el generador de los mismos. Las ontologías se pueden definir mediante OWL, un metalenguaje XML definido por el W3C en 2002. Tanto SILEX como el ya mencionado ARANO son sistemas de información que van en la dirección de la Web Semántica, aunque sin pertenecer estrictamente a ella. Aunque la arquitectura de SILEX se asemeja a la de la Web Semántica, no sigue los estándares propios de esta, como RDF y OWL. La inclusión de SILEX en la Web Semántica tendría que pasar por la migración y enlace de los datos, actualmente en formato XML, mediante RDF y por la definición de ontologías mediante OWL. Semantic Web Case Studies and Use Cases: http://www.w3.org/2001/sw/sweo/public/UseCases/ 21 394 ALFONSO FRAGUAS ET AL. 9. Conclusiones Los postulados metodológicos de SILEX se sitúan en la corriente principal de los sistemas de información distribuidos. En fecha tan reciente como 2009, durante la conferencia “The Great Unveiling”, celebrada el 4 de febrero en Long Beach (CA, USA)22, Tim Berners-Lee, el padre de la WWW, pidió al público que gritara “raw data now!”, en el contexto de los datos enlazados (Linked Data) y la Web Semántica. SILEX se sitúa en esta línea, al liberar la información primaria del yacimiento arqueológico de Casa Montero. SILEX define un modelo de datos para describir y organizar la complejidad de diferentes tipos de entidades arqueológicas (depósitos, pozos, artefactos líticos, etc.) y las relaciones entre ellos. Incluye dos “ontologías” arqueológicas bien establecidas, como el sistema de Harris para describir y relacionar las unidades estratigráficas y el sistema lógico-analítico para la clasificación de industria lítica. El modelo de datos se ha implementado por medio de un formato estándar basado en XML. Por otra parte, SILEX es un sistema distribuido que ofrece esta información a través de Internet. El acceso a la información se realiza mediante la tecnología estándar de la Web. Cada recurso temático de información es localizable a través de un URI y accesible mediante un simple navegador de Internet, gracias al uso del protocolo HTTP. El framework de desarrollo web permite compartir datos, por lo que los arqueólogos pueden publicar la información producida por ellos mismos o, inversamente, recuperar aquella creada por los demás y analizarla con sus propias herramientas y criterios. Se ha desarrollado una aplicación web de administración para editar, guardar y publicar los datos arqueológicos a través del navegador web, lo que hace que los arqueólogos no tengan que conocer el funcionamiento interno del framework ni el formato XML y tampoco necesiten instalar aplicaciones propietarias en su sistema. Por otra parte, una aplicación web permite al arqueólogo consultar el conjunto completo de datos y recuperar el subconjunto que le interese. Por medio del uso de herramientas FOSS, hemos construido un mashup que da acceso a la información geográfica a través de servicios estándar definidos por OGC y adoptados por la Directiva INSPIRE de la Unión Europea. Tim Berners-Lee on the next Web: http://www.ted.com/talks/tim_berners_lee_on_the_next_web.html 22 395 SILEX: LA IDE DE LA MINA NEOLÍTICA DE CASA MONTERO (MADRID) SILEX es accesible en Internet23. SILEX no es un sistema de información aislado, sino que pretende convertirse en un nodo de IDEs más generales, como la IDEE (la IDE española de información geográfica institucional), y la IDE Arqueológica, impulsada y diseñada desde el Centro de Ciencias Humanas y Sociales (CCHS) del Consejo Superior de Investigaciones Científicas (CSIC) para la gestión y publicación de información espacial generada por diversos proyectos arqueológicos del CSIC24. En esta misma línea, el 28 de mayo de 2010 se constituyó el subgrupo el trabajo nº 12 sobre Patrimonio Histórico dentro del grupo de trabajo de la IDEE. Esta iniciativa se hace eco de la Directiva INSPIRE, que en su Anexo I (“Datos de referencia”) incluye los lugares protegidos por la legislación de los países comunitarios, entre los cuales se incluyen los yacimientos arqueológicos. Aunque SILEX está dedicado a un yacimiento específico y ha sido diseñado según las características particulares de este, puede servir como ejemplo para futuros sistemas de información de otros sitios arqueológicos. Debido a su flexibilidad, puede ser desarrollado para datos de otros yacimientos, así como incorporar otros tipos y niveles de información. 10. Anexo: Software utilizado en el diseño de SILEX 1. Apache Tomcat, como un contenedor de servlets para aplicaciones web de montaje. 2. GeoServer, como un servidor para proporcionar capas de información geográfica a través de estándares OGC como WMS, WFS y WCS. 3. OpenLayers, como una biblioteca de Javascript para mostrar mapas dinámicos en páginas web. 4. GeoNetwork, para los metadatos que ofrece según las especificaciones del OGC CSW. 5. PostgreSQL y PostGIS, para el almacenamiento y la recuperación de datos y metadatos espaciales. 23 24 396 SILEX: http://www.casamontero.org/ide.html Infraestructura de Datos Espaciales de Arqueología: http://www.idearqueologia.org/ ALFONSO FRAGUAS ET AL. 6. Apache Cocoon, como un entorno de publicación web basados en XML, para el diseño de aplicaciones web, tanto el servicio web y la interfaz web para acceder a datos temáticos. 7. XForms Orbeon, para la conversión de XForms en formas multinavegador basado en HTML y Javascript. 8. Saxon, un motor de transformación XSLT, para convertir los documentos XML. 9. eXist, una base de datos nativa XML, para el almacenamiento de datos temáticos, con un motor de consulta basada en XQuery. 397