Curso de Ingeniería Webcic.puj.edu.co/wiki/lib/...sesion3-websemantica.pdf · representa una tarea...

Post on 30-Sep-2020

9 views 0 download

Transcript of Curso de Ingeniería Webcic.puj.edu.co/wiki/lib/...sesion3-websemantica.pdf · representa una tarea...

Maestría en Ingeniería

Curso de Ingeniería Web

Sesión 3: Web Semántica

Fernando Barraza A. Ms.C. fbarraza@javerianacali.edu.co

Sesión 3

•  Objetivo: Introducir los conceptos de la Web Semántica

•  Temas: – Conceptos básicos – Campos de Aplicación – La Arquitectura de la Web Semántica – Lenguajes de la Web Semántica (RDF,

RDFS, SPARQL) –  Introducción a las ontologías

Antecedentes •  Los actuales buscadores basados en palabras clave

suelen devolver información irrelevante que usa una cierta palabra con un significado diferente del que se pretende en la búsqueda, y pierden información cuando no reconocen palabras diferentes pero con el mismo significado que la buscada.

•  Actualmente se requiere lectura humana para extraer información relevante de un origen, dado que agentes automáticos no tienen el sentido común requerido para reconocer dicha información en representación textual.

Antecedentes (2) •  Mantener orígenes textuales débilmente estructurados

representa una tarea dificultosa, y consumidora de tiempo cuando tales orígenes aumentan considerablemente de tamaño. Mantener esas colecciones consistentes y al día requiere de representación interpretable por computador, de semántica que ayude a detectar anomalías automáticamente.

•  La utilidad de sitios Web adaptativos que permitan su reconfiguración dinámica de acuerdo al perfil del usuario u otros aspectos relevantes, requiere una representación computable de la semántica involucrada.

Caso Ejemplo: Biografía de Simón Bolívar

1Búsqueda

6Significados

Caso Ejemplo: Biografía Simón Bolívar (2)

RefinamoslaBúsqueda

Aún2Significados

Diferentestiposderecursos

Ycuantosdeestosresultados?

Qué es la web semántica?

•  Es una extensión de la web actual en la cual la información es suministrada con un significado bien definido, de tal forma que pueda ser entendido por las maquinas

•  Es un área pujante en la confluencia de la Inteligencia Artificial y las tecnologías web para permitir que las máquinas puedan hacerse cargo del trabajo más costoso, rutinario, o físicamente inabarcable que actualmente realizan manualmente los usuarios que navegan e interactúan con la web.

Diferentes formas de ver lo mismo

La web profunda •  La web profunda está

constituida por las bases de datos cuyos contenidos, no directamente accesibles, se hacen visibles mediante páginas generadas dinámicamente

•  Se estima puede contener un tamaño de información varios cientos de veces mayor, y de mucha mejor calidad, que la web superficial, y crece a un ritmo aún mayor que ésta.

•  Se estima que el tamaño de la web profunda ha superado ya al volumen total de información impresa existente en todo el planeta.

La Web hoy (1) … un caso típico

Año2006

La Web hoy (2) … lo pensado

Año2010:Unniñopreguntaasuasistentepersonaquellevapuestoensuchaqueta,quienmarcoelgoldelempatedeColombiaanteAlemaniaenelmundialdefútbolde1990?.Elasistentepersonallevantaunprocesoenbackgroundybuscaensitioswebpertinentesyenpocomasdeunminutoelniñorecibelarespuesta:FreddyRincón,minuto92,pasedeCarlosValderrama,videodisponibleenwww.videofutbol.com,etc.,etc.….AquíelasistenteesunAgenteDigital.

Enfoque de la solución al problema

•  Una forma de resolver estos problemas es reducir o eliminar la confusión conceptual y terminología y acercarse a un entendimiento compartido:

–  Reusabilidad: El entendimiento común es la base para

una codificación formal de entidades, atributos, procesos y sus interrelaciones en el dominio de interés. Esta representación formal deberían ser un componente reusable o compartido en un sistema de software.

