1 / 86

Web Sémantique RDF

Web Sémantique RDF. Olivier.Corby@sophia.inria.fr. Semantic Web. World Wide Web Consortium : www.w3.org Extension du Web actuel où l’information serait munie d’une signification (meaning) bien définie Pour faciliter le travail en coopération homme-machine

janette
Download Presentation

Web Sémantique RDF

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Web Sémantique RDF Olivier.Corby@sophia.inria.fr

  2. Semantic Web • World Wide Web Consortium : www.w3.org • Extension du Web actuel où l’information serait munie d’une signification (meaning)bien définie • Pour faciliter le travail en coopération homme-machine • Un Web de données et de documents

  3. Semantic Web • Évolution du Web pour permettre le traitementautomatique des informations (par programme) • Documents et données structurés (XML) • Associer sémantique (sens) aux documents • http://www.scientificamerican.com/2001/0501issue/0501berners-lee.html

  4. Semantic Web : Vision W3C

  5. Applications Préparer automatiquement un voyage, par l’Internet, en combinant des informations (hôtel, avion, voiture) Etre prévenu d’informations sur un thème donné : conférence, publication, etc.

  6. Applications Annotation de documents multimedia : trouver une séquence avec un facteur cycliste Site Web d’entreprise structuré par un référentiel Documentation technique

  7. XML Extensible Markup Language Langage de description et d’échange de : • documents structurés • données structurées Conçu par le World Wide Web Consortium (W3C) www.w3.org

  8. XML Définit la structure (syntaxe) comme un arbre de syntaxe abstraite Mais rien sur la signification, le sens : la sémantique La sémantique permet de définir la signification des balises, donc des informations. Contraint les traitements

  9. XML <book> <author>John Maynard Keynes</author> <title>General Theory of Employment …</title> .. </book>

  10. XML <aaa> <bbb>John Maynard Keynes</bbb> <ccc>General Theory of Employment …</ccc> .. </aaa> Définit une structure mais pas le sens

  11. Sens <book>  book a kind of Document <author>  Documents have an author, which is a Person, <title>  a title which is a Literal

  12. Sens Décrire le sens avec un certain consensus En utilisant des vocabulaires standardisés : ontologie

  13. RDF • Resource Description Framework • Annotations sémantiques décrivant le contenu des documents • Permet de faire des recherches d'information en utilisant ces annotations

  14. RDF Suite Le moteur de recherche : • exploite les annotations • effectue des inférences élémentaires • retrouve des documents pertinents

  15. RDF et Schema • RDF sert à annoter des documents pour décrire le contenu • Ces descriptions reposent sur un vocabulaire partagé : une ontologie • RDF Vocabulary Description Language 1.0: RDF SchemaW3C Working Draft 10 Octobre http://www.w3.org/RDF

  16. RDF Schema • Classes de ressource et Propriétés • Spécialisation • Syntaxe XML • Propriétés sont entités à part entière, comme les classes et les instances.

  17. Pourquoi les propriétés ? • Car le Web est un réseau où tout le monde peut participer • Une classe n'est pas définie entièrement localement • Elle peut être réutilisée et complétée par ailleurs : on peut donc définir de nouvelles propriétés sur une classe existante • Web based design vs Top down

  18. Modèle RDF RDF repose sur un modèle de triplet : resource propriété valeur appelés respectivement : resource property value Les valeurs sont soit des ressources, soit des littéraux (valeurs atomiques)

  19. Modèle RDF (2) • Une ressource (e.g. document ou fragment de document) est désignée par un URI • Peut être accessible par URI Exemple : http://www.essi.fr/cours/log11 ns:titre ‘Modélisation des connaissances’ Noté : ex:log11 ns:titre ‘Modélisation …’

  20. RDF : syntaxe XML <rdf:Description rdf:about=‘http://www.essi.fr/cours/log11’><titre>Modélisation des connaissances </titre> </rdf:Description>

  21. Ajouter du sens • La ressource est un cours, • un cours a des enseignants, • l’enseignant est un chercheur de l'INRIA, • etc.

  22. Exemple ex:log11 rdf:type ns:Cours ex:log11 ns:titre “Modélisation des connaissances” ns:Cours rdf:type rdfs:Class

  23. RDF/XML <rdf:Description rdf:about=‘http://www.essi.fr/cours/log11’> • <rdf:type rdf:resource='#Cours'/> • <titre>Modélisation des connaissances</titre> </rdf:Description> <rdfs:Class ID='Cours'/>

  24. Classes ns:Cours rdf:type rdfs:Class ns:CoursDEA rdf:type rdfs:Class ns:CoursDEA rdfs:subClassOf ns:Cours ns:CoursESSI rdfs:subClassOf ns:Cours

  25. Classes <rdfs:Class rdf:ID='Cours'/> <rdfs:Class rdf:ID='CoursDEA'> <rdfs:subClassOf rdf:resource='#Cours'/> </rdfs:Class> <rdfs:Class rdf:ID='CoursESSI'> <rdfs:subClassOf rdf:resource='#Cours'/> </rdfs:Class>

  26. Classes (2) <rdfs:Class rdf:ID='CoursCommun'> <rdfs:subClassOf rdf:resource='#CoursDEA'/> <rdfs:subClassOf rdf:resource='#CoursESSI'/> </rdfs:Class> <rdf:Property rdf:ID='titre'> <rdfs:domain rdf:resource='#Cours'/> <rdfs:range rdf:resource=’&rdfs;Literal’/> </rdf:Property>

  27. Propriétés <rdf:Property rdf:ID=‘enseignant’> <rdfs:domain rdf:resource='#Cours'/> <rdfs:range rdf:resource='#Personne'/> </rdf:Property> <rdf:Property rdf:ID='nom'> <rdfs:domain rdf:resource='#Personne'/> <rdfs:range rdf:resource=’&rdfs;Literal'/> </rdf:Property>

  28. Classes <rdfs:Class rdf:ID='Personne'/> <rdfs:Class rdf:ID='MaitreDeConf'> • <rdfs:subClassOf rdf:resource='#Personne'/> </rdfs:Class> <rdfs:Class rdf:ID='Chercheur'> • <rdfs:subClassOf rdf:resource='#Personne'/> </rdfs:Class>

  29. Annotation <rdf:Description rdf:about='http://www.essi.fr/cours/log11’> <rdf:type rdf:resource='#Cours'/> <titre>Modélisation des connaissances</titre> <num>Log11</num> <enseignant> <Chercheur rdf:about='http://www.inria.fr/Olivier.Corby’> <nom>Olivier Corby</nom> <institut>INRIA</institut> </Chercheur> </enseignant> </rdf:Description>

  30. Requêtes • Trouver les cours dont O. Corby est enseignant ? • Qui enseigne le cours LOG11 ? • Y a-t-il un enseignant-chercheur ? • Y a-t-il une Personne de l'INRIA ?

  31. Requêtes • A la OQL (Object Query Language) select c.num, p.nom from c Cours, p Personne where c.titre like ‘connaissance’ and p.institut = ‘INRIA’

  32. Traits avancés • Modularité • Multi héritage, multi instanciation • Conteneurs

  33. Namespace Pour modulariser les schemas : • À un schema est associé un nom symbolique : un URI • Les balises issues du schema sont préfixées par cet URI, • appelénamespace

  34. Namespace (2) <rdf:Description xmlns:ns=‘http://www.inria.fr/acacia/cours#’> <ns:titre>Modélisation des connaissances </ns:titre>

  35. Exemple <rdf:Description rdf:about=‘http://www.essi.fr/cours/log11’ xmlns:ns=‘http://www.inria.fr/acacia/cours#’ xmlns:rdf=‘http://www.w3.org/1999/02/22-rdf-syntax-ns#’> <rdf:type rdf:resource=‘#Cours'/> <ns:titre>Modélisation des connaissances </ns:titre> <ns:num>Log11</ns:num>

  36. Exemple (suite) <ns:enseignant> <ns:Chercheur rdf:about=‘http://www.inria.fr/Olivier.Corby’> • <ns:nom>Olivier Corby</ns:nom> • <ns:institut>INRIA</ns:institut> </ns:Chercheur> </ns:enseignant> </rdf:Description>

  37. Héritage multiple • Une classe peut spécialiser plusieurs classes <rdfs:Class rdf:ID=‘EnseignantChercheur’> <rdfs:subClassOf rdf:resource=‘#Enseignant’/> <rdfs:subClassOf rdf:resource=‘#Chercheur’/> </rdfs:Class>

  38. Multi instanciation • Une description peut être instance de plusieurs classes <rdf:Description rdf:about=‘http://www.inria.fr/Olivier.Corby’> <rdf:type rdf:resource=‘#Chercheur’/> <ns:institut>INRIA</ns:institut> <rdf:type rdf:resource=‘#Enseignant’/> <ns:etablissement>UNSA</ns:etablissement> </rdf:Description>

  39. Plusieurs Schema • Utiliser plusieurs schemas, grâce aux namespaces : <rdf:Description xmlns:rdf=`&rdf;’ xmlns:ns=`http://www.inria.fr/acacia/cours#’ xmlns:ex=`http://www.essi.fr/namespace#’> <ns:institut>INRIA</ns:institut> <ex:formation>UNSA</ex:formation> </rdf:Description>

  40. Propriété : domaine Le domaine est la conjonction des domaines <rdf:Property rdf:ID=‘vitesse’> <rdfs:domain rdf:resource=‘#Objet’/> <rdfs:domain rdf:resource=‘#Mobile’/> <rdfs:range rdf:resource=‘&rdfs;Literal’/> </rdf:Property>

  41. Domaines ns:vitesse rdf:type rdf:Property ns:vitesse rdfs:domain ns:Objet ns:vitesse rdfs:domain ns:Mobile ns:vitesse rdfs:range rdfs:Literal ex:car ns:vitesse “100”  ex:car rdf:type ns:Objet ex:car rdf:type ns:Mobile

  42. Sous-propriété • Une propriété peut être spécialisée : <rdf:Property rdf:ID='coordinateur'> <rdfs:subPropertyOf rdf:resource='#enseignant'/> </rdf:Property> ex:bob ns:coordinateur ex:cours Þ ex:bob ns:enseignant ex:cours coordinateur est inclus dans enseignant

  43. Sous propriété (2) <ns:Cours rdf:about=‘http://www.essi.fr/cours/log11’> <ns:coordinateur rdf:resource=‘http://www.inria.fr/Olivier.Corby’/> </ns:Cours> Þ <ns:Cours rdf:about=‘http://www.essi.fr/cours/log11’> <ns:enseignant rdf:resource=‘http://www.inria.fr/Olivier.Corby’/> </ns:Cours>

  44. Nom externe de Propriété Une propriété peut avoir plusieurs noms externes : labels Peuvent être multilingue <rdf:Property rdf:ID=‘name’> <rdfs:domain rdf:resource='Person'/> <rdfs:range rdf:resource=’&rdfs;Literal'/> <rdfs:label xml:lang='fr'>nom</rdfs:label> <rdfs:label xml:lang='en'>name</rdfs:label> </rdf:Property>

  45. Datatype Pour typer les valeurs litérales, RDF repose sur les datatypes de XML Schema xmlns:xsd=‘http://www.w3.org/2001/XMLSchema#’ xsd:integer xsd:float xsd:string xsd:date xsd:boolean ...

  46. RDF Datatype <!ENTITY xsd ”http://www.w3.org/2001/XMLSchema#” > <c:Person> <c:age rdf:datatype=‘&xsd;integer’>43</c:age> <c:name rdf:datatype=‘&xsd;string’>Laurent </c:name> </c:Person>

  47. Limitation de RDF Impossible de surcharger la signature d’une propriété pour la spécialiser Class Primate Class Man subClassOf Primate Class Chimpanzee subClassOf Primate <rdf:Property rdf:ID=‘child’> • <rdfs:domain rdf:resource='#Primate'/> • <rdfs:range rdf:resource='#Primate'/> </rdf:Property>

  48. Raffinement impossible La propriétéchildétant définie, il est impossible de la raffiner : <rdf:Property rdf:ID=‘child’> • <rdfs:domain rdf:resource='#Man'/> • <rdfs:range rdf:resource='#Man'/> </rdf:Property>

  49. Solution en RDF Spécialiser la propriété : <rdf:Property rdf:ID='manChild'> <rdfs:subPropertyOf rdf:resource='#child'/> <rdfs:domain rdf:resource='#Man'/> <rdfs:range rdf:resource='#Man'/> </rdf:Property> Ou utiliser OWL

  50. Collection • Quand la valeur d’une propriété est une collection de valeurs : <rdf:Description rdf:about=‘http://www.essi.fr/cours/log11’> <ns:staff> • <rdf:Bag> • <rdf:li>Olivier Corby</rdf:li> • <rdf:li>Sabine Moisan</rdf:li> • <rdf:li>Alain Giboin</rdf:li> • </rdf:Bag> </ns:staff> </rdf:Description>

More Related