Etiqueta: interoperabilidad

Real-time Open Data con iCMS. Integración con Virtuoso

11 abr 2012

Con el objetivo de habilitar diversos mecanismos de acceso a la información publicada a través de la Interfaz de Interoperabilidad de Contenidos Web (iCMS), además del end-point opensearch que conforma la propia interfaz de iCMS, se han implementado mecanismos de integración con servidores semánticos (en este post nos centraremos en Virtuoso) . Entre otras características, estos sistemas permiten la utilización del lenguaje estándar SPARQL para la consulta de los datos almacenados.

Entre las funcionalidades de iCMS encontramos la gestión de eventos asociados a las colecciones de datos (al iniciar y al modificar las colecciones), permitiendo vincular scripts (en la versión actual de iCMS se da soporte a la inyección de scripts Groovy, aunque en el Roadmap de la solución se encuentra el soporte para otras tecnologías, como pueden ser Python o Ruby) a dichos eventos.

El mecanismo de integración entre iCMS y Virtuoso se apoya en esta funcionalidad, es decir, se trata de un script Groovy que incluye toda la lógica necesaria para conectar con virtuoso, crear los grafos, obtener los recursos/datos (desde los back-ends a través de los drivers iCMS) cuya modificación ha lanzado el evento y finalmente actualizar la información en Virtuoso.

La actualización de los datos en Virtuoso se realiza mediante la ejecución de sentencias INSERT/DELETE de SPARQL a través de los servicios desplegados por Virtuoso.

En la parametrización de las colecciones de datos, cuyo contenido va a ser volcado en Virtuoso, es preciso establecer la configuración del evento que dispara el script Groovy que incluye la lógica de integración con el servidor semántico. Esta configuración sigue el siguiente modelo:

    event {
       my_event_script {
           path = "/opt/icms/data/scripts/groovy_virtuoso.groovy"
           urlSubscription = "http://localhost:8080/icms"
           collections = "<nombre_coleccion>"
           parameters {
              virtuoso_url = "jdbc:virtuoso://localhost:1111"
              virtuoso_usr = "icms_virt"
              virtuoso_psw = "icms_virt"
              virtuoso_graph = "<http://nombre_grafo>"
           }
      }
    }

La configuración anterior le indica a iCMS que cuando haya algún cambio en los recursos de la colección definida (“nombre_colección” en el ejemplo) se ejecute el script groovy_virtuoso.groovy con los parámetros dados. Dicho script contiene toda la lógica necesaria para rellenar Virtuoso con los nuevos cambios.

En el siguiente gráfico se muestra a alto el proceso de integración entre iCMS y el servidor semántico Virtuoso:

Proceso de integración entre iCMS y Virtuoso

Real-time Open Data con iCMS

29 mar 2012

En  octubre de 2007, en una de las conferencias de la SunLight Foundation se discutía sobre el modelo a seguir por los Organismos Públicos para realizar la apertura de datos almacenados electrónicamente. En este evento tienen su origen un conjunto de principios básicos a tener en cuenta en diseño de cualquier iniciativa de apertura de datos (que hoy día son incluidos en la Ley de Transparencia de diversos Organismos Públicos):

  • Completeness. Los Datos deben ser lo más completos que sea posible.
  • Primacy. Deben ser obtenidos en su origen, evitando la transformaciones intermedias.
  • Timeliness. Publicados en tiempo real, o actualizados siempre sea posible.
  • Ease of Physical and Electronic Access. Fácilmente accessibles.
  • Machine readability. Procesables electrónicamente.
  • Non-discrimination. Accesibles sin discriminación (disponibles para todos).
  • Use of Commonly Owned Standards. Publicados en formatos no proprietarios.
  • Licensing. Datos libres (el licenciamiento utilizado debe facilitar el acceso libre a los mismos).
  • Permanence. Se debe garantizar la permanencia en el tiempo de los conjuntos de datos publicados.
  • Usage Costs. Sin coste.

