Download
web s mantique rdf n.
Skip this Video
Loading SlideShow in 5 Seconds..
Web Sémantique RDF PowerPoint Presentation
Download Presentation
Web Sémantique RDF

Web Sémantique RDF

98 Views Download Presentation
Download Presentation

Web Sémantique RDF

- - - - - - - - - - - - - - - - - - - - - - - - - - - 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>