Introduction au Web Sémantique
Transcription
Introduction au Web Sémantique
Références Introduction au Web Sémantique Bernard ESPINASSE ! T. B. Passin, « Explorer!s guide to the Semantic Web », Manning Ed., 2008. ! E. Luczak, « A Guide to the Semantic Web », Leading Edge Forum Technology Grant, 2004. Professeur à l'Université d'Aix-Marseille 2010 ! G. Antoniou, F. van Harmelen, « A Semantic Web Primer », The MIT Press, Cambridge, Massachusetts, London, England, 1999. • Du Web au Web Sémantique : • Le Web Sémantique : • Architecture du Web Sémantique • Langages du Web Sémantique • Niveaux Nommage et adressage : URI, URL • Niveau syntaxique : XML • Niveaux Sémantique : Ontologies, OWL Introduction au Web Sémantique - Bernard ESPINASSE - • Livres : ! … • Cours : ! Cours de M. Gagnon, Ecole Polytechnique de Montréal, 2007. ! Cours de D. Genest, Université d!Angers, 2008. ! Cours de S. Garlatti, ENST, Paris, 2006. ! … 1 Plan Introduction au Web Sémantique - Bernard ESPINASSE - 2 Bref historique du Web • Du Web au Web Sémantique : • 1989 : Tim Berners-Lee (CERN, Genève) commence le développement d!un système hypertexte. ! Bref historique ! Forces et faiblesses du Web • 1990 : Premières définitions pour HTTP, HTML, URL. • Le Web Sémantique : • 1992 : Premier annuaire de sites Web. 26 sites. ! Architecture du Web Sémantique • 1994 : Netscape Navigator 1.0 ; Fondation du W3C. ! Langages du Web Sémantique • 1995 : Microsoft ne croit pas au Web, puis change d!avis. • Niveaux Nommage et adressage : URI, URL • 1998 : Plus de 2 millions de sites ; Création de Google. • Niveau syntaxique : XML • 2000 : XHTML 1.0. • Niveaux Sémantique : • 2004 : Firefox 1.0. ! RDF et RDFS • 2005 : Plus de 60 millions de sites !!!! ! Ontologies ! Ontology Web Langage, OWL Introduction au Web Sémantique - Bernard ESPINASSE - 3 Introduction au Web Sémantique - Bernard ESPINASSE - 4 Succès d!Internet, le Web actuel Succès d!Internet, le Web actuel • de plus en plus de sites => nécessité d!avoir des outils pour rechercher des informations = moteurs de recherches, méta-moteurs, … • L’importance d’Internet est dû : • Informations disponibles non-structurée, hétérogène et distribuée : texte, images, données issues de bases, documents techniques, etc • Certains types de données se prêtent mal à la recherche par les moteurs de recherche traditionnels : Comparaison de documents, recherches « type SGBD », raisonnement sur les connaissances disponibles, … • Succès du WWW fondé sur sa simplicité, MAIS ! ! Développé pour des lecteurs humains ! Les données actuelles sont principalement organisées et structurées pour être simple à transmettre et être présentées à des humains • Organisation des informations côté serveur : ! HTML et PDF sont principalement des langages de présentation de données ! Web statique (HTML pur) ! Web dynamique (CGI, PHP, SGBD, JSP, Java, Services web) ; le Web ne contient pas uniquement des pages mais aussi des « services » Introduction au Web Sémantique - Bernard ESPINASSE - ! Aux services qu!il nous fournit : IRC, ICQ, Chat, email, News groups, FTP, WWW, E-commerce, B2B, B2C, … 5 <H2> Triple X </H2> : ne dit rien sur le titre sauf pour des humains ! Internet est de plus en plus utilisé par des machines (search engines, robots, …) Introduction au Web Sémantique - Bernard ESPINASSE - 6 Problèmes avec Internet, le Web actuel (1) Problèmes avec Internet, le Web actuel (2) (d!après S. Garlatti) (d!après S. Garlatti) Accéder, traiter l’information, extraire et interpréter l’information : • Le Web actuel entrave la recherche, l’extraction, la maintenance et la génération d’information • La majorité des données sur le Web est sous une forme qui ne permet pas de l’utiliser à grande échelle. • Actuellement, pas d’accès réel au contenu des documents : • Pas de système global de publication de données permettant aux machines et aux humains de les traiter : ! Contenu et Information pas accessible ni interprétable par des machines Exemple : ! Pas possible de composer dynamiquement des documents cohérents et adaptés aux utilisateurs ! Évènements sportifs, météo, guides TV, guides cinéma, ... sont présentés par de nombreux sites Web, mais presque tous au format HTML (structure logique + présentation) ! Alors, comment trouver et extraire l’information pertinente pour différents services ? Introduction au Web Sémantique - Bernard ESPINASSE - 7 Introduction au Web Sémantique - Bernard ESPINASSE - 8 Problèmes avec le Web actuel : information cachées Problèmes avec le Web actuel : informations cachées Les informations sont « cachées » dans le code HTML (2) : Les informations sont « cachées » dans le code HTML (1) : • Ex: Horaires de trains & Horaires d!avion = 2 documents HTML avec tables : ! Comment croiser les 2 documents pour un trajet train puis avion ? ! Les documents HTML ne peuvent être utilisés (sauf ad-hoc) car les documents HTML sont une présentation des données ! Pourtant, à la base, les données sont souvent stockées de façon structurée dans des bases de données (BD) ! Mais le schéma de la BD des trains est sans doute très différent de celui de la BD des avions … ! Solution : ! Il faudrait une représentation « commune », utilisant un langage standard pour pouvoir croiser (automatiquement) les données. Introduction au Web Sémantique - Bernard ESPINASSE - 9 • code HTML contient l!expression dans une langue naturelle (LN) des informations, ou dans des images, des fichiers sonores, des vidéos, … • les moteurs de recherche, pour des raisons de performance et de taille du Web, ne font aucun traitement sophistiqué (TALN) sur les textes : ! ils font une recherche de mots, ce qui est très différent d!une recherche d!informations ! Solution : Pour une véritable recherche d!information, il faudrait représenter (indexer) les informations dans un langage standard, en utilisant un vocabulaire standard (ou mieux une ontologie) permettant : ! des comparaisons de documents, ! des raisonnements pour résoudre une requête, ! la prise en compte de documents multimédias, ! des réponses formées de plusieurs documents ou de parties de documents. Introduction au Web Sémantique - Bernard ESPINASSE - Problèmes avec le Web actuel : services cachés Problèmes avec le Web actuel : mélange présentation & contenu Le service est « caché » dans le code HTML : ! Solutions : Séparer la présentation du contenu : • Comment connaître ce que propose un service ? • SGBD + Présentation (PHP, . . . ) : le SGBD n!est pas visible. • Comment utiliser conjointement plusieurs services ? • HTML + CSS : mise en page « à part », mais toujours pas de description (utilisable par une machine) de ce que « contient le document » Ex: 10 • XHTML : Évite le fouillis d!HTML, mais il s!agit toujours de documents Achat de billets de trains, validateur html, Web mail, … • XML + XSLT ! (X)HTML : Mieux, mais : ! Solutions : Meta-données : « données sur les données », association de données, exploitables par ordinateur, à tout ce qui peut être accessible sur le Web (ou pas). Introduction au Web Sémantique - Bernard ESPINASSE - 11 ! XML n!est pas toujours visible ! XML n!est pas un langage (mais un métalangage) : comment comparer 2 documents XML écrits avec des DTD différentes ? Introduction au Web Sémantique - Bernard ESPINASSE - 12 Solutions apportées par le Web Sémantique Le Web Sémantique • Chaque ressource (document, personne, objet, etc.) est identifiée par un identificateur (URI) • Le Web Sémantique est une extension du Web classique : • facilitant l!automatisation du traitement des connaissances disponibles • Utilisation d!un langage commun (RDF) pour exprimer des informations sur des ressources • ne remet pas en cause le Web classique (HTML, HTTP, ...) • Expression d!assertions simples sous la forme de triplets (sujet, prédicat, objet) : • Les connaissances ne sont pas représentées dans une langue naturelle (LN) mais formalisées à l!aide de langages pouvant être interprétés par des machines : ! Le sujet est une ressource (URI), ! l!objet est une ressource ou un littéral, ! Agrégation de connaissances venant de plusieurs sources, comparaisons ! le prédicat est une relation entre les deux. ! Publication de données sémantiques sous différentes formes ! Génération de nouvelles connaissances (inférences) Ex : « La vie, l!univers et le reste » a pour « auteur » « Douglas Adams » : il ne s!agit pas de 3 chaînes de caractères, mais de l!identification (désambiguisation) du titre, de la relation, de l!auteur. Introduction au Web Sémantique - Bernard ESPINASSE - !… • Pas uniquement utile pour le Web-internet. • L!initiative Web sémantique est soutenue par le W3C. 13 Le Web Sémantique Introduction au Web Sémantique - Bernard ESPINASSE - 14 Le Web sémantique : une histoire de générations … Le Web Sémantique = Web de demain : « L'information et les services sur le Web sont aujourd'hui peu exploitables par des machines … et de moins en moins exploitables sans l'aide des machines » « Le WS sera un vaste espace d'échanges de ressources entre machines permettant l'exploitation de grands volumes d'informations et de services variés, aidant les utilisateurs en les libérant d'une (bonne) partie de leur travail de recherche, et de combinaison de ces ressources » « The Semantic Web is an extension of the current web in which information is given well-defined meaning, better enabling computers and people to work in cooperation » « Le Web sémantique est une extension du Web actuel dans lequel l'information est munie d'une signification bien définie permettant aux ordinateurs et aux personnes de mieux travailler en coopération » (T. Berners-Lee, J. Hendler et O.Lassila, Scientific American 2001) Les données doivent être encodées de tel sorte que les contenus (sens et sémantique) du Web soient plus « compréhensibles » pour les machines (des algorithmes) : • 1ère Génération WWW (Début 1990) : ! Séparation de la présentation de la localisation ! Fondée sur HTML, PDF, ... • 2ème Génération WWW (Fin 1990) : ! Séparation de la structure de la présentation ! Fondée sur XML, XSL, .. • 3ème Génération WWW : Web Sémantique (WS) ! Séparation de la sémantique et la structure ! Fondée sur RDF, RDFS, Ontologies, Logique, ... Introduction au Web Sémantique - Bernard ESPINASSE - 15 Introduction au Web Sémantique - Bernard ESPINASSE - 16 Première vision du Web Sémantique [Tim Berners- Architecture du Web Sémantique Lee] Le Web Sémantique (WS) nécessite : • Accès automatique à l’information basé sur une sémantique explicite des données : • Une architecture Internet ! interprétable par l’ordinateur ! associée à des théories sur des domaines (ontologies), partagée par tous pour échanger des ressources sur • Des standards pour : ! qui permettra l’accès à de nouveaux services sur Internet ! Les ontologies et mécanismes d’inférence associés • Automatisation ou semi-automatisation de : ! Recherche d’informations pertinentes : Rappel et Précision ! La sémantique explicite des ressources ou méta-données sémantiques liées à des ontologies ! Recherche d’information précise : ! Le format des ressources ou documents • Réutilisation, partage, échange et composition possible des informations retrouvées ! L’adressage des ressources ou documents • capacité à concevoir certaines « opérations » automatiquement 17 Introduction au Web Sémantique - Bernard ESPINASSE - Web Actuel versus Web Sémantique Web actuel Architecture du Web Sémantique (W3C) Confiance Web Sémantique (WS) Preuve ! Ensemble de documents ! Ensemble de connaissances ! Basé essentiellement sur HTML ! Basé essentiellement sur XML et RDF(S) ! Recherche par mots-clés ! Utilisable par l!être humain Introduction au Web Sémantique - Bernard ESPINASSE - 18 Introduction au Web Sémantique - Bernard ESPINASSE - Niveaux sémantiques Logique ! Recherche par concepts (ontologie) Ontologies RDF Schemas RDF XML + names spaces ! Utilisable par la machine URI & URL 19 Introduction au Web Sémantique - Bernard ESPINASSE - Niveau syntaxique Niveau nommage et adressage 20 Les langages du Web Sémantique (W3C) Les langages du W3C Complexité • OWL : langage de représentation d'ontologies complexes Interprétation par les machines pour le producteur de ressources • RDFS : langage de classes, simple, pour la représentation de structures et d'ontologies simples avec description hiérarchique des concepts et des propriétés Simplicité • RDF : réseau sémantique de base, méta-données, ... • XML : couche de transport syntaxique Interprétation par les humains Quel niveau de complexité est nécessaire ? ! complexité algorithmique des mécanismes d'inférences ! complexité technique pour les constructeurs d'outils ! complexité conceptuelle pour l'utilisateur moyen Introduction au Web Sémantique - Bernard ESPINASSE - 21 Introduction au Web Sémantique - Bernard ESPINASSE - Niveau Nommage et Adressage: URI et URL Niveau Syntaxique: le langage XML • une URI (Uniform Resource Identifier) = chaîne de caractère identifiant de façon unique une ressource ou un concept sur le Web : XML = eXtensible Markup Language : 22 • langage de balises (sous-ensemble de SGML simple à implanter, mais extensible) : chacun défini ses propres balises ! Chacun peut en créer un URI ! Ressource avec une URI ! être sur le Web • permet la séparation de la présentation et du contenu Ex : RFC 3986 : http://www.gbiv.com/protocols/uri/rfc/rfc3986.html • a été conçu pour : ! URN = URI persistante ! décrire des données en se concentrant sur leur structure ! assurer l’interopérabilité • les URL (Uniform Resource Locator) = URI permettant en plus de localiser (d!accéder) à la ressource : ftp, mailto, gopher • XML utilise un Document Type Definition (DTD) or an XML Schéma pour un « modèle » des données Ex : http://www.lsis.org • XML et HTML complémentaires : ! URL: ftp, gopher, http, internet mail, etc. (normalisée) : 1 Protocole, 1 machine, 1 chemin ! XML ne remplace pas HTML (HTML pour l!affichage des données, leur présentation (taille, couleur, ...)) – ! XSL / XSLT transforme XML en HTML Introduction au Web Sémantique - Bernard ESPINASSE - 23 Introduction au Web Sémantique - Bernard ESPINASSE - 24 Niveau Syntaxique : exemple XML Niveau Syntaxique : propriétés de XML <?xml version="1.0" encoding="ISO-8859-1"?> <!-- Edited with XML Spy v4.2 --> <CATALOG> <CD> <TITLE>Empire Burlesque</TITLE> <ARTIST>Bob Dylan</ARTIST> <COUNTRY>USA</COUNTRY> <COMPANY>Columbia</COMPANY> <PRICE>10.90</PRICE> <YEAR>1985</YEAR> </CD> <CD> <TITLE>Hide your heart</TITLE> <ARTIST>Bonnie Tyler</ARTIST> <COUNTRY>UK</COUNTRY> <COMPANY>CBS Records</COMPANY> <PRICE>9.90</PRICE> <YEAR>1988</YEAR> </CD> </CATALOG> Introduction au Web Sémantique - Bernard ESPINASSE - Propriétés de XML : • Indépendant des logiciels et matériels • Infrastructure des échanges de données structurées • Interopérabilité : conçu pour décrire des données, les stocker, les transporter, les échanger et les partager : ! XML DTD : DTD définissant les éléments constitutifs d’un documents, sa structure syntaxique (un arbre) d’un document type à l’aide d’une grammaire ! permet ainsi à toute application : • de vérifier la conformité d’un document à la DTD • de le manipuler et le transformer s’il est conforme à cette DTD. • XML peut être utilisé pour créer de nouveaux langages : WAP et WML (Wireless Markup Language), MATHML, etc. 25 Niveau Syntaxique : limites de XML Introduction au Web Sémantique - Bernard ESPINASSE - 26 Niveau sémantique : langage RDF <CD> <TITLE>Empire Burlesque</TITLE> <ARTIST>Bob Dylan</ARTIST> <COUNTRY>USA</COUNTRY> <COMPANY>Columbia</COMPANY> <PRICE>10.90</PRICE> <YEAR>1985</YEAR> </CD> • RDF (Resource Description Framework) = langage permettant de représenter des informations sur des ressources • Une déclaration RDF = triplet : « Objet, Attribut, Valeur » dont chaque élément peut être un littéral ou une ressource Web • Le modèle de données RDF est formellement défini par: ! Un ensemble appelé Ressources. ! Un ensemble appelé Littéraux • XML ne contient aucune sémantique formelle pour l’ordinateur ! Un sous-ensemble de Ressources appelées Propriétés. • Ce sont les humains qui donnent un sens, une sémantique, aux balises et leur contenu pas les machines : Ex : la balise « CD » ne référence rien pour une machine, la référence est uniquement faite dans l’esprit des lecteurs humains ! Un ensemble appelé Déclarations, dont chaque élément est un triplet (prédicat, sujet, objet) dans lequel : • « prédicat » = propriété (membre de Propriétés), • « sujet » = ressource (membre de Ressources) " D’où un autre langage, RDF pour traiter la sémantique Introduction au Web Sémantique - Bernard ESPINASSE - • « objet » = soit une ressource, soit un littéral (membre de littéraux) • Des déclarations RDF peuvent être représentées par un Graphe orienté 27 Introduction au Web Sémantique - Bernard ESPINASSE - 28 Niveau sémantique : langage RDF Niveau sémantique : sémantique RDF/RDFS • issus de communautés diverses : Logique : ! standardisation du Web, ! Théorie axiomatique ! Un langage et des formules bien formées ! Des axiomes, des règles d’inférences ! A, (A ! B) !-- B ! Des théorèmes: formules bien formées déduites des axiomes et règles d’inférences ! bibliothèques, documents structurés, ! représentation de connaissances (IA), ! programmation orientée objets et langages de modélisation, … • Langage assurant l’interopérabilité " au niveau sémantique - entre applications pour l’échange, le partage et la réutilisation d’informations non interprétable pour la machine • Langages Interprétables par une machine : ! le sens repose sur une théorie des modèles associant une valeur de vérité à chaque formule bien formée : logique formelle 29 Niveau sémantique : exemple RDF (1) • Un démonstrateur automatique de théorèmes est un algorithme qui «respecte les axiomes et règles d’inférences » • Les opérations de la machine « respecte la sémantique formelle » Introduction au Web Sémantique - Bernard ESPINASSE - 30 Niveau sémantique : exemple RDF (2) • Une déclaration est formée : ! d!un sujet qui est une URI(ref ) ; ! d!un prédicat qui est une URI(ref ) ; ! d!un objet qui est une URI(ref ) ou un littéral • RDF est basé sur XML permettant de représenter des déclarations RDF • Exemple de déclarations RDF : < ?xml version="1.0" ?> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:exvoc="http://www.exemple.org/voc#"> <rdf:Description rdf:about="http://www.exemple.org/annuaire#tbl"> <exvoc:nom>Tim Berners-Lee</exvoc:nom> <exvoc:email rdf:resource="mailto:[email protected]"/> <exvoc:fonction rdf:resource="http://www.exemple.org/voc#chef"/> </rdf:Description> </rdf:RDF> Introduction au Web Sémantique - Bernard ESPINASSE - ! Interprétation, Formules vraies/fausses ! Formules valides Théorème " Formule valide ! ils possèdent pour cela une sémantique formelle Introduction au Web Sémantique - Bernard ESPINASSE - Théorie des modèles : • Graphe RDF associé : http://www.exemple.org/annuaire#tbl (URI de la personne, sujet) a pour http://www.exemple.org/voc#nom (URI du prédicat) Tim Berners-Lee (objet) ! Ellipse = URI (sujet ou objet) ! Rectangle = Littéral (objet) ! Arc = Prédicat 31 Introduction au Web Sémantique - Bernard ESPINASSE - 32 Niveau sémantique: RDFS (RDF Schema) Niveau sémantique: RDFS • RDF permet déclarer des propriétés sur des ressources • RDF-Schema = « système de typage » pour RDF similaire à l!approche orientée objet : • RDF ne permet pas n!exprimer des connaissances sur les propriétés ou sur les types de ressources : ! Quelles sont les propriétés autorisées sur un type de ressources ? ! Classes (types) et instances (ressources) ! Quelles sont les valeurs autorisées pour une propriété ? ! Relation hiérarchique (héritage) ! Quels sont les liens entre les types de ressources (généralisation / spécialisation) ? … ! Propriétés (attributs) ! Mais : • Pour cela il faut définir le vocabulaire, exemple : • pas de méthodes : description uniquement. Un Livre est une sorte de Publication, et un Magazine aussi. Toute Publication a un titre, un Livre a un ou plusieurs auteur, . . . • Pas de structure fixée : d!autres propriétés peuvent être ajoutées. • RDF Schema (RDF S) = extension de RDF : ! permet de décrire des classes et des propriétés, ! mais ne fournit pas un vocabulaire (Publication, auteur . . . ), il permet de définir un vocabulaire. Introduction au Web Sémantique - Bernard ESPINASSE - 33 • Une description de vocabulaire est appelée schema et est représentée en RDF sous la forme de triplets • toute application qui gère le RDF peut gérer le RDF-Schema, mais une application doit être étendue pour prendre en compte le « sens » du schema. Introduction au Web Sémantique - Bernard ESPINASSE - 34 Niveau sémantique: Exemple RDFS (1) Niveau sémantique: Exemple RDFS (2) Une classe : Généralisation/spécialisation de classes : Une classe peut être sous-classe (spécialisation) d!une ou plusieurs classes : Exemple : ! est un type (ou une catégorie) regroupant plusieurs instances (ressources) partageant des caractéristiques communes. ! est identifiée par une URI. • Pour préciser qu!une URI est une classe, il faut écrire que cette ressource a pour rdf:type rdfs:Class. Exemple : exvoc:Vehicule rdf:type rdfs:Class . • Toute instance de la sous-classe (VoitureALouer) est instance de toutes les super-classes (Voiture, PeutEtreLoue, Vehicule) : • Pour préciser qu!une URI est une instance d!une classe, il faut écrire que cette ressource a pour rdf:type la classe. Exemple (Syntaxe standard) : Exemple : <rdf:Description rdf:ID="Voiture"> <rdf:type rdf:resource= "http://www.w3.org/2000/01/rdf-schema#Class"/> <rdfs:subClassOf rdf:resource="#Vehicule"/> </rdf:Description> exvoit:v1234AB49 rdf:type exvoc:Vehicule . • Convention : Un nom de classe commence par une majuscule, une instance par une minuscule. Introduction au Web Sémantique - Bernard ESPINASSE - exvoc:Voiture rdf:type rdfs:Class . exvoc:Voiture rdfs:subClassOf exvoc:Vehicule . exvoc:Camion rdf:type rdfs:Class . exvoc:Camion rdfs:subClassOf exvoc:Vehicule . exvoc:VoitureALouer rdf:type rdfs:Class . exvoc:VoitureALouer rdfs:subClassOf exvoc:Voiture, exvoc:PeutEtreLoue . 35 Introduction au Web Sémantique - Bernard ESPINASSE - 36 Niveau sémantique: Exemple RDFS (3) Niveau sémantique : les Ontologies Propriété : Une propriété est identifiée par une URI. Définition [Gruber 1993]: “An ontology is a formal, explicit specification of a shared conceptualization of a domain of interest”. Conceptualisation : représenter les objets, les concepts et autres entités qui sont supposés exister dans un domaine particulier et les relations qu’ils entretiennent entre eux. • Pour préciser qu!une URI est une propriété, il faut écrire que cette ressource a pour rdf:type rdf:Property. • Convention : un nom de propriété commence par une minuscule. Exemple : exvoc:vitesseMax rdf:type rdf:Property . exvoc:aPourMarque rdf:type rdf:Property . • Le co-domaine d!une propriété définit le type des objets autorisés pour la propriété : Exemple : exvoc:vitesseMax rdfs:range xsd:integer . exvoc:aPourMarque rdfs:range exvoc:MarqueVehicule . exvoc:aPourMarque rdfs:range exvoc:MarqueEuropeenne . Les objets de aPourMarque doivent être des instances de MarqueVehicule et de MarqueEuropeenne Introduction au Web Sémantique - Bernard ESPINASSE - 37 Niveau sémantique : un langage pour les ontologies Rôle des ontologies dans le SW : ! Définir de manière déclarative un vocabulaire commun résultat d’un consensus social dans un domaine donné : ! Chaque élément de vocabulaire possède une interprétation unique partagée par tous les membres du domaine ! Décrire la sémantique des termes et leurs relations : ! L’interprétation de chaque terme est unique er résulte d!une sémantique formelle. ! L’ensemble des termes et leurs relations fournissent un cadre interprétatif dépourvu d’ambiguïté pour chaque terme. ! Fournir des mécanismes d’inférence qui respectent la sémantique formelle. Introduction au Web Sémantique - Bernard ESPINASSE - 38 Ontology Web Langage : OWL • Si l'on veut définir un langage pour la description d'ontologies qui soit une extension de RDF : ! en RDF, une classe peut être une instance d'une autre classe: toto:c1 rdf:type rdfs:Class . toto:c2 rdf:type rdfs:Class . toto:c1 rdf:type rdfs:c2 . ! la logique descriptive est souvent trop puissante pour nos besoins, ce qui entraîne une complexité de calcul plus grande que nécessaire. ! En fait on souhaiterait un peu plus d'expressivité que RDF, mais pas autant que la logique descriptive ! Issu de DAML (Darpa-US) + OIL (Europe) ! Conçu pour des applications qui traitent le contenu, pas uniquement la présentation des informations ! Une extension de RDFS, muni d’une sémantique formelle ! Constitué de 3 langages : ! OWL Lite : Classification hiérarchie + contraintes simples ! OWL DL : Pouvoir d’expression supérieur, avec complétude (toutes les conclusions sont calculables) et décidabilite# C’est une logique de description (DL) ! OWL Full : Expressivité maximale, pas de garantie sur les résultats de calculs On a : ! Toute ontologie OWL Lite valide est une ontologie OWL DL valide ! Toute ontologie OWL DL valide est une ontologie OWL Full valide ! Toute conclusion valide de OWL Lite est une conclusion valide de OWL DL ! Toute conclusion valide de OWL DL est une conclusion valide de OWL Full Exemples : http://www.schemaweb.info/schema/BrowseSchema.aspx http://www.daml.org/ontologies/category.html Introduction au Web Sémantique - Bernard ESPINASSE - 39 Introduction au Web Sémantique - Bernard ESPINASSE - 40 Ontology Web Langage : OWL Exemple OWL (1) ! définition de classes simple : (d!après M. Gagnon) syntaxe RDF/XML <owl:Class rdf:ID="Professor"> <rdfs:subClassOf> <owl:Class rdf:about="#StaffMember"/> </rdfs:subClassOf> </owl:Class> ! Remarque : on n'utilise pas les classes de RDF. Introduction au Web Sémantique - Bernard ESPINASSE - 41 Exemple OWL (2) Syntaxe RDF/XML : <?xml version="1.0"?> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" xmlns:owl="http://www.w3.org/2002/07/owl#"> <owl:Ontology rdf:about="www.dgi.polymtl.ca/Staff"/> <owl:Class rdf:ID=“Professor"/> <rdfs:subClassOf> <owl:Class rdf:ID="StaffMember"/> </rdfs:subClassOf> <owl:Class rdf:ID="StaffMember"/> <owl:Class rdf:ID="WorkPlace"/> <owl:ObjectProperty rdf:ID="worksAt"> <rdfs:range rdf:resource="#WorkPlace"/> <rdfs:domain rdf:resource="#StaffMember"/> <rdfs:subPropertyOf> <owl:ObjectProperty rdf:ID="hasActivity"/> </rdfs:subPropertyOf> </owl:ObjectProperty> </rdf:RDF> Introduction au Web Sémantique - Bernard ESPINASSE - 43 Introduction au Web Sémantique - Bernard ESPINASSE - 42