Brève introduction au Web Sémantique

Transcription

Brève introduction au Web Sémantique
Références
• Livres :
Brève introduction au
Web Sémantique
! 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.
Bernard ESPINASSE
! G. Antoniou, F. van Harmelen, « A Semantic Web Primer », The MIT
Press, Cambridge, Massachusetts, London, England, 1999.
Professeur à l'Université d'Aix-Marseille
2010
! …
• 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 -
• 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 (par ex. dans un SGBD)
! Mais le schéma de la base des trains est sans doute très différent de
celui de la base des avions.
! 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, …
• moteurs de recherche (sur le texte), pour des raisons de performance (et
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
• Pour cela, il faudrait représenter (indexer) les informations dans un
langage standard, en utilisant un vocabulaire standard (contrôlé) (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 : solution …
Le service est « caché » dans le code HTML :
• SGBD + Présentation (PHP, . . . ) : le SGBD n!est pas visible.
• Comment connaître ce que propose un service ?
• HTML + CSS : mise en page « à part », mais toujours pas de description
(utilisable par une machine) de ce que « contient le document »
Séparer la présentation du contenu :
• Comment utiliser conjointement plusieurs services ?
• XHTML : Évite le fouillis d!HTML, mais il s!agit toujours de documents
Ex:
• XML + XSLT ! (X)HTML : Mieux, mais :
Achat de billets de trains, validateur html, Web mail, …
! XML n!est pas toujours visible
• Mêmes 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 -
10
11
! 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 :
• Utilisation d!un langage commun (RDF) pour exprimer des informations sur
des ressources
• Expression d!assertions simples sous la forme de triplets (sujet, prédicat,
objet) :
! Le sujet est une ressource (URI),
! l!objet est une ressource ou un littéral,
• ne remet pas en cause le Web classique (HTML, HTTP, ...)
• Les connaissances ne sont pas représentées dans une langue naturelle
mais formalisées à l!aide de langages pouvant être interprétés par des
machines :
! 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
Ex :
! Génération de nouvelles connaissances (inférences)
« 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 -
• facilitant l!automatisation du traitement des connaissances
disponibles.
!…
• 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 : propriétés de XML
Niveau Syntaxique : limites de XML
<CD>
<TITLE>Empire Burlesque</TITLE>
<ARTIST>Bob Dylan</ARTIST>
<COUNTRY>USA</COUNTRY>
<COMPANY>Columbia</COMPANY>
<PRICE>10.90</PRICE>
<YEAR>1985</YEAR>
</CD>
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 :
• 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
• 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.
Introduction au Web Sémantique - Bernard ESPINASSE -
• XML ne contient aucune sémantique formelle pour l’ordinateur
25
Niveau sémantique : langage RDF
" D’où un autre langage, RDF pour traiter la
sémantique
Introduction au Web Sémantique - Bernard ESPINASSE -
26
Niveau sémantique : langage RDF
• RDF (Resource Description Framework) = langage permettant de
représenter des informations sur des ressources
• issus de communautés diverses :
! standardisation du Web,
• Une déclaration RDF = triplet : « Objet, Attribut, Valeur »
! bibliothèques, documents structurés,
dont chaque élément peut être un littéral ou une ressource Web
! représentation de connaissances (IA),
• Le modèle de données RDF est formellement défini par:
! Un ensemble appelé Ressources.
! programmation orientée objets et langages de modélisation, …
! Un ensemble appelé Littéraux
! Un sous-ensemble de Ressources appelées Propriétés.
! 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),
• 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 :
! ils possèdent pour cela une sémantique formelle
• « sujet » = ressource (membre de Ressources)
! le sens repose sur une théorie des modèles associant une valeur de
vérité à chaque formule bien formée : logique formelle
• « 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é
Introduction au Web Sémantique - Bernard ESPINASSE -
27
Introduction au Web Sémantique - Bernard ESPINASSE -
28
Niveau sémantique : exemple RDF (1)
Niveau sémantique: RDFS (RDF Schema)
• RDF est basé sur XML permettant de représenter des déclarations RDF
• RDF permet déclarer des propriétés sur des ressources
• 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 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 ?
! Quelles sont les valeurs autorisées pour une propriété ?
! Quels sont les liens entre les types de ressources (généralisation /
spécialisation) ? …
• Graphe RDF associé :
• Pour cela il faut définir le vocabulaire, exemple :
Un Livre est une sorte de Publication, et un Magazine aussi. Toute
Publication a un titre, un Livre a un ou plusieurs auteur, . . .
• RDF Schema (RDF S) = extension de RDF :
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
Introduction au Web Sémantique - Bernard ESPINASSE -
29
! 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 -
30
Niveau sémantique: Exemple RDFS
Niveau sémantique : les Ontologies
Une classe :
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.
! 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 .
• 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 :
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 -
31
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 -
32
Ontology Web Langage : OWL
Ontology Web Langage : OWL
! 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
! définition de classes simple :
Exemples : http://www.schemaweb.info/schema/BrowseSchema.aspx
http://www.daml.org/ontologies/category.html
Introduction au Web Sémantique - Bernard ESPINASSE -
33
<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 -
34