Tecnologias Web Semantica

670 visualizaciones

Publicado el

Curso Web Semantica

Publicado en: Internet
0 comentarios
1 recomendación
Estadísticas
Notas
  • Sé el primero en comentar

Sin descargas
Visualizaciones
Visualizaciones totales
670
En SlideShare
0
De insertados
0
Número de insertados
15
Acciones
Compartido
0
Descargas
16
Comentarios
0
Recomendaciones
1
Insertados 0
No insertados

No hay notas en la diapositiva.

Tecnologias Web Semantica

  1. 1. Tecnologías de Web Semántica Tutorial (laboratorio) Trujillo, Perú, 2014 Jose Emilio Labra Gayo - Universidad de Oviedo Jose Emilio Labra Gayo Universidad de Oviedo
  2. 2. Jose Emilio Labra Gayo - Universidad de Oviedo Programa Web Semántica: Qué es y mapa de tecnologías Fundamentos Web Descripción de recursos Consultando la Web de Datos Inferencias y Ontologías Casos prácticos
  3. 3. Arquitectura de la Web Jose Emilio Labra Gayo - Universidad de Oviedo Fundamentos de la Web (slides) Protocolo HTTP Negociación de contenido Ejercicios con curl Ejemplos: http://dbpedia.org/resource/Oviedo
  4. 4. Fundamentos de la Web 3 pilares Interacción: Protocolos HTTP, FTP, SMTP, etc. Identificación: URIs Formatos de representación: HTML, JSON, XML, ... Jose Emilio Labra Gayo – http://www.di.uniovi.es/~labra Identificación URI Formatos HTML, JSON,... Interacción Protocolos WWW
  5. 5. Jose Emilio Labra Gayo – http://www.di.uniovi.es/~labra Esquema conceptual de HTTP Usuario Navegador Cliente Servidor URI Representación WWW HTTP Petición Respuesta
  6. 6. Jose Emilio Labra Gayo – http://www.di.uniovi.es/~labra Recursos La Web está formada por recursos Recurso = cualquier fuente de contenido Web Se identifican mediante URIs Diversas Posibilidades: Estáticos: almacenados en Sistema de Ficheros Páginas HTML Otros formatos multimedia: Imágenes, vídeos, sonidos, ... Dinámicos: bajo demanda Generado a partir de bases de datos Integrando información de otros servicios Web Información online NOTA: La mayoría de la información disponible en la Web se genera dinámicamente
  7. 7. Jose Emilio Labra Gayo – http://www.di.uniovi.es/~labra Recursos Navegador Cliente Servidor URI WWW HTTP Sistema ficheros = Fichero texto Imagen Base datos Programa Gateway Gateway Gateway Gateway Base datos Otro servidor Cámara Web Informac. Bursátil Control Robot
  8. 8. Jose Emilio Labra Gayo – http://www.di.uniovi.es/~labra Tipos de recursos Los servidores asocian un tipo a cada recurso Tipos MIME (Multipurpose Internet Mail Extensions) Ejemplos: text/plain, text/html, application/xml, image/jpg,... El cliente decide qué hacer con dichos tipos Usuario Navegador Cliente Servidor Petición Respuesta WWW HTTP Content-type: image/jpeg Content-length: 8854
  9. 9. Jose Emilio Labra Gayo – http://www.di.uniovi.es/~labra HTTP: Formato de mensajes Modo texto: línea inicial cabecera del mensaje* cuerpo del mensaje ? GET /index.html HTTP/1.1 Host: www.uniovi.es User-Agent: Mozilla/5.0 … Accept: text/html Accept-language: es, en Navegador Cliente Servidor Petición WWW HTTP HTTP/1.1 200 OK Date: Thu, 12 Oct 2013 09:36:05 GMT Server: Apache Content-length: 80554 Content-type: text/html; charset=utf-8 <html> <head> <title>Curso XML</title> <head> ... </html> Respuesta
  10. 10. Jose Emilio Labra Gayo – http://www.di.uniovi.es/~labra Mensajes de petición Formato general: <method>= GET,PUT,POST,DELETE,... POST /admin HTTP/1.1 Host: www.uniovi.es User-Agent: Mozilla/5.0 … Accept: text/html Accept-language: es, en ...datos POST... <method> <url> <version> <headers> * <entity-body> GET /index.html HTTP/1.1 Host: www.uniovi.es User-Agent: Mozilla/5.0 … Accept: text/html Accept-language: es, en <headers> = parejas de la forma: nombre1: valor1 nombre2: valor2 Ejemplos:
  11. 11. HTTP/1.1 200 OK Date: Thu, 12 Oct 2013 09:36:05 GMT Server: Apache Content-length: 80554 Content-type: text/html; charset=utf-8 <html> <head> <title>Curso XML</title> <head> ... </html> Jose Emilio Labra Gayo – http://www.di.uniovi.es/~labra Mensajes de respuesta Formato general: HTTP/1.1 404 Not found Content-length: 0 <version> <status> <reason-phrase> <headers> * <entity-body> <Status> Códigos estándar: 2**: Variaciones de OK 3**: redirecciones 4**: Problemas del cliente 5**: problemas del servidor Ejemplos:
  12. 12. Jose Emilio Labra Gayo – http://www.di.uniovi.es/~labra Utilidades Diversas utilidades curl http://curl.haxx.se/ Hurl http://hurl.it Redbot http://redbot.org Web-sniffer: http://web-sniffer.net/ RestClient http://code.google.com/p/rest-client/ curl http://cursoxml.herokuapp.com Algunas opciones: -v (verbose) -H (cabeceras) -X (verbos POST, PUT, DELETE,...)
  13. 13. Jose Emilio Labra Gayo – http://www.di.uniovi.es/~labra CURL Ejemplos: curl http://cursoxml.herokuapp.com curl -H "Accept-language:es" http://cursoxml.herokuapp.com curl -H "Accept:text/html" http://cursoxml.herokuapp.com/search?course=html5 curl -H "Accept:application/xml" http://cursoxml.herokuapp.com/search?course=html5 curl -X POST http://cursoxml.herokuapp.com/login -d email="pepe@abc.org" -password="abc"
  14. 14. Jose Emilio Labra Gayo – http://www.di.uniovi.es/~labra Métodos HTTP GET: Solicita una representación de un recurso PUT: Crear un recurso POST: Envía datos para que un recurso los procese Puede implicar la creación/actualización de recursos DELETE: Elimina un recurso Otros HEAD: Similar a GET, pero obtiene únicamente la cabecera TRACE: Pide la solicitud que se envió al servidor OPTIONS: Solicita los métodos que soporta el servidor CONNECT: Convierte la petición en un túnel TCP/IP Facilita la comunicación a través de SSL
  15. 15. Jose Emilio Labra Gayo – http://www.di.uniovi.es/~labra URIs
  16. 16. Representación Jose Emilio Labra Gayo – http://www.di.uniovi.es/~labra Recursos Recurso = Unidad básica de la Web Cualquier cosa que se identifique con una URI URI ≠ Recurso ≠ Representación URI http://tiempo.com/Asturias/Oviedo Metadatos: Content-type: text/html Datos: <html> <head><title>Tiempo</title></head> <body> <h1>Tiempo en Oviedo</h1> <p>Nubes y claros</p> </body> </html> Tiempo en Oviedo Recurso
  17. 17. ¿Qué se puede identificar con una URI? Cualquier cosa concreta o abstracta Ejemplo: Una página Web Jose Emilio Labra Gayo – http://www.di.uniovi.es/~labra http://www.uniovi.es <!DOCTYPE html> <html> <head> <title>Universidad de Oviedo</title> </head> <body> <h1>Universidad de Oviedo</h1> <p>Fundada en el año 1608 en <a href="http://www.wikipedia.org/Oviedo"> Oviedo</a></p> . . . </body> </html> identifica Una página Web Recurso de información Formato HTML
  18. 18. ¿Qué se puede identificar con una URI? Cualquier cosa concreta o abstracta Ejemplo: Una fotografía (recurso multimedia) http://www.di.uniovi.es/~labra/images/asturias.jpg Jose Emilio Labra Gayo – http://www.di.uniovi.es/~labra identifica Una fotografía Recurso de información Formato JPG
  19. 19. ¿Qué se puede identificar con una URI? Cualquier cosa concreta o abstracta Ejemplo: Una persona http://www.w3.org/People/Berners-Lee/card#i Jose Emilio Labra Gayo – http://www.di.uniovi.es/~labra identifica Una persona (Tim Berners-Lee) Recurso de no información
  20. 20. ¿Qué se puede identificar con una URI? Cualquier cosa concreta o abstracta Ejemplo: Conjunto de todas las personas Jose Emilio Labra Gayo – http://www.di.uniovi.es/~labra http://xmlns.com/foaf/0.1/Person identifica Conjunto de Personas (concepto abstracto) Recurso de no información
  21. 21. ¿Qué se puede identificar con una URI? Cualquier cosa concreta o abstracta Ejemplo: Propiedad de creación Jose Emilio Labra Gayo – http://www.di.uniovi.es/~labra http://purl.org/dc/terms/creator identifica Propiedad de creación (concepto abstracto) Recurso de no información
  22. 22. ¿Qué se puede identificar con una URI? Cualquier cosa concreta o abstracta Ejemplo: Espacio de nombres Jose Emilio Labra Gayo – http://www.di.uniovi.es/~labra http://purl.org/dc/terms identifica description publisher language . . . Espacio de nombres (concepto) Recurso de no información
  23. 23. http :// ejemplo.com:8042 /libros/castellano ?autor=Cervantes #capitulo2 Nota: los caracteres deben codificarse. Significado especial de espacios, ?, /, etc. Jose Emilio Labra Gayo – http://www.di.uniovi.es/~labra Formato de una URI esquema : // autoridad camino ?consulta #fragmento Más información: Especificación http://tools.ietf.org/html/rfc3986 Otros ejemplos de URIs: ftp://ftp.is.co.za/rfc/rfc1808.txt mailto:pepe@ejemplo.com telnet://192.0.2.16:80/ urn:oasis:names:specification:docbook:dtd:xml:4.1.2 Nota: las URNs identifican nombres únicos solamente. Sin protocolo
  24. 24. Ejemplos Nota: las URNs identifican nombres únicos solamente. Sin protocolo Jose Emilio Labra Gayo – http://www.di.uniovi.es/~labra Partes de una URI Más información: Especificación http://tools.ietf.org/html/rfc3986 esquema autoridad //usuario@host:port path querystring fragment http: http: http: ftp: mailto: urn: //localhost:3000 //google.com //uniovi.es/ //ftp.is.co.za pepe@uni.es isbn:045125021 /about / /course/view.php /rdf/rfc1808.txt ?a=1&b=2 ?q=pepe ?id=4590 ?subject=Curso #historia http://localhost:3000/about?a=1&b=2#historia http://google.com/?q=pepe http://uniovi.es/course/view.php?id=4590 ftp://ftp.is.co.za/rdf/rfc1808.txt mailto:pepe@uni.es?subject=curso urn:isbn:045125021
  25. 25. Jose Emilio Labra Gayo – http://www.di.uniovi.es/~labra Dereferenciación Dereferenciar una URI = Acceder al contenido de una URI Obtener una representación del recurso identificado por la URI Habitualmente se utiliza protocolo HTTP Pueden existir diferentes representaciones La representación puede incluir enlaces a otras URIs con información relacionada Principio: Follow your nose (“Sigue tu instinto”) A partir de una URI, se puede ir encontrando más información y más recursos relacionados fácilmente y de casualidad (serendipia)
  26. 26. Jose Emilio Labra Gayo – http://www.di.uniovi.es/~labra Estabilidad de las URIs URIs = pilar fundamental de cualquier aplicación Web Objetivo: Esquema de URIs estable Lema: Cool URIs don’t change Modificar una URI puede romper aplicaciones existentes Evitar URIs que dependen de detalles de implementación Ejemplo: http://156.35.41.34:8080/pagina.php Importancia de nombres adecuados para URIs http://www.w3.org/Provider/Style/URI
  27. 27. Jose Emilio Labra Gayo – http://www.di.uniovi.es/~labra Formatos de Representación
  28. 28. Jose Emilio Labra Gayo – http://www.di.uniovi.es/~labra Formatos de representación En la Web, el formato más habitual es HTML Existen muchos más formatos: XML, JSON, RDF, PNG, … Un recurso puede tener diferentes tipos de representación Cada tipo de representación sirve para un propósito
  29. 29. Jose Emilio Labra Gayo – http://www.di.uniovi.es/~labra HTML Tipo de representación más popular en la Web Objetivo: representar hipertexto Ejemplo: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Ejemplo</title> </head> <body> <h1>Lista de enlaces</h1> <p>Mis enlaces preferidos</p> <ul> <li><a href="http://www.wikipedia.org">Wikipedia</a> <li><a href="http://www.w3c.org">Consorcio W3c</a> </ul> </body> </html>
  30. 30. Jose Emilio Labra Gayo – http://www.di.uniovi.es/~labra XML Facilita intercambio de información Objetivo: procesamiento automático Comercio electrónico <?xml version="1.0"> <pedido> <producto codigo="R23"> <nombre>Rotulador RX2</nombre> <cantidad>20</cantidad> <comentarios>Comprobad que escriben</comentarios> </producto> <producto codigo="G56"> <nombre>Grapadora Lin</nombre> <cantidad>2</cantidad> <comentarios>Envuelta para regalo</comentarios> </producto> </pedido>
  31. 31. Jose Emilio Labra Gayo – http://www.di.uniovi.es/~labra Tipos de representación Los tipos de representación se identifican con MIME MIME (Multipurpose Internet Mail Extensions) Identificar el tipo de contenido (Cabecera Content-type) Formato tipo/subtipo Ejemplos: text/html: Página Web en formato HTML text/xml, application/xml : Documento XML application/json: Documento JSON application/pdf: Fichero PDF image/jpeg: Imagen JPEG application/xhtml+xml: Documento XHTML application/rdf+xml: Documento RDF text/turtle: Documento Turtle . . . Lista oficial: http://www.iana.org/assignments/media-types
  32. 32. Jose Emilio Labra Gayo – http://www.di.uniovi.es/~labra Funcionamiento de la Web 2 computadores conceptuales: Cliente y Servidor La representación puede calcularse dinámicamente Computación en Cliente Computación en servidor Usuario Navegador Cliente Servidor URI Representación WWW HTTP
  33. 33. La Web Semántica Web semántica  Web de Datos Visión donde los datos se publican y se enlazan con otros datos Objetivos: Jose Emilio Labra Gayo - Universidad de Oviedo Reutilizar Automatizar Integrar Tim Berners Lee, inventor de la WWW
  34. 34. Hacia la web semántica Proof Jose Emilio Labra Gayo - Universidad de Oviedo Ontologies OWL RDF XML Query: SPARQL RDF Schema Unicode URI Trust Unifying Logic Rules RIF Semantic web layer cake, by Tim Berners Lee
  35. 35. Descripción de recursos Jose Emilio Labra Gayo - Universidad de Oviedo RDF (slides) Modelo RDF Tripletas, literales, nodos anónimos, colecciones Sintaxis: Turtle, RDF/XML http://www.easyrdf.org/converter Aplicaciones RDF (slides) Almacenamiento RDF Publicación: RDFa, Microdatos Validación
  36. 36. Consultando la Web de Datos Jose Emilio Labra Gayo - Universidad de Oviedo SPARQL (slides)
  37. 37. Inferencias y Ontologías Jose Emilio Labra Gayo - Universidad de Oviedo Inferencias y ontologías (slides) RDF Schema OWL Razonadores Pellet Editores de ontologías Protégé
  38. 38. Casos Prácticos Jose Emilio Labra Gayo - Universidad de Oviedo DBPedia IMDB BCN WebIndex

×