–  Confiabilidad: Un representación formal también hace posible la automatización del cheque de la consistente resultando en software más confiable.

–  Especificación: El entendimiento común puede asistir el proceso de identificación y definición de especificaciones para un sistema de información.

Como ayuda la Web Semántica

–  Búsquedas avanzadas –  Integración de información de diferentes fuentes –  Ejecución de tareas automatizadas de forma

inteligente –  Dispositivos de captura de información dinámicos y

sensitivos al contexto –  Representación de información rica en medios

Diferentes formas de representación

Paraunhumano,esintuitivamenteclaro:LasetiquetassontérminosdeundominioParauncomputadornoesclaro(notieneintuición):Lasetiquetasnotienensemántica

XML no es suficiente

Arquitectura de la Web Semántica

SemanticWebarchitecturehttp://www.w3.org/2000/Talks/1206-xml2k-tbl/

Primera capa:

SemanticWebarchitecturehttp://www.w3.org/2000/Talks/1206-xml2k-tbl/

Proporcionaunnúmeroúnicoparacadacarácter,sinimportarlaplataforma,sinimportarelprograma,sinimportarelidioma.

Identificadorunificadoderecursosesuntextocortoqueidentificaunívocamentecualquierrecurso

Unicode y URI •  Unicode provee un número único por cada

caracter, sin importar su plataforma, programa o idioma en que está representado.

•  Un URI permite apuntar sin equivocación a un recurso en la Web que puede ser una página, una aplicación, en fín, cualquier elemento que pueda ser accedido a través de Internet.

http://www.puj.edu.co/portal

Segunda capa:

Lenguajedemarcadoquedescribeyhomogenizalosrecursos

DefinerestriccionesdelasintaxisylaestructuradedocumentosXMLdeformamásricaqueunDTD

OfreceunespaciodenombresparaintercambiardatosentrefuentesheterogéneasXML

XML

•  XML es el estándar más extendido hoy •  Representa una primera aproximación

para clasificar datos en la Web semántica. •  Permite estructurar datos y documentos

en forma de árboles de etiquetas con atributos.

Namespaces •  Los espacios de nombres complementan las referencias

hechas por un URI proveyendo un método sencillo para calificar elementos y nombres de atributos usados en XML.

•  Esto permite identificar los elementos incluidos en XML en diferentes puntos de la Web.

XMLS •  Con XML Schema (XMLS) es posible definir

estructuras más complejas basadas en XML donde se reflejen tipos de datos primitivos y derivados.

•  Son una alternativa más estructurada a los DTD’s.

•  El modelo de datos XML en árbol, que no distingue entre objetos y relaciones ni tiene noción de jerarquía de clases, no permite representar la semántica de los datos.

Tercera capa:

Frameworkparadefinirmetadatosatravésdejerarquíadeclasesderecursos,especificandopropiedadesyrelaciones

Por qué no usar solo XML?

•  En XML el orden en el cual los elementos aparecen es significativo y muchas veces necesario.

•  RDF provee más ventajas: –  Independencia. Podemos inventar una propiedad llamada

"Autor" y otros pueden inventar una propiedad llamada "Director" que podría aplicarse, por ejemplo, a recursos asociados con películas.

–  Intercambio. Dado que las sentencias RDF se escriben en XML pueden ser fácilmente usadas para intercambiar información.

–  Escalabilidad. Las sentencias RDF son simples, registros con tres campos (Recurso, propiedad, valor) por lo que son fáciles de manejar y de usar para buscar objetos aun en volúmenes realmente grandes.

–  Flexibilidad: Las propiedades, valores y sentencias puedes ser son recursos. Esto es importante porque tendremos muchísimos recursos que manejar. Demasiados como para buscarlos uno por uno.

RDF

•  Con RDF se puede darle significado semántico a los recursos de la Web.

•  Es considerado un lenguaje para la definición de metadatos en la Web.

•  Es el estándar más popular y extendido en la comunidad de la Web semántica.

Construcción RDF •  El elemento de construcción básica en RDF es