Es esta ocasión nos centraremos en los tres primeros enunciados (datos completos, obtenidos directamente desde la fuente y actualizados), pues representan (al menos, desde mi punto de vista) algunos de los aspectos más destacables de la Interfaz de Interoperabilidad de Contenidos Web (iCMS), esto es, la posibilidad de publicar conjuntos de datos obteniéndolos directamente desde su fuente, sin necesidad de recurrir a procesos de consolidación de los datos en repositorios centralizados (por ejemplo, mediante ETLs). De esta forma, siempre que se cumplan determinadas condiciones (que son establecidas en el proceso de configuración del conjunto de datos), los datos son ofrecidos completamente actualizados. Obviamente, para ofrecer esta posibilidad, ha sido necesario recurrir a mecanismos de caché e indexación con el objetivo de que el acceso a los datos no penalice el rendimiento de los back-ends (sistemas donde son generados/almacenados los datos).

Hace unas semanas, tuve la suerte de asistir como oyente al evento Gobierno Abierto: “Reto y Oportunidad” , donde en una de las mesas redondas uno de los ponentes presentaba un concepto que enmarca claramente las características descritas anteriormente: Real-Time Open Data.

Todo esto es posible gracias al sistema de notificaciones implementado en iCMS. En primer lugar, los back-ends notifican al servidor iCMS (a través de los drivers iCMS) los cambios que se producen en los datos,  con el objetivo de las actualizaciones sean indexadas. Por otro lado,  una vez indexados los cambios, el servidor iCMS procede a notificar dicho cambio a todos los sistemas suscritos al conjunto de datos en el que se ha producido el evento. Este proceso es descrito en el siguiente diagrama:

notificaciones icms

En el siguiente gráfico se presenta a muy alto nivel el rol que desempeña iCMS dentro de una iniciativa de apertura de datos:

Arquitectura Open Data basada en iCMS

En futuras entradas, se detallará el resto de capacidades/funcionalidades de iCMS, así como los procesos de integración con CKAN y Virtuoso.

Plugtest de XAdES – Firmas electrónicas avanzadas para documentos en formato XML

26 mar 2012

Como anunciábamos en el post de PAdES, el ETSI (Instituto Europeo para la Normalización de las Telecomunicaciones – European Telecommunications Standards Institute) ha organizado un nuevo evento “Plugtest” para firmas con formato XAdES (firma avanzada para ficheros XML) el cual está en activo desde el 14 de Marzo y finalizará el 28 de este mismo mes.

Este evento tiene como objetivo la validacióna distancia según los test propuestos por ETSI en las firmas XAdEs ( TS 101 903) y el perfil de referencia XAdES (TS 103 171).
Estas pruebas proveerán una cobertura completa de las dos especificaciones citadas incluyendo la prueba de la evolución de las firmas, simulando situaciones reales.

El evento “Plugtest” permitirá a los participantes realizar 4 tipos de tests (interoperabilidad y conformidad):

  • Tests de generación y verficación cruzada (positivo)
  • Tests de solo verificación (negativo)
  • Tests de actualización de firma.
  • Test de conformidad en el perfil de referencia de firma en XAdES.


Plugtest XAdES

El propósito del evento es:

  • Permitir a los participantes asegurar el nivel de interoperabilidad de XAdES.
  • Identificar temas adicionales que deberían tenerse en cuenta en futuras actividades de estandarización de XAdES.
  • Mejorar la calidad de las especificaciones XAdES.
  • Facilitar la introducción de las firmas XAdES, proveyendo los medios para solucionar los problemas de interoperabilidad antes del lanzar el despliegue…

Se puede obtener mayor información del evento en el portal de plugtests para firma electrónica:  http://xades-portal.etsi.org/pub/index.shtml

