A la découverte du Web sémantique

31 547 vues

Publié le

Diaporama présentant les buts et les technologies du Web sémantique.

Publié dans : Technologie
4 commentaires
70 j’aime
Statistiques
Remarques
Aucun téléchargement
Vues
Nombre de vues
31 547
Sur SlideShare
0
Issues des intégrations
0
Intégrations
5 480
Actions
Partages
0
Téléchargements
0
Commentaires
4
J’aime
70
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

A la découverte du Web sémantique

  1. 1. A la découverte de la planète Web sémantique Gautier Poupeau <http://www.lespetitescases.net/foaf_got.rdf#GP> gautier.poupeau@lespetitescases.net
  2. 2. A la rencontre de cette mystérieuse planète et de quelques autochtones…
  3. 3. Le Web sémantique Le Web L’intelligence artificielle Les moteurs de recherche La constellation du Web sémantique XML La linguistique Les BDR La théorie des graphes Métadonnées
  4. 4. Quelques caractéristiques de la planète Web sémantique Certains pensent que la prochaine évolution du Web passera par les technologies du Web sémantique. Rapport avec le Web 3.0 Presque aucun… Rapport avec la « sémantique » Article de Tim Berners-Lee, Ora Lassila et James Hendler dans la revue Scientific American en 2001 Acte de naissance officielle Tim Berners-Lee Gourou du Web sémantique Concept Activité du W3C Ensemble de technologies Nature du Web sémantique 2 octobre 1997 Premières « working draft » au W3C
  5. 5. « The Semantic Web is a web of data, in some ways like a global database  » « The Semantic Web is not a separate Web but an extension of the current one, in which information is given well-defined meaning, better enabling computers and people to work in cooperation. » « Il existe un énorme gisement de données enfouies dans tous les ordinateurs de la planète : en les reliant, le Web sémantique permettra d'exploiter cette mine pour améliorer nos connaissances dans de nombreux domaines.» Tim Berners-Lee, père fondateur du Web et du Web sémantique, W3C
  6. 6. « But the second big trend then is to decouple the data from the application or the application services, so that in that sense what you can do is write your application or create services independent of the data sources they have to deal with, which comes full circle back to having a virtual layer between application services and data. The application can go out and find whatever data sources are best to use for that particular question. That’s what semantic technology provides for enterprise information management. » Robert Shimp, Vice-président division « Global technology business », Oracle
  7. 7. « The reason I got involved with the Semantic Web was...I wanted control of my data. » David Beckett, Software architect, Yahoo!
  8. 8. « As I mentioned above, hyperdata is to data what hypertext is to text. Hyperdata is a great word -- it is so simple and yet makes a big point. It's about data that links to other data. It does for data what hypertext does for text. That's what RDF and the Semantic Web are really all about. » Nova Spivack, CEO, Radar Networks et créateur de la première application Web 3.0, Twine
  9. 9. Christian Fauré, Senior manager, Atos Origin « Avec les normes du web sémantique, il n’y a plus d’APIs. La qualité des données passe par l’environnement de description des ressources que sont ces données. Les données sont mises à nu, plus besoin d’APIs. C’est là que l’intérêt du jeu est décuplé : quand on n’a plus de contraintes dans la manière dont on peut utiliser les données elles-mêmes, il y toujours plus de plaisir. »
  10. 10. Pour résumer, les technologies du Web sémantique introduisent un nouveau paradigme Avant Après Les usages L’application Les données Les données Les usages L’application API Les données L’application Les usages Les usages L’application Les données API
  11. 11. Comment communique-t-on sur cette planète ?....
  12. 12. R D F Cadre/modèle de Description d’une ressource essource escription ramework
  13. 13. R D F Un modèle de triples
  14. 14. SUJET PREDICAT OBJET SUJET VERBE COMPLEMENT Structure d’un triple RDF Structure d’une phrase simple R D F = une phrase simple
  15. 15. Tim Berners-Lee est une personne
  16. 16. <http://www.w3.org/People/Berners-Lee/card#i> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Person>
  17. 17. Tim Berners-Lee est le fondateur du W3C
  18. 18. <http://www.w3.org/People/Berners-Lee/card#i> <http://purl.org/dc/terms/creator> <http://www.w3.org/>
  19. 19. Tim Berners-Lee a pour nom Timothy Berners-Lee
  20. 20. <http://www.w3.org/People/Berners-Lee/card#i> <http://xmlns.com/foaf/0.1/name> &quot;Timothy Berners-Lee&quot;
  21. 21. R D F Un modèle de graphes
  22. 22. <http://xmlns.com/foaf/0.1/Person> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://purl.org/dc/terms/creator> <http://www.w3.org/People/Berners-Lee/card#i> <http://www.w3.org/>
  23. 23. &quot;timbl&quot; <http://xmlns.com/foaf/0.1/nick> &quot;Timothy Berners-Lee&quot; <http://xmlns.com/foaf/0.1/name> <http://www.w3.org/People/Berners-Lee/card#i>
  24. 24. R D F Sérialiser du ou les alphabets du Web sémantique
  25. 25. RDF/XML <ul><li><rdf:RDF </li></ul><ul><li>xmlns:foaf=&quot;http://xmlns.com/foaf/0.1/&quot; </li></ul><ul><li>xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot; </li></ul><ul><li>xmlns:rdfs=&quot;http://www.w3.org/2000/01/rdf-schema#&quot; </li></ul><ul><li>xmlns:dc=&quot; http://purl.org/dc/terms/ &quot;> </li></ul><ul><ul><li><rdf:Description rdf:about=&quot; http://www.w3.org/People/Berners-Lee/card#i &quot;> </li></ul></ul><ul><ul><ul><li>< rdf:type rdf:resource=&quot; http://xmlns.com/foaf/0.1/Person &quot;/> </li></ul></ul></ul><ul><ul><ul><li>< foaf:name > Timothy Berners-Lee </foaf:name> </li></ul></ul></ul><ul><ul><ul><li>< dc:creator rdf:resource= &quot; http://www.w3.org &quot;/> </li></ul></ul></ul><ul><ul><ul><li>< foaf:nick > timbl </foaf:nick> </li></ul></ul></ul><ul><ul><li></rdf:Description> </li></ul></ul><ul><li></rdf:RDF> </li></ul>
  26. 26. @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . @prefix foaf: <http://xmlns.com/foaf/0.1/> . @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . @prefix dc: <http://purl.org/dc/terms/> . <http://www.w3.org/People/Berners-Lee/card#i> rdf:type foaf:Person ; foaf:name &quot;Timothy Berners-Lee&quot; ; dc:creator <http://www.w3.org> ; foaf:nick &quot;timbl&quot; . Notation 3 (N3, N-triples, Turtle)
  27. 27. RDFa : exprimer du RDF dans du HTML <ul><li><!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML+RDFa 1.0//EN&quot; </li></ul><ul><li>&quot;http://www.w3.org/MarkUp/DTD/xhtml-rdfa-1.dtd&quot;> </li></ul><ul><li><html </li></ul><ul><li>xmlns:foaf=&quot;http://xmlns.com/foaf/0.1/&quot; </li></ul><ul><li>xmlns=&quot;http://www.w3.org/1999/xhtml&quot; </li></ul><ul><li>xmlns:dc=&quot;http://purl.org/dc/terms/&quot;> </li></ul><ul><ul><li><head> </li></ul></ul><ul><ul><ul><li><title>Description de Timbl en XHTML + RDFa</title> </li></ul></ul></ul><ul><ul><li></head> </li></ul></ul><ul><ul><li><body> </li></ul></ul><ul><ul><ul><li><div typeof =&quot; foaf:person &quot; about=&quot; http://www.w3.org/People/Berners-Lee/card#i &quot;> </li></ul></ul></ul><ul><ul><li>Le <span rel=&quot; dc:creator &quot; href=&quot; http://www.w3.org &quot; >créateur du W3C</span> </li></ul></ul><ul><ul><ul><ul><li>a pour nom <span property=&quot; foaf:name &quot; > Timothy Berners-Lee </span> </li></ul></ul></ul></ul><ul><ul><ul><ul><li>et pour surnom <span property=&quot; foaf:nick &quot;>Timbl</span>. </li></ul></ul></ul></ul><ul><ul><ul><li></div> </li></ul></ul></ul><ul><ul><li></body> </li></ul></ul><ul><li></html> </li></ul>
  28. 28. RDFS et OWL Créer et partager un vocabulaire commun à l’échelle du Web
  29. 29. Dans notre monde, chaque chose a une nature, un type. <ul><li>Exemples : </li></ul><ul><ul><li>Tim Berners-Lee est une personne ; </li></ul></ul><ul><ul><li>Une personne est un être vivant ; </li></ul></ul><ul><ul><li>http://www.atosorigin.fr est une page Web </li></ul></ul><ul><ul><li>Une page Web est un document </li></ul></ul><ul><ul><li>… </li></ul></ul>Définir des classes Dans le monde RDF, la nature d’une chose/ressource est une « classe » En RDF, une ressource (Sujet ou objet) appartient toujours à une classe. Chose Être vivant Personne Chien Document Page Web Livre
  30. 30. Définir des propriétés Dans notre monde, chaque type de choses possèdent des caractéristiques. <ul><li>Exemples : </li></ul><ul><ul><li>Une personne a un nom ; </li></ul></ul><ul><ul><li>une personne connaît d’autres personnes ; </li></ul></ul><ul><ul><li>une page Web a un titre ; </li></ul></ul><ul><ul><li>Une page Web a un créateur ; </li></ul></ul><ul><ul><li>… </li></ul></ul>Dans le monde RDF, ces caractéristiques sont des propriétés. En RDF, un prédicat est une propriété définie dans un vocabulaire. Personne Page Web « Une chaîne de caractères » Personne « une chaîne de caractères » connaît créateur nom titre
  31. 31. Définir une logique pour déduire Dans notre monde, chaque caractéristique et chaque type possèdent une logique interne. <ul><li>Exemple : </li></ul><ul><ul><li>Si une homme A est le frère d’un homme B, alors l’homme B est le frère de la personne A ; </li></ul></ul><ul><ul><li>… </li></ul></ul>Dans le monde RDF, cette logique est exprimée clairement dans le vocabulaire. En RDF, la logique permet de faire des inférences, c’est-à-dire de créer des nouvelles informations. Homme A Homme B Est frère de Class X Class X Symetric property
  32. 32. RDFS et OWL des classes des propriétés une logique Créer des ontologies
  33. 33. Quelques vocabulaires/ontologies FOAF Dublin Core Basic Geo (WGS84 lat/long)
  34. 34. SP AR QL Interroger, accéder, transporter les données en RDF
  35. 35. Un langage de requêtes Un format pour les résultats Un protocole d’accès SP AR QL S PARQL P rotocol a nd R DF Q uery L anguage
  36. 36. SP AR QL : un langage de requêtes Tim Berners-Lee connaît des personnes . Ces personnes s’appellent ??? . Je veux connaître l’URI et les noms des personnes que connaît Tim Berners-Lee à partir de son fichier FOAF
  37. 37. Opérateurs : FILTER, OPTIONAL, UNION, ORDER BY, LIMIT, OFFSET <http://www.w3.org/People/Berners-Lee/card#i> foaf:knows ?personnes . ?personnes foaf:name ?nom . SELECT ?personnes ?nom FROM <http://www.w3.org/People/Berners-Lee/card> WHERE { } PREFIX foaf: <http://xmlns.com/foaf/0.1/> SP AR QL : un langage de requêtes Types de requêtes : ASK, CONSTRUCT, DESCRIBE LOAD, INSERT, DELETE (en cours de normalisation)
  38. 38. SP AR QL : un format de résultats <ul><li><?xml version=&quot;1.0&quot; ?> </li></ul><ul><li><sparql </li></ul><ul><ul><li>xmlns=&quot;http://www.w3.org/2005/sparql-results#&quot; </li></ul></ul><ul><ul><li>xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot; </li></ul></ul><ul><ul><li>xsi:schemaLocation=&quot;http://www.w3.org/2001/sw/DataAccess/rf1/result2.xsd&quot;> </li></ul></ul><ul><li><head> </li></ul><ul><li><variable name=&quot; personnes &quot;/> </li></ul><ul><li><variable name=&quot; nom &quot;/> </li></ul><ul><li></head> </li></ul><ul><li><results distinct=&quot;false&quot; ordered=&quot;true&quot;> </li></ul><ul><li><result> </li></ul><ul><li><binding name=&quot; personnes &quot;> <uri>http://dbpedia.org/resource/John_Seely_Brown</uri> </binding> </li></ul><ul><li><binding name=&quot; nom &quot;> <literal>John Seely Brown</literal> </binding> </li></ul><ul><li></result> </li></ul><ul><li><result> </li></ul><ul><li><binding name=&quot; personnes &quot;> <uri>http://dbpedia.org/resource/John_Gage</uri> </binding> </li></ul><ul><li><binding name=&quot; nom &quot;> <literal>John Gage</literal> </binding> </li></ul><ul><li></result> </li></ul><ul><li><result> </li></ul><ul><li><binding name=&quot; personnes &quot;> <uri>http://dbpedia.org/resource/Tim_Bray</uri> </binding> </li></ul><ul><li><binding name=&quot; nom &quot;> <literal>Tim Bray</literal> </binding> </li></ul><ul><li></result> </li></ul><ul><li></sparql> </li></ul>Formats possibles : JSON, HTML, Javascript (non normalisés)
  39. 39. SP AR QL : un format de résultats Un Web service normalisé selon l’architecture REST et SOAP SPARQL : une API universelle d’accès aux données ? Data Data Data Application API spécifique API spécifique API spécifique Appli Data RDF + SPARQL endpoint Data RDF + SPARQL endpoint Data RDF + SPARQL endpoint Sans RDF et SPARQL Avec RDF et SPARQL SPARQL
  40. 40. Résumons-nous (1 ère partie) : le layer cake du W3C
  41. 41. Résumons-nous (2 ème partie) : Mettre en place les technologies du Web sémantique <ul><li>Créer des vocabulaires/ontologies avec le logiciel Protege </li></ul><ul><li>Mettre les données au format RDF </li></ul><ul><ul><li>Créer des données RDF avec un éditeur RDF ( Morla ou Top Braid composer ) ou un éditeur XML </li></ul></ul><ul><ul><li>Transformer des données de XML vers RDF/XML avec XSL </li></ul></ul><ul><ul><li>Transformer une base de données relationnelles en RDF avec D2R server </li></ul></ul><ul><li>Stocker les données dans un triple store RDF </li></ul><ul><ul><li>Triple store natif : Mulgara , AllegroGraph , BigOWLIM … </li></ul></ul><ul><ul><li>BDR paramétrée pour indexer des données en RDF : Virtuoso , ARC , Oracle 11g , Sesame , 3store </li></ul></ul><ul><ul><li>Column store pour indexer des données en RDF : Cstore , HRDF </li></ul></ul><ul><li>Exploiter les données en RDF </li></ul><ul><ul><li>En Java : Jena </li></ul></ul><ul><ul><li>En PHP : RAP </li></ul></ul><ul><ul><li>En C : Redland </li></ul></ul><ul><ul><li>En python : RDFlib </li></ul></ul>
  42. 42. Quelques idées et quelques réalisations de la planète Web sémantique
  43. 43. Web sémantique et réseaux sociaux Twitter Flick’r Facebook Linked in Blog Del.icio.us
  44. 44. Web sémantique et réseaux sociaux Twitter Flick’r Facebook Linked in Blog Del.icio.us
  45. 45. Exemples de la portabilité des données
  46. 46. Web sémantique et data management Entreprise A Application Usages A Usages B Base de données Entreprise B Application Usages A Base de données Situation actuelle Base de données Usages C Application API API API Usages A Application Usages B Usages C Données en RDF + sparql endpoint Application Données en RDF + sparql endpoint Données en RDF + sparql endpoint Application Application SPARQL SPARQL Liens Alignement Usages A Avec les technologies du Web sémantique
  47. 47. Exemple : Linking Open data But : publier et relier des entrepôts de données en RDF sur le Web
  48. 48. Exemple : Dbpedia, http://www.dbpedia.org Interroger Wikipedia comme une base de données grâce à RDF Je voudrais tous les personnages de Star Trek avec leurs noms, éventuellement une image, une description en français et leur planète d’origine. SELECT ?nom ?nomplanet ?abstract ?image WHERE { ?character skos:subject <http://dbpedia.org/resource/Category:Star_Trek_film_characters>. ?character rdfs:label ?nom. OPTIONAL { ?character <http://xmlns.com/foaf/0.1/depiction> ?image. } OPTIONAL { ?character <http://dbpedia.org/property/abstract> ?abstract. FILTER (lang(?abstract)=&quot;fr&quot;) } OPTIONAL { ?character <http://dbpedia.org/property/planet> ?planet. ?planet rdfs:label ?nomplanet. FILTER (lang(?nomplanet)=&quot;en&quot;) } FILTER (lang(?nom)=&quot;en&quot;) }
  49. 49. Un bout de la réponse formaté en HTML
  50. 50. Exemple d’utilisation de Dbpedia Mashup Dbpedia – Google Maps http://www.lespetitescases.net/dbpedia/
  51. 51. Le voyage est terminé pour aujourd’hui… Mais le prochain vol est prévu demain ! Qui est prêt à embarquer à bord ? Si vous voulez en savoir plus, RV sur Les petites cases Gautier Poupeau <http://www.lespetitescases.net/foaf_got.rdf#GP> gautier.poupeau@lespetitescases.net

×