HERRAMIENTAS Y ENTORNOS DE PROGRAMACIÓN€¦ · los programas de blogs es anecdótico. ! La 2.0...

27
Ramón Hervás Lucas - Curso 2008/2009 - HyEP 1 HERRAMIENTAS Y ENTORNOS DE PROGRAMACIÓN Tema 5. Web Semántica Escuela Superior de Informática

Transcript of HERRAMIENTAS Y ENTORNOS DE PROGRAMACIÓN€¦ · los programas de blogs es anecdótico. ! La 2.0...

Page 1: HERRAMIENTAS Y ENTORNOS DE PROGRAMACIÓN€¦ · los programas de blogs es anecdótico. ! La 2.0 tiene como principal protagonista al usuario humano ! La web semántica, sin embargo,

Ramón Hervás Lucas - Curso 2008/2009 - HyEP 1

HERRAMIENTAS Y ENTORNOS DE PROGRAMACIÓN

Tema 5. Web Semántica

Escuela Superior de Informática

Page 2: HERRAMIENTAS Y ENTORNOS DE PROGRAMACIÓN€¦ · los programas de blogs es anecdótico. ! La 2.0 tiene como principal protagonista al usuario humano ! La web semántica, sin embargo,

Ramón Hervás Lucas - Curso 2008/2009 - HyEP 2

Herramientas y Entornos de Programación Tema 4. Tecnologías de Servicios Web

l La Web Semántica (~ 2 horas)

l  Web 2.0 l  Conceptos Generales l  Principales tecnologías y elementos

l  La Web Semántica l  Un vistazo a la web tradicional l  Descubriendo la Web Semántica

Page 3: HERRAMIENTAS Y ENTORNOS DE PROGRAMACIÓN€¦ · los programas de blogs es anecdótico. ! La 2.0 tiene como principal protagonista al usuario humano ! La web semántica, sin embargo,

l Web 2.0 l  El término fue acuñado por Dale Dougherty de O'Reilly Media en

una lluvia de ideas con Craig Cline de MediaLive para desarrollar ideas para una conferencia.

l  En general, cuando mencionamos el término Web 2.0 nos referimos a una serie de aplicaciones y páginas de Internet que utilizan la inteligencia colectiva para proporcionar servicios interactivos en red dando al usuario el control de sus datos.

l  Todas aquellas utilidades y servicios de Internet que se sustentan en una base de datos, la cual puede ser modificada por los usuarios del servicio, ya sea en su contenido (añadiendo, cambiando o borrando información o asociando datos a la información existente), bien en la forma de presentarlos, o en contenido y forma simultáneamente (Ribes, 2007)

Ramón Hervás Lucas - Curso 2008/2009 - HyEP 3

Page 4: HERRAMIENTAS Y ENTORNOS DE PROGRAMACIÓN€¦ · los programas de blogs es anecdótico. ! La 2.0 tiene como principal protagonista al usuario humano ! La web semántica, sin embargo,

l Web 2.0

Ramón Hervás Lucas - Curso 2008/2009 - HyEP 4

Page 5: HERRAMIENTAS Y ENTORNOS DE PROGRAMACIÓN€¦ · los programas de blogs es anecdótico. ! La 2.0 tiene como principal protagonista al usuario humano ! La web semántica, sin embargo,

l Web 2.0

Ramón Hervás Lucas - Curso 2008/2009 - HyEP 5

Page 6: HERRAMIENTAS Y ENTORNOS DE PROGRAMACIÓN€¦ · los programas de blogs es anecdótico. ! La 2.0 tiene como principal protagonista al usuario humano ! La web semántica, sin embargo,

l  Web 2.0: Requisitos

l  Datos abiertos l  Formatos de datos abiertos l  Habilidad para usar datos fuera de la aplicación l  Permite al usuario crearse sus propios datos

l  Arquitectura de participación l  Provee un servicio no un producto l  Incentiva la participación l  Inteligencia colectiva l  Fácil reutilizar y mezclar l  Formar parte de una comunidad

l  Buena experiencia de usuario l  Fácil de usar y atractiva l  Interfaz de usuario rica l  Funciona como una aplicación tradicional

