Linked Data in Use Guillermo Álvaro Rey La Granja de San Ildefonso, 21 Julio 2011 Cursos de Verano UPM 2011 Oportunidades ...
Agenda <ul><li>Re-Intro Linked Data </li></ul><ul><ul><li>(Motivación) </li></ul></ul><ul><li>Publicando Linked Data </li>...
<ul><li>Linked  Data:   </li></ul><ul><ul><li>Para pasar de una Web de documentos… </li></ul></ul><ul><ul><li>… a una  Web...
Motivación: Ejemplo ¿¿??
Motivación: Ejemplo No debería ser…?
(jugadores de fútbol de la provincia de Albacete que han ganado la la Copa del Mundo) Mejor encontrar que buscar… Motivaci...
<ul><li>¿Qué sucede? </li></ul><ul><ul><li>Nos interesan “cosas” concretas, no documentos </li></ul></ul><ul><ul><li>Tenem...
<ul><li>Usar URIs para identificar cosas </li></ul><ul><li>Usar el protocolo HTTP para esas URIs </li></ul><ul><li>Ofrecer...
<ul><li>En la Web de documentos, usamos  HTML , </li></ul><ul><li>En la Web de datos, usamos: </li></ul><ul><li>RDF </li><...
Servicio Operación Mensaje entrada Mensaje salida Documentos y Datos Documento Datos
http://...service#lastFm http://...operation#getEvents http://...inMessage http://...outMessage hasOperation hasInput hasO...
http://...service#lastFm http://...operation#getEvents http://...inMessage http://...outMessage hasOperation hasInput hasO...
http://...service#lastFm http://...operation#getEvents http://...inMessage http://...outMessage hasOperation hasInput hasO...
<ul><li>Datos en la Web expuestos como RDF, y enlazados con otros datos. Eso es: </li></ul><ul><ul><li>Linked Data! </li><...
2007 2008 2009 2010 La evolución de Linked Data Linking Open Data cloud diagram, by Richard Cyganiak and Anja Jentzsch. ht...
<ul><li>Imagen anterior: </li></ul><ul><ul><li>La nube de  “Linked Open Data” </li></ul></ul><ul><li>No confundir: </li></...
<ul><li>“ La Web se transforma en una gran Base de Datos”… </li></ul><ul><li>¿Cómo consultar esta gran BD? </li></ul><ul><...
Motivación para enlazar: Ejemplo en Logística Image by: http://www.flickr.com/photos/senoranderson/ Image by: http://www.f...
Agenda <ul><li>Re-Intro Linked Data </li></ul><ul><ul><li>(Motivación) </li></ul></ul><ul><li>Publicando Linked Data </li>...
<ul><li>Dos grandes vías: </li></ul><ul><ul><li>1) De Bases de Datos relacionales a Linked Data </li></ul></ul><ul><ul><ul...
<ul><li>Caso práctico: </li></ul><ul><li>Linked User Feedback </li></ul><ul><li>Un servicio para almacenar y exponer como ...
<ul><li>Vocabularios : </li></ul><ul><ul><li>(usados en Revyu.com) </li></ul></ul><ul><ul><li>Review vocabulary </li></ul>...
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . @prefix rev: <http://purl.org/stuff/rev#> .  @prefix tags: <h...
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . @prefix rev: <http://purl.org/stuff/rev#> .  @prefix tags: <h...
<ul><li>Un repositorio RDF : </li></ul><ul><ul><li>Para almacenar los datos semánticamente. </li></ul></ul><ul><ul><li>P.e...
<ul><li>Un  frontend Linked Data : </li></ul><ul><ul><li>Para exponer los datos como Linked Data (con content negotiation,...
<ul><li>Y ya tenemos los datos expuestos como Linked Data con  Pubby : </li></ul><ul><ul><li>Acceso HTML: </li></ul></ul><...
<ul><li>Una  API </li></ul>Añadidos (I) <ul><li>P.ej. RDF2Go: </li></ul><ul><ul><li>http://rdf2go.semweb4j.org/ </li></ul>...
<ul><li>Un  SPARQL explorer </li></ul>Añadidos (II)
<ul><li>Snorql: </li></ul><ul><ul><li>SPARQL explorer </li></ul></ul><ul><ul><ul><li>http://wiki.github.com/kurtjx/SNORQL/...
Agenda <ul><li>Re-Intro Linked Data </li></ul><ul><ul><li>(Motivación) </li></ul></ul><ul><li>Publicando Linked Data </li>...
<ul><li>Navegadores Linked Data (páginas y extensiones sobre navegadores, etc.) </li></ul><ul><ul><li>Tabulator </li></ul>...
<ul><li>Herramientas para visualizar relaciones. </li></ul><ul><li>Ejemplo RelFinder: </li></ul><ul><ul><li>http://www.vis...
“ Ejercicio” en RelFinder Relaciones entre “Pulp Fiction”, “Kill Bill” y “Reservoir Dogs”
<ul><li>Consumiendo Linked Data con  SPARQL </li></ul><ul><ul><li>Usando los SPARQL endpoints que exponen los diferentes c...
<ul><li>Un SPARQL endpoint es un servicio REST </li></ul><ul><li>HTTP  GET  con parámetro  query </li></ul><ul><ul><li>GET...
SPICES (Semantic Platform for the Interaction and Consumption of Enriched Services) http://soa4all.isoco.net/spices/ iServ...
<ul><li>Algunos ejemplos </li></ul><ul><ul><li>RAP – RDF API for PHP </li></ul></ul><ul><ul><ul><li>http://www4.wiwiss.fu-...
Visualizando grafos con SPARQL PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> PREFIX wsl: <http://cms-wg.sti2.org/ns...
<ul><li>The New York Times: Alumni In The News </li></ul><ul><ul><li>http://data.nytimes.com/schools/schools.html </li></u...
<ul><li>The New York Times: Código fuente disponible </li></ul>…  y son consultas SPARQL Ejemplo de consumo de Linked Data...
Ejemplo de Uso en la Web de iSOCO Lab http://lab.isoco.net +
<ul><ul><li>Recomendaciones </li></ul></ul>Ejemplo sacando partido de enlazar (work-in-progress) “ El Viajero” como Linked...
Servicios de reconocimiento de nombres de entidades (en textos en lenguaje natural) Ejemplos: Named Entity Recognition sob...
Ejemplo NER en miKrow Company:  Vodafone UK (info) Uso de Linked Data, para ir más allá de la ontología de dominio http://...
Agenda <ul><li>Re-Intro Linked Data </li></ul><ul><ul><li>(Motivación) </li></ul></ul><ul><li>Publicando Linked Data </li>...
Últimos ratings en LUF Últimos 5 ratings en LUF ¿Cómo sería para los últimos ratings de 5 estrellas? http://soa4all.isoco....
Fútbol en la DBpedia http://dbpedia.org/snorql Jugadores de fútbol de la provincia de Albacete que han ganado la Copa del ...
http://dbpedia.org/page/Andrés_Iniesta ¿Cómo sería para los jugadores de fútbol nacidos en España que han ganado la Copa d...
22 jugadores y no 23 ¿? Fútbol en la DBpedia
http://dbpedia.org/page/Fernando_Torres Ojo con los datos… Fútbol en la DBpedia
Ejemplo de app: Linked Data Movie Quiz Creando preguntas sobre cine usando la Linked Movie Data Base http://10k.aneventapa...
SPARQL en Linked Data Movie Quiz https://github.com/lamboratory/Linked-Data-Movie-Quiz Podemos ver las consultas SPARQL us...
Actores en la Linked Movie DataBase http://data.linkedmdb.org/snorql Películas en donde sale Marlon Brando, con sus person...
Corripio, c/Fuencarral 102  ¿Cómo sería para actores que hayan hecho de Vito Corleone?  Actores en la Linked Movie DataBase
<ul><li>Consultar un repositorio está bien… </li></ul><ul><li>… pero ¿y si quiero consultar sobre varios a la vez? </li></...
Queries federadas: Personajes de la Biblia  Hijos de Abraham
Bibleontology DBpedia Personajes de la Biblia: Bible Ontology y DBpedia
Hijos de Abraham con abstract en castellano en la DBpedia Queries federadas: Ejemplo
Consulta a repositorio centralizado Corripio, c/Fuencarral 102  http://factforge.net/sparql Opción para queries sobre dist...
Visualizando datos en FactForge Corripio, c/Fuencarral 102  Datos sobre  playmates  en FactForge, incluyendo inferidas  Na...
Agradecimientos / Acknowledgements <ul><ul><li>Juan Sequeda   @juansequeda </li></ul></ul><ul><ul><ul><li>(many ideas from...
¿Quieres innovar? Barcelona Tel +34 935 677 200 Edificio Testa  A C/ Alcalde Barnils, 64-68  St. Cugat del Vallès 08174 Ba...
Upcoming SlideShare
Loading in …5
×

Linked Data In Use (Cursos de Verano UPM 2011)

3,008 views

Published on

Slides de la lección "Linked Data In Use" en Cursos de Verano UPM 2011: "Oportunidades de la web de datos (Linked Data) en España"

Published in: Technology, Education
  • Be the first to comment

Linked Data In Use (Cursos de Verano UPM 2011)

  1. 1. Linked Data in Use Guillermo Álvaro Rey La Granja de San Ildefonso, 21 Julio 2011 Cursos de Verano UPM 2011 Oportunidades de la web de datos (Linked Data) en España
  2. 2. Agenda <ul><li>Re-Intro Linked Data </li></ul><ul><ul><li>(Motivación) </li></ul></ul><ul><li>Publicando Linked Data </li></ul><ul><ul><li>(un ejemplo) </li></ul></ul><ul><li>Consumiendo Linked Data </li></ul><ul><ul><li>(ejemplos) </li></ul></ul><ul><li>“ Ejercicios” </li></ul><ul><ul><li>(Un poco de SPARQL) </li></ul></ul>
  3. 3. <ul><li>Linked Data: </li></ul><ul><ul><li>Para pasar de una Web de documentos… </li></ul></ul><ul><ul><li>… a una Web de Datos </li></ul></ul><ul><ul><li>… ¿por qué? </li></ul></ul>Motivación Un ejemplo: ¿Jugadores de fútbol de la provincia de Albacete que han marcado un gol en la final de la Copa del Mundo?
  4. 4. Motivación: Ejemplo ¿¿??
  5. 5. Motivación: Ejemplo No debería ser…?
  6. 6. (jugadores de fútbol de la provincia de Albacete que han ganado la la Copa del Mundo) Mejor encontrar que buscar… Motivación: Ejemplo
  7. 7. <ul><li>¿Qué sucede? </li></ul><ul><ul><li>Nos interesan “cosas” concretas, no documentos </li></ul></ul><ul><ul><li>Tenemos que encontrar las cosas que buscamos en los documentos </li></ul></ul><ul><ul><li>Las máquinas no pueden saber (aunque adivinan bien) los contenidos </li></ul></ul><ul><li>Publicando datos en bruto… </li></ul><ul><ul><li>Hacemos más fácil a las máquinas encontrar cosas </li></ul></ul><ul><ul><li>Mejor si lo hacemos siguiendo formatos y protocolos estándar </li></ul></ul><ul><ul><li>… y mejor aún si los enlazamos con otros datos </li></ul></ul>Motivación: Datos vs Documentos
  8. 8. <ul><li>Usar URIs para identificar cosas </li></ul><ul><li>Usar el protocolo HTTP para esas URIs </li></ul><ul><li>Ofrecer información útil en esas direcciones </li></ul><ul><li>Incluir enlaces a otras URIs </li></ul>Linked Data: Los 4 principios (Tim Berners-Lee, 2006) Image by: http://www.flickr.com/photos/PhOtOnQuAnTiQuE/
  9. 9. <ul><li>En la Web de documentos, usamos HTML , </li></ul><ul><li>En la Web de datos, usamos: </li></ul><ul><li>RDF </li></ul><ul><li>(Resource Description Framework) </li></ul><ul><li>Modelo de datos </li></ul><ul><li>Basado en tripletas: sujeto, verbo, predicado . Ej: </li></ul><ul><ul><li><Guillermo> <vive en> <Madrid> </li></ul></ul><ul><ul><li><Madrid> <es la capital de> <España> </li></ul></ul><ul><ul><li><España> <es campeona de> <Mundial de Fútbol> </li></ul></ul><ul><ul><li>… </li></ul></ul><ul><li>Serializable en diferentes formatos: </li></ul><ul><ul><li>RDF/XML, RDFa, N3, Turtle, JSON… </li></ul></ul>RDF
  10. 10. Servicio Operación Mensaje entrada Mensaje salida Documentos y Datos Documento Datos
  11. 11. http://...service#lastFm http://...operation#getEvents http://...inMessage http://...outMessage hasOperation hasInput hasOutput Last.fm service geo.getEvents label label Datos en RDF Datos en RDF y con URIs
  12. 12. http://...service#lastFm http://...operation#getEvents http://...inMessage http://...outMessage hasOperation hasInput hasOutput Last.fm service geo.getEvents label label http://...review http://...reviewer Guillermo Great music service! hasReview hasReviewer name text Enlazando con otros datos Datos en RDF
  13. 13. http://...service#lastFm http://...operation#getEvents http://...inMessage http://...outMessage hasOperation hasInput hasOutput Last.fm service geo.getEvents label label http://...review http://...reviewer Guillermo Great music service! hasReview hasReviewer name text http://dbpedia.org/resource/Madrid lives in … y más Datos en RDF
  14. 14. <ul><li>Datos en la Web expuestos como RDF, y enlazados con otros datos. Eso es: </li></ul><ul><ul><li>Linked Data! </li></ul></ul>Datos enlazados
  15. 15. 2007 2008 2009 2010 La evolución de Linked Data Linking Open Data cloud diagram, by Richard Cyganiak and Anja Jentzsch. http://lod-cloud.net/
  16. 16. <ul><li>Imagen anterior: </li></ul><ul><ul><li>La nube de “Linked Open Data” </li></ul></ul><ul><li>No confundir: </li></ul><ul><ul><li>Linked Data (Datos enlazados) </li></ul></ul><ul><ul><li>Open Data (Datos abiertos) </li></ul></ul>Linked (Open?) Data
  17. 17. <ul><li>“ La Web se transforma en una gran Base de Datos”… </li></ul><ul><li>¿Cómo consultar esta gran BD? </li></ul><ul><li>SPARQL </li></ul><ul><li>(W3C Recommendation) </li></ul><ul><li>http://www.w3.org/TR/rdf-sparql-query/ </li></ul>Veremos unos cuantos ejemplos… SPARQL
  18. 18. Motivación para enlazar: Ejemplo en Logística Image by: http://www.flickr.com/photos/senoranderson/ Image by: http://www.flickr.com/photos/argen/ Image by: http://map-of-spain.co.uk
  19. 19. Agenda <ul><li>Re-Intro Linked Data </li></ul><ul><ul><li>(Motivación) </li></ul></ul><ul><li>Publicando Linked Data </li></ul><ul><ul><li>(un ejemplo) </li></ul></ul><ul><li>Consumiendo Linked Data </li></ul><ul><ul><li>(ejemplos) </li></ul></ul><ul><li>“ Ejercicios” </li></ul><ul><ul><li>(Un poco de SPARQL) </li></ul></ul>
  20. 20. <ul><li>Dos grandes vías: </li></ul><ul><ul><li>1) De Bases de Datos relacionales a Linked Data </li></ul></ul><ul><ul><ul><li>D2R </li></ul></ul></ul><ul><ul><ul><li>Triplify </li></ul></ul></ul><ul><ul><ul><li>Virtuoso </li></ul></ul></ul><ul><ul><ul><li>Ultrawrap </li></ul></ul></ul><ul><ul><ul><li>… </li></ul></ul></ul><ul><ul><li>2) Usando Repositorios RDF nativos </li></ul></ul><ul><ul><ul><li>Sesame </li></ul></ul></ul><ul><ul><ul><li>Jena </li></ul></ul></ul><ul><ul><ul><li>Owlim </li></ul></ul></ul><ul><ul><ul><li>Talis platform </li></ul></ul></ul><ul><ul><ul><li>… </li></ul></ul></ul><ul><ul><li>(También en CMS tipo Drupal 7, en HTML + RDFa…) </li></ul></ul>http://triplify.org http://www4.wiwiss.fu-berlin.de/bizer/d2r-server/ Veremos ejemplo de esto… Publicando Linked Data
  21. 21. <ul><li>Caso práctico: </li></ul><ul><li>Linked User Feedback </li></ul><ul><li>Un servicio para almacenar y exponer como Linked Data feedback de los usuarios en forma de: </li></ul><ul><ul><li>Ratings </li></ul></ul><ul><ul><li>Comentarios </li></ul></ul><ul><ul><li>Etiquetas </li></ul></ul><ul><li>http://soa4all.isoco.net/luf/about </li></ul>Creando Linked Data con repositorio
  22. 22. <ul><li>Vocabularios : </li></ul><ul><ul><li>(usados en Revyu.com) </li></ul></ul><ul><ul><li>Review vocabulary </li></ul></ul><ul><ul><ul><li>http://www.purl.org/stuff/rev </li></ul></ul></ul><ul><ul><li>Tag Ontology </li></ul></ul><ul><ul><ul><li>http://www.holygoat.co.uk/projects/tags/ </li></ul></ul></ul><ul><ul><li>(además…) </li></ul></ul><ul><ul><li>Provenance vocabulary </li></ul></ul><ul><ul><ul><li>http://purl.org/net/provenance/ </li></ul></ul></ul>¿Qué necesitamos? (I)
  23. 23. @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . @prefix rev: <http://purl.org/stuff/rev#> . @prefix tags: <http://www.holygoat.co.uk/owl/redwood/0.1/tags/> . <http://example.com/items#item1> rev:hasReview <http://soa4all.isoco.net/luf/ratings/xxx> ; rev:hasReview <http://soa4all.isoco.net/luf/comments/yyy> ; tags:tag <http://soa4all.isoco.net/luf/taggings/zzz> . <http://soa4all.isoco.net/luf/ratings/xxx> rdf:Type rev:Review ; rev:rating &quot;3&quot; ; rev:minRating &quot;1&quot; ; rev:maxRating &quot;5&quot; ; rev:reviewer <http://example.com/users#user1> ; rev:createdOn &quot;2010-06-22T12:29:28+0200&quot;^^xsd:dateTime . <http://soa4all.isoco.net/luf/comments/yyy> rdf:Type rev:Review ; rev:text &quot;This is a comment&quot; ; rev:reviewer <http://example.com/users#user1> ; rev:createdOn &quot;2010-06-22T10:59:01+0200&quot;^^xsd:dateTime . <http://soa4all.isoco.net/luf/taggings/zzz> rdf:Type tags:Tagging ; tags:associatedTag &quot;one tag&quot; , &quot;other tag&quot; ; tags:taggedBy <http://example.com/users#user1> ; tags:taggedOn &quot;2010-06-22T13:03:05+0200&quot;^^xsd:dateTime . Un rating: Un comentario: Un etiquetado: ¿Qué necesitamos? (I)
  24. 24. @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . @prefix rev: <http://purl.org/stuff/rev#> . @prefix tags: <http://www.holygoat.co.uk/owl/redwood/0.1/tags/> . <http://example.com/items#item1> rev:hasReview <http://soa4all.isoco.net/luf/ratings/xxx> ; rev:hasReview <http://soa4all.isoco.net/luf/comments/yyy> ; tags:tag <http://soa4all.isoco.net/luf/taggings/zzz> . <http://soa4all.isoco.net/luf/ratings/xxx> rdf:Type rev:Review ; rev:rating &quot;3&quot; ; rev:minRating &quot;1&quot; ; rev:maxRating &quot;5&quot; ; rev:reviewer <http://example.com/users#user1> ; rev:createdOn &quot;2010-06-22T12:29:28+0200&quot;^^xsd:dateTime . <http://soa4all.isoco.net/luf/comments/yyy> rdf:Type rev:Review ; rev:text &quot;This is a comment&quot; ; rev:reviewer <http://example.com/users#user1> ; rev:createdOn &quot;2010-06-22T10:59:01+0200&quot;^^xsd:dateTime . <http://soa4all.isoco.net/luf/taggings/zzz> rdf:Type tags:Tagging ; tags:associatedTag &quot;one tag&quot; , &quot;other tag&quot; ; tags:taggedBy <http://example.com/users#user1> ; tags:taggedOn &quot;2010-06-22T13:03:05+0200&quot;^^xsd:dateTime . http://example.com/items#item1 http://soa4all.isoco.net/luf/comments/yyy http://example.com/users#user1 This is a comment hasReview hasReviewer text ¿Qué necesitamos? (I)
  25. 25. <ul><li>Un repositorio RDF : </li></ul><ul><ul><li>Para almacenar los datos semánticamente. </li></ul></ul><ul><ul><li>P.ej. SESAME </li></ul></ul><ul><ul><ul><li>http://www.openrdf.org/ </li></ul></ul></ul><ul><ul><ul><li>Desplegar en Tomcat </li></ul></ul></ul>¿Qué necesitamos? (II)
  26. 26. <ul><li>Un frontend Linked Data : </li></ul><ul><ul><li>Para exponer los datos como Linked Data (con content negotiation, etc.) </li></ul></ul><ul><ul><li>P.ej. Pubby </li></ul></ul><ul><ul><ul><li>http://www4.wiwiss.fu-berlin.de/pubby/ </li></ul></ul></ul><ul><ul><ul><li>Desplegar en Tomcat </li></ul></ul></ul>¿Qué necesitamos? (III)
  27. 27. <ul><li>Y ya tenemos los datos expuestos como Linked Data con Pubby : </li></ul><ul><ul><li>Acceso HTML: </li></ul></ul><ul><ul><ul><li>[base]/comments/73ab5e51d203587be87b1b3bbb4f3cc6 </li></ul></ul></ul><ul><ul><ul><li>[base]/ratings/643e74d8389277dd26907ea56856cbd4 </li></ul></ul></ul><ul><ul><ul><li>[base]/taggings/675330fa199511c3098672a200d7834b </li></ul></ul></ul><ul><ul><li>Con content-negotiation. También ofrece los datos como RDF/XML: </li></ul></ul><ul><ul><ul><li>?output=n3 </li></ul></ul></ul><ul><ul><ul><li>?output=xml </li></ul></ul></ul>¿Qué necesitamos? (III)
  28. 28. <ul><li>Una API </li></ul>Añadidos (I) <ul><li>P.ej. RDF2Go: </li></ul><ul><ul><li>http://rdf2go.semweb4j.org/ </li></ul></ul><ul><ul><li>Abstracción java sobre repositorios RDF </li></ul></ul><ul><ul><li>Programación independiente del repositorio </li></ul></ul><ul><ul><li>Alternativa, programar sobre la interfaz del repositorio </li></ul></ul>
  29. 29. <ul><li>Un SPARQL explorer </li></ul>Añadidos (II)
  30. 30. <ul><li>Snorql: </li></ul><ul><ul><li>SPARQL explorer </li></ul></ul><ul><ul><ul><li>http://wiki.github.com/kurtjx/SNORQL/ </li></ul></ul></ul><ul><ul><li>Ejemplo: </li></ul></ul><ul><ul><ul><li>http://soa4all.isoco.net/luf/snorql/ </li></ul></ul></ul>Añadidos (II) Luego volvemos para hacer consultas…
  31. 31. Agenda <ul><li>Re-Intro Linked Data </li></ul><ul><ul><li>(Motivación) </li></ul></ul><ul><li>Publicando Linked Data </li></ul><ul><ul><li>(un ejemplo) </li></ul></ul><ul><li>Consumiendo Linked Data </li></ul><ul><ul><li>(ejemplos) </li></ul></ul><ul><li>“ Ejercicios” </li></ul><ul><ul><li>(Un poco de SPARQL) </li></ul></ul>
  32. 32. <ul><li>Navegadores Linked Data (páginas y extensiones sobre navegadores, etc.) </li></ul><ul><ul><li>Tabulator </li></ul></ul><ul><ul><li>Disco </li></ul></ul><ul><ul><li>LENA </li></ul></ul><ul><ul><li>Marble </li></ul></ul><ul><ul><li>VisiNav </li></ul></ul><ul><ul><li>Zitgist </li></ul></ul><ul><ul><li>… </li></ul></ul>Consumiendo Linked Data: Navegadores Ejemplo de rating en Zitgist:
  33. 33. <ul><li>Herramientas para visualizar relaciones. </li></ul><ul><li>Ejemplo RelFinder: </li></ul><ul><ul><li>http://www.visualdataweb.org/relfinder/relfinder.php </li></ul></ul>Consumiendo Linked Data: Visualizadores de relaciones Ejemplo: Relación entre Iniesta y Gasol
  34. 34. “ Ejercicio” en RelFinder Relaciones entre “Pulp Fiction”, “Kill Bill” y “Reservoir Dogs”
  35. 35. <ul><li>Consumiendo Linked Data con SPARQL </li></ul><ul><ul><li>Usando los SPARQL endpoints que exponen los diferentes conjuntos de datos </li></ul></ul><ul><ul><li>Ejemplos: </li></ul></ul><ul><ul><ul><li>Dbpedia: http://dbpedia.org/sparql </li></ul></ul></ul><ul><ul><ul><li>UK Government: http://data.gov.uk/sparql </li></ul></ul></ul><ul><ul><ul><li>USA Government: http://semantic.data.gov/sparql </li></ul></ul></ul><ul><ul><ul><li>Musicbrainz: http://dbtune.org/musicbrainz/sparql </li></ul></ul></ul><ul><ul><ul><li>… </li></ul></ul></ul><ul><ul><ul><li>LUF: http://soa4all.isoco.net/luf/sparql </li></ul></ul></ul><ul><ul><li>CKAN data hub: http://ckan.net/ </li></ul></ul>Consumiendo Linked Data: Usando SPARQL
  36. 36. <ul><li>Un SPARQL endpoint es un servicio REST </li></ul><ul><li>HTTP GET con parámetro query </li></ul><ul><ul><li>GET /sparql?query=PREFIX+... </li></ul></ul><ul><li>Respuestas: </li></ul><ul><ul><li>(usando la cabecera ACCEPT o vía parámetro ej. “& out=json ”) </li></ul></ul><ul><ul><li>RDF </li></ul></ul><ul><ul><li>XML </li></ul></ul><ul><ul><li>(JSON) </li></ul></ul>Usando SPARQL
  37. 37. SPICES (Semantic Platform for the Interaction and Consumption of Enriched Services) http://soa4all.isoco.net/spices/ iServe (Linked Data services repository) http://iserve.kmi.open.ac.uk/browser.html Ejemplos de integración de LUF (via consultas al SPARQL endpoint)
  38. 38. <ul><li>Algunos ejemplos </li></ul><ul><ul><li>RAP – RDF API for PHP </li></ul></ul><ul><ul><ul><li>http://www4.wiwiss.fu-berlin.de/bizer/rdfapi/index.html </li></ul></ul></ul><ul><ul><li>Sesame (Java) </li></ul></ul><ul><ul><ul><li>http://www.openrdf.org/ </li></ul></ul></ul><ul><ul><li>Jena / ARQ (Java) </li></ul></ul><ul><ul><ul><li>http://jena.sourceforge.net </li></ul></ul></ul><ul><ul><li>PySPARQL (Python) </li></ul></ul><ul><ul><ul><li>http://code.google.com/p/pysparql </li></ul></ul></ul><ul><ul><li>… </li></ul></ul>Librerías para SPARQL <ul><ul><li>Usada en la página de LUF </li></ul></ul><ul><ul><li>http://soa4all.isoco.net/luf/about </li></ul></ul>
  39. 39. Visualizando grafos con SPARQL PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> PREFIX wsl: <http://cms-wg.sti2.org/ns/minimal-service-model#> SELECT DISTINCT ?op ?labelOp WHERE { <http://iserve.kmi.open.ac.uk/...#LastFmEvents> wsl:hasOperation ?op . OPTIONAL{ ?op rdfs:label ?labelOp . } } <ul><ul><li>SPARQL y visualización </li></ul></ul>
  40. 40. <ul><li>The New York Times: Alumni In The News </li></ul><ul><ul><li>http://data.nytimes.com/schools/schools.html </li></ul></ul>Ejemplo de consumo de Linked Data: NY Times
  41. 41. <ul><li>The New York Times: Código fuente disponible </li></ul>… y son consultas SPARQL Ejemplo de consumo de Linked Data: NY Times
  42. 42. Ejemplo de Uso en la Web de iSOCO Lab http://lab.isoco.net +
  43. 43. <ul><ul><li>Recomendaciones </li></ul></ul>Ejemplo sacando partido de enlazar (work-in-progress) “ El Viajero” como Linked Data “ Guía Santillana” como Linked Data Ratings de LUF Datos meteorológicos (AEMET) Contexto de Usuarios (RDF) +
  44. 44. Servicios de reconocimiento de nombres de entidades (en textos en lenguaje natural) Ejemplos: Named Entity Recognition sobre Linked Data http://dbpedia.org/spotlight http://www.alchemyapi.com/ http://www.opencalais.com/
  45. 45. Ejemplo NER en miKrow Company: Vodafone UK (info) Uso de Linked Data, para ir más allá de la ontología de dominio http://mikrow.isoco.net
  46. 46. Agenda <ul><li>Re-Intro Linked Data </li></ul><ul><ul><li>(Motivación) </li></ul></ul><ul><li>Publicando Linked Data </li></ul><ul><ul><li>(un ejemplo) </li></ul></ul><ul><li>Consumiendo Linked Data </li></ul><ul><ul><li>(ejemplos) </li></ul></ul><ul><li>“ Ejercicios” </li></ul><ul><ul><li>(Un poco de SPARQL) </li></ul></ul>
  47. 47. Últimos ratings en LUF Últimos 5 ratings en LUF ¿Cómo sería para los últimos ratings de 5 estrellas? http://soa4all.isoco.net/luf/snorql
  48. 48. Fútbol en la DBpedia http://dbpedia.org/snorql Jugadores de fútbol de la provincia de Albacete que han ganado la Copa del Mundo
  49. 49. http://dbpedia.org/page/Andrés_Iniesta ¿Cómo sería para los jugadores de fútbol nacidos en España que han ganado la Copa del Mundo de fútbol? Una pista… Fútbol en la DBpedia
  50. 50. 22 jugadores y no 23 ¿? Fútbol en la DBpedia
  51. 51. http://dbpedia.org/page/Fernando_Torres Ojo con los datos… Fútbol en la DBpedia
  52. 52. Ejemplo de app: Linked Data Movie Quiz Creando preguntas sobre cine usando la Linked Movie Data Base http://10k.aneventapart.com/Uploads/310/ Extra! (idea) Usuarios al jugar pueden identificar errores en el set de datos
  53. 53. SPARQL en Linked Data Movie Quiz https://github.com/lamboratory/Linked-Data-Movie-Quiz Podemos ver las consultas SPARQL usadas para generar las preguntas…
  54. 54. Actores en la Linked Movie DataBase http://data.linkedmdb.org/snorql Películas en donde sale Marlon Brando, con sus personajes, directores y años Corripio, c/Fuencarral 102 …
  55. 55. Corripio, c/Fuencarral 102 ¿Cómo sería para actores que hayan hecho de Vito Corleone? Actores en la Linked Movie DataBase
  56. 56. <ul><li>Consultar un repositorio está bien… </li></ul><ul><li>… pero ¿y si quiero consultar sobre varios a la vez? </li></ul><ul><li>Algunas opciones: </li></ul><ul><ul><li>Varias queries </li></ul></ul><ul><ul><li>Queries federadas (usando “SERVICE” en SPARQL 1.1) </li></ul></ul><ul><ul><li>Juntando sets de datos </li></ul></ul><ul><ul><li>Usar repositorio con varios datasets </li></ul></ul>Consultando más de un dataset a la vez Veremos ejemplo Veremos ejemplo
  57. 57. Queries federadas: Personajes de la Biblia Hijos de Abraham
  58. 58. Bibleontology DBpedia Personajes de la Biblia: Bible Ontology y DBpedia
  59. 59. Hijos de Abraham con abstract en castellano en la DBpedia Queries federadas: Ejemplo
  60. 60. Consulta a repositorio centralizado Corripio, c/Fuencarral 102 http://factforge.net/sparql Opción para queries sobre distintos datasets: Usar un repositorio que incluya varios. P.ej. “ Ejercicio”: ¿Qué datos saca esta query?
  61. 61. Visualizando datos en FactForge Corripio, c/Fuencarral 102 Datos sobre playmates en FactForge, incluyendo inferidas Navegación facetada directamente con exhibit Ojo a algunos datos en distintos formatos
  62. 62. Agradecimientos / Acknowledgements <ul><ul><li>Juan Sequeda @juansequeda </li></ul></ul><ul><ul><ul><li>(many ideas from his Consuming Linked Data slides at SemTech2010) </li></ul></ul></ul><ul><ul><li>Selección española de fútbol, Marlon Brando, Hugh Heffner, personajes bíblicos…;) </li></ul></ul>
  63. 63. ¿Quieres innovar? Barcelona Tel +34 935 677 200 Edificio Testa A C/ Alcalde Barnils, 64-68 St. Cugat del Vallès 08174 Barcelona Madrid Tel +34 913 349 797 Av. del Partenón, 16-18 1,7 28042 Madrid Valencia Tel +34 963 467 143 Oficina 107 C/ Prof. Beltrán Báguena, 4 46009 Valencia Pamplona Tel +34 948 102 408 Parque Tomás Caballero, 2, 6º-4ª 31006 Pamplona ¿Dónde estamos? Contacta con iSOCO Guillermo Álvaro Rey [email_address] @guillelamb

×