el “triple” o sentencia, que consiste en: –  Dos nodos (sujeto y objeto) que representan

recursos: •  Un sujeto, que es identificado por un URI y que apunta al

recurso a ser descrito •  Un objeto el cual puede ser un recurso o un literal, tal como

un numero o una cadena de caracteres –  Unidos por un arco (predicado), que representa una

propiedad del recurso

Ejemplo RDF

•  Sentencia: El escritor Gabriel García Márquez (sujeto) es el autor (predicado) de un libro con título “Cien años de soledad” (objeto).

Extensión del grafo •  Se pueden agregar sentencias al grafo •  Ej.; El autor de libro “Cien años de soledad”

nació en una ciudad colombiana de nombre Aracataca.

•  Para identificar univocamente los recursos del grafo utilizamos entonces URI’s

Modelo RDF

Serialización del grafo RDF

<?xml version="1.0"?>

<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">

xmlns:body="http://www.algo.com/libro#’’

<rdf:Description rdf:about="http://www.algo.com/Gabriel_Garcia_Marquez">

<libro:autor>Cien Anos de Soledad</libro:autor>

</rdf:Description>

</rdf:RDF>

namespace

Y RDF-Schema?

•  Con RDFS tenemos la posibilidad de expresar las características de los datos

•  Se pueden definir jerarquías de clases de recursos incluyendo: – Generalizaciones y herencia, – Especificación de las propiedades – Relaciones que se admiten entre

propiedades. •  Todo esto permite entonces construir

ontologías sencillas.

Modelo gráfico RFDS

RDF le da mas expresividad semántica al lenguaje de marcado sin cambiar el modelo grafico de RDF.

Ejemplo RDFS

Ejemplo RDF(S)

Representación serializada de grafos RDF(S)

Serialización de Grafos RDF(S)

Serialización de Grafos RDF(S)

Serialización de Grafos RDF(S)

Consulta de grafos RDF

•  Una de las prestaciones más importantes para cualquier modelo de representación de información es la posibilidad de ser consultado.

•  Se logra utilizando un lenguaje de consulta semántico, los cuales permiten expresar consultas tanto sencillas como búsquedas complejas sobre un grafo RDF mediante una sintaxis declarativa sencilla.

Lenguajes semánticos

•  La mayoría fueron construidos con SQL en mente y por lo tanto tienen un cierto grado de similaridad en su estructura

•  En la Web semántica existen diferentes propuestas que se han ido convirtiendo en un estándar “de facto”:

–  SeRQL (lenguaje principal de Sesame) –  RDQL (lenguaje principal de Jena) –  SPARQL (recomendación de W3C)

Consulta en RDQL select ?y from <escritores.rdf> where (?x, <edad>, ?z), (?x, <nombre>, ?y) and ?z > 50”

•  Devuelve la propiedad “nombre” de todos los recursos del grafo definido en “escritores.rdf” cuya propiedad “edad” tiene un valor mayor que 50.

Consulta en SPARQL SELECT ?libro ?escritor ?editorial FROM <http://www.algo.com/obras> WHERE { ?name <Gabriel_Garcia_Marquez> ?editorial} ORDER BY DESC (?editorial)

•  Devuelve los nombres de los libros escritos por Gabriel García Márquez ordenados por la editorial del libro.

Cuarta capa:

Definecomounconjuntodetérminosdeconocimiento,incluyendoelvocabulario,lasinterconexionessemánticasyalgunasreglassimplesdeinferenciaylógica

Créditos •  Carole Goble. Semantic Grid, Part 4: Pioneers and

Examples, The University of Manchester, 2005. •  Jun Zhao, Carole Goble, Robert Stevens. An

Identity Crisis in the Life Sciences. The University of Manchester, 2005.

•  Alexander Garcia C. Interoperabilidad e integración de información en Bioinformática. The University of Queensland, 2004.

•  Pablo Castells. La Web Semántica. Escuela Politécnica Superior, Universidad Autónoma de Madrid, 2004.