Ramón Hervás Lucas - Curso 2008/2009 - HyEP 6

Page 7: HERRAMIENTAS Y ENTORNOS DE PROGRAMACIÓN€¦ · los programas de blogs es anecdótico. ! La 2.0 tiene como principal protagonista al usuario humano ! La web semántica, sin embargo,

l  Web 2.0: Rasgos comunes

l  Un portal Web 2.0 suele presentar las siguientes características:

l  Rico mecanismo de interacción: Ajax, Lazslo l  CSS l  XHMTL valido o utilización de microformatos (añadir semántica

en HTML) l  Sindicación y agregación de datos basada en RSS y Atom l  Publicación de Weblogs l  Mashups l  REST o XML WebServices APIs

Ramón Hervás Lucas - Curso 2008/2009 - HyEP 7

Page 8: HERRAMIENTAS Y ENTORNOS DE PROGRAMACIÓN€¦ · los programas de blogs es anecdótico. ! La 2.0 tiene como principal protagonista al usuario humano ! La web semántica, sin embargo,

l  Web 2.0: Principales Tecnologías l  AJAX (Asynchronous Javascript and XML) "

l  Técnica de desarrollo que genera aplicaciones web más interactivas combinando:"

l  XHTML y CSS para la presentación de información"l  Document Object Model (DOM) para visualizar dinámicamente

e interactuar con la información presentada"

l  XML, XSLT para intercambiar y manipular datos"l  JSON y JSON-RPC pueden ser alternativas a XML/XSLT"l  XMLHttpRequest para recuperar datos asíncronamente"l  Javascript como nexo de unión de todas estas tecnologías

Ramón Hervás Lucas - Curso 2008/2009 - HyEP 8

Page 9: HERRAMIENTAS Y ENTORNOS DE PROGRAMACIÓN€¦ · los programas de blogs es anecdótico. ! La 2.0 tiene como principal protagonista al usuario humano ! La web semántica, sin embargo,

l  Web 2.0: Principales Tecnologías l  AJAX (Asynchronous Javascript and XML) "

l  Aplicaciones son más interactivas al estilo desktop Look and feel similar a las aplicaciones de sobremesa sin plug-ins o características específicas de los navegadores

l  Reduce tamaño de la información intercambiada

l  Muchas micro-peticiones, flujo de datos global inferior

l  Libera de procesamiento a la parte servidora

l  Actualiza porciones de la página en vez de la página completa

l  Necesario asegurar aplicación AJAX funciona en todo navegador

Ramón Hervás Lucas - Curso 2008/2009 - HyEP 9

Page 10: HERRAMIENTAS Y ENTORNOS DE PROGRAMACIÓN€¦ · los programas de blogs es anecdótico. ! La 2.0 tiene como principal protagonista al usuario humano ! La web semántica, sin embargo,

l  Web 2.0: Principales Tecnologías l  AJAX Frameworks"

l  JavaScript puras:

l  http://prototype.conio.net/

l  http://script.aculo.us/

l  http://openrico.org/demos.page

l  Parte Servidora:

l  http://www.getahead.ltd.uk/dwr

l  http://atlas.asp.net/Default.aspx?tabid=47

Ramón Hervás Lucas - Curso 2008/2009 - HyEP 10

Page 11: HERRAMIENTAS Y ENTORNOS DE PROGRAMACIÓN€¦ · los programas de blogs es anecdótico. ! La 2.0 tiene como principal protagonista al usuario humano ! La web semántica, sin embargo,

l  Web 2.0: Principales tecnologías l  Wikis

l  Un tipo de portal que permite a los usuarios editar, añadir, borrar su contenido de manera rápida y sencilla

l  Herramienta efectiva de escritura colaborativa l  A través del browser y utilizando una sintaxis muy simple el usuario

puede escribir documentos l  HERRAMIENTAS: MediaWiki

l  Weblogs l  Bitácoras web que recogen artículos periódicos en orden cronológico

inverso l  Se concentran en una temática particular:Comida, Política, etc. l  Dan oportunidad a que la gente comente en la bitácora l  HERRAMIENTAS: Blogger, WordPress