Al igual que en nuestra web, podemos dar una pequeña descripción de los perfiles según el nivel de protección ofrecido. Cada perfil incluye y extiende al previo:

  • XAdES-BES, forma básica que simplemente cumple los requisitos legales de la Directiva para firma electrónica avanzada.
  • XAdES-EPES, forma básica a la que se la ha añadido información sobre la política de firma.
  • XAdES-T (timestamp), añade un campo de sellado de tiempo para proteger contra el repudio.
  • XAdES-C (complete), añade referencias a datos de verificación (certificados y listas de revocación) a los documentos firmados para permitir verificación y validación off-line en el futuro (pero no almacena los datos en sí mismos).
  • XAdES-X (extended), añade sellos de tiempo a las referencias introducidas por XAdES-C para evitar que pueda verse comprometida en el futuro una cadena de certificados.
  • XAdES-X-L (extended long-term), añade los propios certificados y listas de revocación a los documentos firmados para permitir la verificación en el futuro incluso si las fuentes originales (de consulta de certificados o de las listas de revocación) no estuvieran ya disponibles.
  • XAdES-A (archivado), añade la posibilidad de timestamping periódico (por ej. cada año) de documentos archivados para prevenir que puedan ser comprometidos debido a la debilidad de la firma durante un periodo largo de almacenamiento.

Para aquel que esté interesado, hay disponible una serie de kit’s de integración de descarga gratuita para java, .NET y php en nuestro portal para desarrolladores  developers.viafirma.com para firmar electrónicamente en formato XAdES.

Portal de Datos Abiertos de la Junta de Andalucía

03 ene 2012

Hace pocos días salía a producción la primera fase del Portal de Datos Abiertos de la junta de Andalucía. Esta primera fase del proyecto tiene como objetivo ofrecer una aproximación a los datos disponibles en la Junta de Andalucía, así como establecer un punto único de acceso a los mismos. Los servicios ofrecidos en esta etapa pueden catalogarse como 2 estrellas, según la clasificación del Open Linked Data propuesta por Tim Berners-Lee.

Para mediados de 2012 será publicada la versión final del Portal, en la que se habrán realizado las siguientes actuaciones:

  • Modelado semántico de los datos.
  • Ampliar el catálogo de datos disponible.
  • Dotar al Portal de la infraestructura necesaria para ofrecer conjuntos de datos de 4 y 5 estrellas. El Portal ofrecerá un SPARQL endpoint (implementado con Virtuoso), así como servicios de suscripción a los contenidos (para lo que se habilitará un servidor iCMS público).
  • Incorporar un conjunto de aplicaciones de ejemplo y documentación técnica destinada a desarrolladores, con el objetivo de facilitar la construcción de sistemas que reutilicen la información disponible.

En el siguiente diagrama se muestra la infraestructura tecnológica (presentada por la Junta de Andalucía en el evento Opendatasev  que tuvo lugar el pasado noviembre) que dará soporte a la iniciativa de apertura de datos en la Junta de Andalucía:

Arquitectura tecnológica Portal Datos Abiertos de la JA

Apertura de datos con iCMS

13 jul 2011

Open Data es una iniciativa que tiene como meta que ciertos contenidos estén disponibles para todo el mundo, sin limitaciones o restricciones de cualquier tipo (aunque como veremos más adelante existen licencias para regular el acceso y uso que se hace de la información).

En el caso concreto del Sector Público, las iniciativas de apertura de datos plantean una serie interrogantes: ¿qué información es reutilizable?, ¿en qué condiciones se puede ofrecer esta información?, ¿qué es posible hacer con la información publicada?. Para dar respuesta a esta estas cuestiones surge la Ley 37/2007 que regula la Reutilización de Información del Sector Público (RISP). Además, en este contexto nace el proyecto Aporta (www.aporta.es), que tiene la misión de establecer una cultura de reutilización en las AAPP (realizando actividades de divulgación, capacitación, realización de guías de reutilización, etc.).

La Ley 37/2007 tiene como objetivo definir las condiciones para la publicación de la información que esté en poder de las Administraciones Públicas, así como fomentar el desarrollo de iniciativas que persigan la reutilización de dicha información. Es importante destacar que la 37/2007 excluye de esta reutilización el intercambio de información entre AAPP (como queda reflejado en el Artículo 3. “Ámbito objetivo de aplicación”), para el que ya existe una normativa específica (por ejemplo, el Esquema Nacional de Interoperabilidad – ENI).

