Modelos

El "provenance" de un recurso se ha vuelto una necesidad en un gran número de aplicaciones científicas y sociales en los últimos años, particularmente en escenarios de publicación de noticias y blogs, donde juega un papel clave a la hora de determinar las fuentes de la información, el proceso que llevó a la publicación de la noticia o las distintas referencias utilizadas para la composición de la noticia.
Existen varias propuestas de modelos de provenance, y hemos seleccionado el Open Provenance Model (OPM) por varias razones. En primer lugar, OPM proviene de varios aos de discusión y esfuerzo por parte de la comunidad científica, siendo adoptado por numerosas aplicaciones (como OurSpaces, Tupelo, Taverna o eBioFlow). En segundo lugar, OPM ha sido seleccionado por el W3C Provenance Incubator Group como modelo de referencia para establecer equivalencias o mappings entre vocabularios, sentando las bases hacia su estandarización definitiva. Además, el grafo de provenance producido por el modelo es fácilmente legible por cualquier usuario.

Este trabajo se ha desarrollado siguiendo la metodología NeOn , resutilizando ontologías y vocabularios ya existentes y teniendo en cuena el trabajo y requisitos establecidos por el W3C Incubator Group en el Escenario de agregación de noticias.
La documentación de la red está disponible aqui. La red de ontologías se divide en 3 niveles, que se describen en la siguiente figura:


El primer nivel (bloque 1) consiste en la Ontología OPM (OPMO) que es el modelo de provenance independiente de dominio encima del cual construimos el pefil (bloque 2), extendiendo y adaptando el núcleo a nuestro escenario. Finalmente, sobre el perfil reusamos los vocabularios específicos de dominio (SIOC, MPEG-7, W3C GEO)(bloque 3), para modelar los metadatos descriptivos de los artefactos.
A continuación describimos brevemente cada una de las ontologías que componen esta red.

Open Provenance Model

OPM propone un grafo causal, donde los nodos son bien "artifacts" (estados inmutables en un momento dado), "processes", (acción o serie de acciones ejecutadas sobre artefactos) o "agents" (controladores de los procesos); y las aristas representan las relaciones causales entre los nodos: "Used" (un proceso usa un artefacto), "wasControlledBy" (un agente controla un proceso), "wasTriggeredBy"( un proceso activa otro proceso), "wasControlledBy" (un proceso genera un artefacto) y "wasDerivedFrom" (un artefacto se deriva de otro artefacto). También contiene la noción de "accounts" (cuentas, que son subgrafos parciales del grafo provenance), útiles para representar múltiples vistas del mismo grafo desde distintas perspectivas; y roles, que permiten describir en profundidad algunas de las relaciones causales mencionadas anteriormente.

Existen dos ontologías que implementan el modelo del OPM: Ontología OPM (OPMO) y Vocabulario OPM (OPMV). El primero es algo más complejo y consiste en una ontología que modela las aristas con un patrón de relación n-aria, mientras que el segundo es una ontología más ligera para asertar los conceptos del OPM.
OPMO es la que se ha usado en el escenario propuesto, porque permite añadir metadatos extra a las aristas en lugar de tener que usar reificación.
En la siguiente figura se puede observar una vista general de la representación OPMO. Los nodos están representados en los recuadros centrales ("Process", "Artifact" y "Agent"), mientras que las aristas se encuentran en los recuadros WCB ("WasControlledBy"), WTB ("WasTriggeredBy"), WGB ("WasGeneratedBby"), Used and WDF ("WasDerivedFrom"). La figura también muestra cómo se relacionas los nodos y las aristas, de acuerdo con la especificación OPM: "WasControlledBy" tiene como "cause" un "Agent" y como "effect" un "Process", "WasTriggeredBy" y "WasDerivedFrom" tienen como "cause y "effect" "Process" y "Artifact" respectivamente, "Used" tiene como "cause" un "Artifact" y como "effect un "Process" y "WasGeneratedBy" tiene como "cause" un "Process" y "effect" un "Artifact". Opcionalmente, algunas aristas pueden tener un "Role"(acción que desempeñan) u ocurrir en un intervalo de tiempo determinado ("startTime", "endTime").

Vista general del OPM (extraída de la Especificación OPM)

Ontología SIOC

SIOC es una ontología diseñada para describir la información de las comunidades online (como blogs y foros), y es usado junto al OPM en la plataforma de blogs. SIOC encaja perfectamente para esta tarea, ya que se ha diseñado con este propósito. Posee "Containers", "Items" y "Posts" para modelar la actividad de "posteo" de los usuarios en los blogs, camptura los seguidores y suscriptores de un usuario e incluso puede tratar con distintas versiones de un post (apuntando a versiones previas). También modela los comentarios de un post, el "RSS feeds" o la pertenencia a un grupo; y enlaza algunas de estas relaciones a otros vocabularios populares como FOAF (Friend of a friend) o DC (Dublin Core) . Se trata de un vocabulario centrado en recurso y de dominio específico.

Ontología MPEG-7

La ontología MPEG-7 es una transformación del standard MPEG-7 a OWL-Full, permitiendo descripciones de cada detalle de una imagen, video o archivo de audio: tamaño, duración, descomposición en segmentos, etc. Ha sido utilizada en nuestro escenario para anotar los metadatos de parte de los contenidos provistos por los usuarios ( aquellos que se refieren a imáganes y videos.

Vocabulario WGS84

Esta ontología se utiliza para describir la localización de los objetos espaciales en coordenadas (latitud, longitud, altura), y lugares (Madrid, Barcelona, Ireland, etc.). De acuerdo con la especificación, un "SpatialThing" es "Cualquier cosa con extensión espacial, por lo que hemos incluído en esa definición a las aristas del grafo OPM.

Ontología WebN+1 para el dominio turístico

Esta ontología modela el dominio turístico dentro de la plataforma Webn+1 y emplea OWL como lenguaje de implementación. Para su desarrollo, se ha escogido la ontología Infutur como punto de referencia, puesto que cubre una gran parte de los requisitos de dominio del caso de uso "El Viajero" definido en el proyecto. A su vez, la ontología Infutur reutiliza otras ontologías tales como SIOC (para la especificación de usuarios), W3C Geo (para la especificación de puntos geográficos), DCT (para detallar información sobre la localización y otros metadatos de documentos), FOAF (para la especificación de información sobre personas), RECO (para indicar información sobre las recomendaciones) o Review (para modelar críticas y valoraciones). Los elementos principales de la ontología turística de WebN+1 incluyen clases y propiedades para representar recursos turísticos (TourismResource), alojamientos (Accommodation), contenido multimedia asociado a éstos (Image, Audio), la localización los mismos (SpatialThing), los usuarios del sistema (UserAccount, Profile, Preferences), recomendaciones (Recommendation) y organizaciones de distinta naturaleza.