Ramón Hervás Lucas - Curso 2008/2009 - HyEP 11

Page 12: HERRAMIENTAS Y ENTORNOS DE PROGRAMACIÓN€¦ · los programas de blogs es anecdótico. ! La 2.0 tiene como principal protagonista al usuario humano ! La web semántica, sin embargo,

l  Web 2.0: Principales Tecnologías l  Sindicación

l  La sindicación web es una forma de sindicación donde un parte de un portal es hecho disponible para ser usado por otros

l  Un portal facilita web feeds:

l  Web feed = documento XML con elementos de contenido (título, descripción) y enlaces a versiones largas del contenido

l  Varios formatos: Rich Site Summary (RSS 0.91) RDF Site Summary (RSS 0.9, 1.0 and 1.1) Really Simple Syndication (RSS 2.0), Atom

l  Utilizamos agregadores para subscribirnos a web o podcast feeds

l  Promociona un modelo “push” para la web

Ramón Hervás Lucas - Curso 2008/2009 - HyEP 12

Page 13: HERRAMIENTAS Y ENTORNOS DE PROGRAMACIÓN€¦ · los programas de blogs es anecdótico. ! La 2.0 tiene como principal protagonista al usuario humano ! La web semántica, sin embargo,

Ramón Hervás Lucas - Curso 2008/2009 - HyEP 13

Herramientas y Entornos de Programación Tema 4. Servicios Web. Introducción

l  La Web hoy en día

Page 14: HERRAMIENTAS Y ENTORNOS DE PROGRAMACIÓN€¦ · los programas de blogs es anecdótico. ! La 2.0 tiene como principal protagonista al usuario humano ! La web semántica, sin embargo,

Ramón Hervás Lucas - Curso 2008/2009 - HyEP 14

Herramientas y Entornos de Programación Tema 4. Servicios Web. Introducción

l  La Web tradicional l  Representa la información usando

l  lenguaje natural (español, inglés, chino,...),

l  o gráficos, multimedia, diseños de las páginas

l  Los humanos podemos procesar esta información (fácilmente) l  Deducimos hechos desde información parcial

l  Creamos asociaciones mentales

l  Asimilamos información desde distintos sentidos

l  Habitualmente se combinan los datos en la Web: l  Búsquedas en diversas librerías digitales y con distintos formatos

l  Información sobre hoteles y viajes procedentes de distintas fuentes

Page 15: HERRAMIENTAS Y ENTORNOS DE PROGRAMACIÓN€¦ · los programas de blogs es anecdótico. ! La 2.0 tiene como principal protagonista al usuario humano ! La web semántica, sin embargo,

Ramón Hervás Lucas - Curso 2008/2009 - HyEP 15

Herramientas y Entornos de Programación Tema 4. Servicios Web. Introducción

l  La Web tradicional

l  ¿Y las máquinas? l  Procesan información de diversa naturaleza l  Intercambian esta información entre sí l  Prestan y consumen servicios l  Ejecutan procesos complejos componiendo estos servicios

l  Gracias a… l  el formato de representación de la información (XML!) l  los protocolos de comunicación (HTTP, SOAP) l  la definición y uso de los servicios prestados/consumidos

(WSDL, Coreografías de SW)

Page 16: HERRAMIENTAS Y ENTORNOS DE PROGRAMACIÓN€¦ · los programas de blogs es anecdótico. ! La 2.0 tiene como principal protagonista al usuario humano ! La web semántica, sin embargo,

Ramón Hervás Lucas - Curso 2008/2009 - HyEP 16

Herramientas y Entornos de Programación Tema 4. Servicios Web. Introducción

l  La Web tradicional

l  Las máquinas son ignorantes… l  La información parcial es inútil l  Hacer que ciertos recursos tengan sentido es difícil

(multimedia) l  Describir analogías automáticamente es difícil La

combinación de información automáticamente es difícil l  ¿Es igual <b1:creator>, que <b2:author>, o que <b3:autor>? l  Cómo combinar distintos niveles jerárquicos del XML