En 2008, la Junta de Andalucía inicia (en colaboración con Viavansi) el desarrollo de lo que podemos considerar los cimientos de su estrategia de apertura de datos, esto es, la Interfaz de Interoperabilidad de Contenidos Web (iCMS). Con este desarrollo se persigue el establecimiento (en base a estándares reconocidos) de protocolos, formatos y vocabularios que permitan el acceso a los contenidos susceptibles de ser publicados que se encuentran disponibles en la heterogeneidad de sistemas de la Junta de Andalucía.

Desde el punto de vista funcional podemos destacar las siguientes funcionalidades de iCMS:

  • La información reside los sistemas origen, por lo que no es necesario replicarla para su almacenamiento en un sistema centralizado.
  • Para permitir que los contenidos de un sistema sean accesibles por iCMS sólo es necesario contar con un “driver” o adaptador (aplican los formatos y vocabularios a la información). En la mayoría de los casos no es necesario realizar ningún tipo de modificación en dichos sistemas.
  • Los sistemas interesados (por ejemplo, reutilizadores de la información) en consumir cierta información pueden suscribirse a las colecciones pertinentes (datasets) y, cada vez que se producen cambios en las mismas, el servidor iCMS correspondiente realiza notificaciones dichos sistemas.

En próximos artículos, profundizaremos en el proceso de implantación de iCMS como solución de para la “recolección” de los contenidos susceptibles de ser publicados dentro de una inciativa de apertura de datos.

Arranca el proyecto de desarrollo de la intranet de TP Ferro en Drupal

07 jun 2010

Recientemente en VIAVANSI hemos iniciado un proyecto para TP Ferro. Esta empresa es la concesionaria de la construcción, mantenimiento y gestión del tramo de tren de alta velocidad que une Figueres (Girona) y Perpignan (Francia).

El proyecto es realmente interesante, con características como las que siguen:

  • TP Ferro dispone de sistemas de información especializados, para mantenimiento, explotación, etc.
  • Se desea construir una intranet que se integre con estos sistemas especializados siguiendo un paradigma SOA: la información reside en un sistema especializado y es consumida (REST) por un nodo central (intranet), por lo que realmente la complejidad del proyecto está más dirigida a resolver la problemática de integración de sistemas.
  • La intranet además debe resolver problemáticas típicas como la gestión de recursos humanos, gestión documental (para lo que se ha escogido Alfresco que se integrará vía CMIS), agendas, gastos, reporting…
  • Se nos permite trabajar con metodologías ágiles (Scrum), algo novedoso al trabajar principalmente con Administraciones públicas que requieren metodologías tradicionales como Metrica v3.
  • Estamos valorando utilizar un componente central que gestione la interoperabilidad entre los distintos sistemas, para lo que podría utilizarse iCms si la dirección del proyecto lo estima oportuno.
  • Se utilizará VIAFIRMA para garantizar la integridad de los documentos críticos, realizando un proceso de firmado digital en servidor.
  • La dirección técnica reside en TP Ferro en colaboración con consultores de Klicap.
  • Hemos podido percibir un excelente nivel de preparación del proyecto por parte del cliente: ya se dispone de un pre-desarrollo basado en Drupal que resulta ciertamente útil, mind maps para la definición de entidades, etc. En definitiva, un cliente que apuesta por el proyecto lo cual obviamente favorece el éxito del proyecto.

Para construir ese nodo central hemos optado por Drupal, que es una excelente base sobre la que inyectar lógica en base a módulos y además es una herramienta ya perfectamente conocido por el cliente.

La Junta de Andalucía destaca iCMS

27 abr 2010

El pasado 13 de abril de 2010 Pilar Rodríguez, Secretaria General de Telecomunicaciones y Sociedad de la Información de la Consejería de Economía, Innovación y Ciencia de la Junta de Andalucía, ha descrito en una entrevista para SOCINFO las iniciativas del organismo en relación al Esquema Nacional de Interoperabilidad (ENI).

Tal y como menciona Pilar Rodríguez en la citada entrevista, VIAVANSI ha sido un actor importante en las nuevas iniciativas de interoperabilidad en la Junta de Andalucía, al ser la empresa desarrolladora de iCMS, sistema para la interoperabilidad de contenidos web.

[...]