l  Las BBDD son diferentes en estructura y en contenidos l  Muchas aplicaciones necesitan manejar varias BBDD

Page 17: HERRAMIENTAS Y ENTORNOS DE PROGRAMACIÓN€¦ · los programas de blogs es anecdótico. ! La 2.0 tiene como principal protagonista al usuario humano ! La web semántica, sin embargo,

Ramón Hervás Lucas - Curso 2008/2009 - HyEP 17

Herramientas y Entornos de Programación Tema 4. Servicios Web. Introducción

l  La Web Tradicional

l  Redes Sociales:

l  Omnipresentes en estos días (LinkedIn, eConozco, Friendster, Facebook,...)

l  Los datos no son intercambiables

l  ¿Cuántas veces has tenido que introducir los contactos?

l  Las aplicaciones deberían poder intercambiar los datos de una forma estándar

l  Servicios Web l  como los servicios son ubícuos, llegan los problemas de la búsqueda:

(búscame el mejor servicio para solucionar ecuaciones diferenciales)

l  Es necesario caracterizar el servicio, No sólo definirlo en función de sus parámetros de entrada y salida, también, en términos de su semántica

Page 18: HERRAMIENTAS Y ENTORNOS DE PROGRAMACIÓN€¦ · los programas de blogs es anecdótico. ! La 2.0 tiene como principal protagonista al usuario humano ! La web semántica, sin embargo,

Ramón Hervás Lucas - Curso 2008/2009 - HyEP 18

Herramientas y Entornos de Programación Tema 4. Servicios Web. Introducción

l  La Web Tradicional l  Los humanos podemos llegar a entenderlo

Page 19: HERRAMIENTAS Y ENTORNOS DE PROGRAMACIÓN€¦ · los programas de blogs es anecdótico. ! La 2.0 tiene como principal protagonista al usuario humano ! La web semántica, sin embargo,

Ramón Hervás Lucas - Curso 2008/2009 - HyEP 19

Herramientas y Entornos de Programación Tema 4. Servicios Web. Introducción

l  La Web Tradicional l  Lo entendemos nosotros y las máquinas

Page 20: HERRAMIENTAS Y ENTORNOS DE PROGRAMACIÓN€¦ · los programas de blogs es anecdótico. ! La 2.0 tiene como principal protagonista al usuario humano ! La web semántica, sin embargo,

Ramón Hervás Lucas - Curso 2008/2009 - HyEP 20

Herramientas y Entornos de Programación Tema 4. Servicios Web. Introducción

l  La Web Semántica l  Se aplica el potencial de las URIs a conceptos de los datos

relacionales l  Modelado de las cosas reales (conceptos y sus relaciones)

l  Simplicidad y consistencia matemática l  Esto se llama Infraestructura de Descripción de Recursos (RDF)

l  RDF -> Datos l  HTML -> Documentos

l  Se puede codificar en XML

sujeto valor Propiedad

Page 21: HERRAMIENTAS Y ENTORNOS DE PROGRAMACIÓN€¦ · los programas de blogs es anecdótico. ! La 2.0 tiene como principal protagonista al usuario humano ! La web semántica, sin embargo,

l  La Web Semántica: Propósito l  Mejorar la usabilidad y utilidad de la Web y sus recursos

interconectados, mediante: l  Anotación semántica documentos mejorados con metadatos

semánticos leíbles por máquinas o metadatos representando hechos sobre cualquier concepto (lugar, persona, etc.)

l  Ontologías: vocabularios de metadatos comunes y mapas entre ellos que guían marcado de documentos para que los agentes puedan utilizar la semántica suministrada

l  Agentes: realizan tareas para usuarios utilizando estos metadatos (shopbot)

l  Infrastructura Servicios Web que suministren información a agentes (Trust Service – informa calidad información)

l  Los principales facilitadores de la Web Semántica son URIs, XML, XML NameSpaces y RDF

Ramón Hervás Lucas - Curso 2008/2009 - HyEP 21

Page 22: HERRAMIENTAS Y ENTORNOS DE PROGRAMACIÓN€¦ · los programas de blogs es anecdótico. ! La 2.0 tiene como principal protagonista al usuario humano ! La web semántica, sin embargo,

Ramón Hervás Lucas - Curso 2008/2009 - HyEP 22

Herramientas y Entornos de Programación Tema 4. Servicios Web. Introducción

l  La Web Semántica l  Evita la ambigüedad en la

identificación (URI)

l  Describir los recursos (RDF)

l  Modelar ontologías (OWL)

l  Realizar búsquedas (SPARQL)

l  Expresar reglas y su intercambio (RIF)

l  Establecer lógica, comprobaciones, certificados de confianza, etc

l  XML para documentos estructurados

Page 23: HERRAMIENTAS Y ENTORNOS DE PROGRAMACIÓN€¦ · los programas de blogs es anecdótico. ! La 2.0 tiene como principal protagonista al usuario humano ! La web semántica, sin embargo,

Ramón Hervás Lucas - Curso 2008/2009 - HyEP 23

Herramientas y Entornos de Programación Tema 4. Tecnologías de Servicios Web

l  La Web Semántica l  Aplicaciones semánticas

Page 24: HERRAMIENTAS Y ENTORNOS DE PROGRAMACIÓN€¦ · los programas de blogs es anecdótico. ! La 2.0 tiene como principal protagonista al usuario humano ! La web semántica, sin embargo,

Ramón Hervás Lucas - Curso 2008/2009 - HyEP 24

Herramientas y Entornos de Programación Tema 4. Servicios Web. SOAP

l  La Web Semántica

l  Un ejemplo real: Buscador semántico Falcon

Page 25: HERRAMIENTAS Y ENTORNOS DE PROGRAMACIÓN€¦ · los programas de blogs es anecdótico. ! La 2.0 tiene como principal protagonista al usuario humano ! La web semántica, sin embargo,

l La Web Semántica l  Herramientas

l  JENA (Java): http://jena.sourceforge.net/ l  API para RDF l  Lectura y escritura de RDF en RDF/XML, N3 yN-

Triples l  API para OWL l  Almacenamiento en memoria y persistente l  SPARQL

l  CWM (Python): http://www.w3.org/2000/10/swap/doc/cwm.html

Ramón Hervás Lucas - Curso 2008/2009 - HyEP 25

Page 26: HERRAMIENTAS Y ENTORNOS DE PROGRAMACIÓN€¦ · los programas de blogs es anecdótico. ! La 2.0 tiene como principal protagonista al usuario humano ! La web semántica, sin embargo,

Ramón Hervás Lucas - Curso 2008/2009 - HyEP 26

Herramientas y Entornos de Programación Tema 4. Servicios Web. SOAP

l  Web Semántica vs Web 2.0 l  En ocasiones se ha utilizado el término Web 2.0 como análogo a

Web semántica. Sin embargo ambos conceptos, aun siendo afines, no son iguales, sino más bien complementarios

l  Web semántica se requiere el uso de ontologías. De momento, el uso de ontologías como mecanismo de estructurar la información en los programas de blogs es anecdótico.

l  La 2.0 tiene como principal protagonista al usuario humano

l  La web semántica, sin embargo, está orientada hacia el protagonismo de procesadores mecánicos que entiendan de lógica descriptiva en OWL y concebida para que las máquinas hagan el trabajo de las personas a la hora de procesar la avalancha de información publicada en la Web

Page 27: HERRAMIENTAS Y ENTORNOS DE PROGRAMACIÓN€¦ · los programas de blogs es anecdótico. ! La 2.0 tiene como principal protagonista al usuario humano ! La web semántica, sin embargo,

Ramón Hervás Lucas - Curso 2008/2009 - HyEP 27

Herramientas y Entornos de Programación Tema 4. Servicios Web. Proceso

l Referencias l  http://www.w3c.es/Presentaciones/

2008/0220-semanticaBPMS-MA

l  http://www.w3.org/2001/sw l  Presentación sobre Web 2.0

l  http://www.squidoo.com/introtoweb20/

l  Curso Web Semántica Práctica l  http://paginaspersonales.deusto.es/dipina/#semanticweb