Chapitre 3 Description des ressources web en RDF

Slides:



Advertisements
Présentations similaires
La place accordée à l’expression des salariés sur leur travail et leurs conditions de travail dans l’entreprise Résultats sondage exclusif CSA/ANACT.
Advertisements

Mais vous comprenez qu’il s’agit d’une « tromperie ».
Introduction à l’analyse
Le Nom L’adjectif Le verbe Objectif: Orthogram
ORTHOGRAM PM 3 ou 4 Ecrire: « a » ou « à » Référentiel page 6
Licence pro MPCQ : Cours
Additions soustractions
Distance inter-locuteur
1 Plus loin dans lutilisation de Windows Vista ©Yves Roger Cornil - 2 août
DTD Sylvain Salvati
Le langage de requêtes SPARQL SPARQL Protocol And RDF Query Language
Le langage de requêtes SPARQL SPARQL Protocol And RDF Query Language
Les numéros 70 –
Les numéros
Les identités remarquables
Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod 1 Orchestration de Web Services Module 5 Exercice Pratique à l'usage de l'environnement.
Les espaces de nommage XML par Philippe Poulard 1
Domaines nominaux XSLT
Introduction à la logique
Algorithme et structure de données
LES TRIANGLES 1. Définitions 2. Constructions 3. Propriétés.
Données statistiques sur le droit doption au 31/01 8 février 2012.
ESIEE Paris © Denis BUREAU I N Initiation à la programmation avec le langage Java.
Technologies et pédagogie actives en FGA. Plan de latelier 1.Introduction 2.Les technologies en éducation 3.iPads 4.TNI 5.Ordinateurs portables 6.Téléphones.
Sondage sur les préjugés Ensemble et l’association d'études canadiennes 20 mars, 2013 Une recherche novatrice sur le lieu, la fréquence et les différents.
Révision (p. 130, texte) Nombres (1-100).
La législation formation, les aides des pouvoirs publics
1 7 Langues niveaux débutant à avancé. 2 Allemand.
Initiation et perfectionnement à lutilisation de la micro-informatique Créer un blog avec Windows Live Spaces sur un Mac ou sur un PC ©Yves Roger Cornil.
La méthodologie………………………………………………………….. p3 Les résultats
Développement d’applications web
Principes de la technologie orientée objets
QUALIPREF Synthèse de lenquête de satisfaction réalisée du 2 avril au 25 mai 2012 après réception de 306 questionnaires.
Langages du Web Sémantique
Langages de représentation RDF (Resource Description Framework)
Le soccer & les turbans Sondage mené par lAssociation détudes canadiennes 14 juin 2013.
Présentation générale
1 Guide de lenseignant-concepteur Vincent Riff 27 mai 2003.
GRAM 1 CE2 Je sais transformer une phrase affirmative en phrase négative.
Le drapeau canadien comme symbole de fierté nationale : une question de valeurs partagées Jack Jedwab Association détudes canadiennes 28 novembre 2012.
Les nombres.
Fierté envers les symboles et institutions canadiens Jack Jedwab Association détudes canadiennes 26 novembre 2012.
RDF(S)
Introduction à la structuration des documents: les techniques M2: Gestion des connaissances.
Projet poker 1/56. Introduction Présentation de léquipe Cadre du projet Enjeux Choix du sujet 2.
Logiciel gratuit à télécharger à cette adresse :
Les chiffres & les nombres
Calculs et écritures fractionnaires
RACINES CARREES Définition Développer avec la distributivité Produit 1
1.1 LES VECTEURS GÉOMÉTRIQUES
Année universitaire Réalisé par: Dr. Aymen Ayari Cours Réseaux étendus LATRI 3 1.
Web sémantique : Web de demain
Chapitre 3 Syntaxe et sémantique.
MAGIE Réalisé par Mons. RITTER J-P Le 24 octobre 2004.
Initiation à la conception des systèmes d'informations
Aire d’une figure par encadrement
Écart moyen et écart type
Les fondements constitutionnels
MAGIE Réalisé par Mons. RITTER J-P Le 24 octobre 2004.
1/65 微距摄影 美丽的微距摄影 Encore une belle leçon de Macrophotographies venant du Soleil Levant Louis.
Certains droits réservés pour plus d’infos, cliquer sur l’icône.
Nom:____________ Prénom: ___________
Chapter 8A Semantic Web Primer 1 Chapitre 8 - Conclusions et perspectives Grigoris Antoniou Frank van Harmelen.
Annexe Résultats provinciaux comparés à la moyenne canadienne
Les principes de la modélisation de systèmes
La formation des maîtres et la manifestation de la compétence professionnelle à intégrer les technologies de l'information et des communications (TIC)
Bienvenue.
Algorithmique et programmation (1)‏
Technologies web et web sémantique TP3 - XML. XML eXtensible Markup Language (langage extensible de balisage) – Caractéristiques: méta-langage = un langage.
Transcription de la présentation:

Chapitre 3 Description des ressources web en RDF Grigoris Antoniou Frank van Harmelen Chapter 3 A Semantic Web Primer

Sommaire Fondements de RDF Syntaxe de base XML de RDF Principes de RDF Schema Langage RDF Schema Espaces de noms en RDF et RDF Schema Sémantique axiomatique de RDF et RDFS Sémantique directe basée sur les règles d'inférence Requête de documents RDF/RDFS utilisant RQL Chapter 3 A Semantic Web Primer

Inconvénients de XML XML est un métalangage universel servant au balisage Il propose un cadre uniforme pour l'échange de données et métadonnées entre applications Cependant, XML n'offre aucun moyen d'aborder la sémantique des données Par ex., il n'existe aucune signification voulue associée à l'emboîtage des balises chaque application doit interpréter l'emboîtage Chapter 3 A Semantic Web Primer

Emboîtage des balises en XML David Billington est professeur de mathématiques discrètes <nom cours="Discrete Maths"> <lecteur>David Billington</lecteur> </cours> <lecteur nom="David Billington"> <professe>Discrete Maths</professe> </lecteur> Emboîtage opposé, information identique! Chapter 3 A Semantic Web Primer

Fondements de RDF Bloc de base: triplet objet-attribut-valeur On l'appelle déclaration La phrase au sujet de Billington est une déclaration de ce type RDF est rédigé en syntaxe XML Cette syntaxe bénéficie des avantages XML D'autres représentations syntaxiques de RDF sont possibles Chapter 3 A Semantic Web Primer

Fondements de RDF (2) Principes de RDF Ressources Propriétés Déclarations Chapter 3 A Semantic Web Primer

Ressources On peut considérer une ressource comme un objet, c'est-à-dire la "chose" dont on veut parler Par ex. auteurs, livres, éditeurs, lieux, gens, hôtels Toute ressource a un URI, Universal Resource Identifier (identificateur de ressource universel) Un URI peut être un URL (adresse web) ou tout autre genre d'identificateur unique Chapter 3 A Semantic Web Primer

Propriétés Les propriétés sont un genre spécial de ressources Elles décrivent les relations entre ressources par ex. "écrit par", "âge", "titre", etc. Les propriétés sont aussi identifiées par des URI Avantages liés à l'utilisations des URI: Système de notation global, mondial et unique Réduit les problèmes d'homonymie dans la représentation des données distribuées Chapter 3 A Semantic Web Primer

Déclarations Les déclarations affirment les propriétés des ressources Une déclaration est un triplet objet-attribut-valeur elle comprend donc une ressource, une propriété et une valeur Les valeurs peuvent être des ressources ou des littéraux les littéraux sont des valeurs insécables (chaînes) Chapter 3 A Semantic Web Primer

Trois aspects d'une déclaration Triplet Portion de graphe Partie de code XML Un document RDF peut donc se voir comme : Un jeu de triplets Un graphe (réseau sémantique) Un document XML Chapter 3 A Semantic Web Primer

Déclarations sous forme de triplet (“David Billington”, http://www.mydomain.org/site-owner, http://www.cit.gu.edu.au/~db) Le triplet (x,P,y) peut être considéré comme une formule logique P(x,y) le prédicat binaire P relie l'objet x à l'objet y RDF propose uniquement des prédicats binaires (propriétés) Chapter 3 A Semantic Web Primer

Vocabulaires XML Graphe orienté avec noeuds et arcs David Billington www.cit.gu.edu.au/~db Propriétaire du site Graphe orienté avec noeuds et arcs au départ de la ressource (le sujet de la déclaration) vers la valeur (l'objet de la déclaration) Connu dans AI comme un réseau sémantique La valeur d'une déclaration peut être une ressource elle peut-être reliée à une autre ressource Chapter 3 A Semantic Web Primer

Jeu de triplets servant de réseau sémantique David Billington www.cit.gu.edu.au/~db Propriétaire du site 3875 507 Propriétaire du site Andrew Rock www.cit.gu.edu.au/~arock/defeasible/Defeasible.ogi Chapter 3 A Semantic Web Primer

Déclarations en syntaxe XML Les graphes sont un outil puissant pour la compréhension humaine mais La vision du web sémantique nécessite des représentations accessibles et traitables par la machine Il existe une troisième représentation sur base de XML mais XML ne fait pas partie du modèle de données RDF par ex. la sérialisation de XML n'est pas pertinente pour RDF Chapter 3 A Semantic Web Primer

Déclarations en XML (2) <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:mydomain="http://www.mydomain.org/my-rdf-ns"> <rdf:Description rdf:about="http://www.cit.gu.edu.au/~db"> <mydomain:site-owner> David Billington </mydomain:site-owner> </rdf:Description> </rdf:RDF> Chapter 3 A Semantic Web Primer

Déclarations en XML (3) Un document RDF se représente par un élément XML avec la balise rdf:RDF Le contenu de cet élément compte plusieurs descriptions qui utilisent les balises rdf:Description Chaque description fait état d'une ressource, identifiée de trois manières: un attribut about faisant référence à une ressource existante un attribut ID créant une nouvelle ressource sans nom, créant une ressource anonyme Chapter 3 A Semantic Web Primer

Déclarations en XML (4) L'élément rdf:Description fait état de la ressource http://www.cit.gu.edu.au/~db Dans la description la propriété est utilisée comme balise le contenu est la valeur de la propriété Chapter 3 A Semantic Web Primer

Réification En RDF on peut faire des déclarations à propos d'autres déclarations Grigoris croit que David Billington est le créateur de http://www.cit.gu.edu.au/~db Ces déclarations peuvent servir à décrire la validité ou fiabilité dans d'autres déclarations La solution est d'affecter un identificateur unique à chaque déclaration on peut l'utiliser comme référence à la déclaration Chapter 3 A Semantic Web Primer

Une Réification (2) Introduit un objet auxiliaire (par ex. belief1) Le relie à chacune des trois parties de la déclaration d'origine via les propriétés sujet, prédicat et objet Dans l'exemple précédent sujet de belief1 est David Billington prédicat de belief1 est créateur objet de belief1 est http://www.cit.gu.edu.au/~db Chapter 3 A Semantic Web Primer

Types de données Les types de données sont utilisés dans les langages de programmation pour permettre l'interprétation En RDF, on utilise éventuellement des littéraux typés (“David Billington”, http://www.mydomain.org/age, “27”^^http://www.w3.org/2001/XMLSchema#integer) Chapter 3 A Semantic Web Primer

Types de données (2) ^^- indique le type du littéral En pratique, le schéma de type de données le plus courant provient de XML Schema mais l'utilisation de n'importe quel schéma externe est autorisé dans les documents RDF XML Schema prédéfinit de nombreux types de données par ex. booléens, entiers, nombres à virgule flottante, heures, dates, etc. Chapter 3 A Semantic Web Primer

RDF soumis à la critique: prédicats binaires RDF n'utilise que des propriétés binaires cette restriction est due à l'usage fréquent de prédicats à plus de deux arguments mais les prédicats binaires peuvent les simuler Exemple: arbitre(X,Y,Z) X est l'arbitre d'une partie d'échecs entre les joueurs Y et Z Chapter 3 A Semantic Web Primer

RDF soumis à la critique: prédicats binaires (2) On pose: une nouvelle ressource auxiliaire chessGame les prédicats binaires ref, player1 et player2 On peut représenter l'arbitre referee(X,Y,Z) par: X Arbitre Jeu d’échec Joueur1 Y Joueur2 Z Chapter 3 A Semantic Web Primer

RDF soumis à la critique: propriétés Les propriétés sont une sorte particulière de ressources les propriétés peuvent s'utiliser comme objet dans le triplet objet-attribut-valeur (déclaration) elles sont par définition indépendantes des ressources Possibilité offrant de la souplesse Inhabituelles cependant pour les langages de modélisation et de programmation OO Peuvent entraîner une certaine confusion pour les modélisateurs Chapter 3 A Semantic Web Primer

RDF soumis à la critique: réification La réification est un processus très puissant Il semble peu à sa place dans un langage simple comme RDF Faire des déclarations à propos de déclarations introduit un niveau de complexité superflue pour une couche de base du web sémantique Il aurait semblé plus naturel au contraire de l'inclure dans des couches plus puissantes offrant plus de possibilités de représentation Chapter 3 A Semantic Web Primer

RDF soumis à la critique: récapitulation RDF a des limitations inhérentes et n'est pas un langage de modélisation optimal mais Il est déjà un standard dans les faits Sa puissance d'expression est suffisante tout au moins pour y poser plusieurs couches L'utilisation de RDF présente l'avantage que l'information s'applique sans ambiguïté à un modèle Chapter 3 A Semantic Web Primer

Sommaire Fondement de RDF Syntaxe de base XML de RDF Principes de RDF Schema Langage RDF Schema Espaces de noms en RDF et RDF Schema Sémantique axiomatique de RDF et RDFS Sémantique directe basée sur les règles d'inférence Requête de documents RDF/RDFS utilisant RQL Chapter 3 A Semantic Web Primer

Syntaxe de base XML de RDF Un document RDF comprend un élément rdf:RDF le contenu de cet élément correspond à plusieurs descriptions On utilise un mécanisme d'espaces de noms lève les ambiguïtés les espaces de noms sont supposés être des documents RDF définissant des ressources réutilisables grandes collections distribuées de connaissances Chapter 3 A Semantic Web Primer

Exemple des cours universitaires <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:xsd="http://www.w3.org/2001/XLMSchema#" xmlns:uni="http://www.mydomain.org/uni-ns"> <rdf:Description rdf:about="949318"> <uni:nom>David Billington</uni:nom> <uni:titre>Associate Professor</uni:titre> <uni:age rdf:datatype="&xsd:integer">27<uni:age> </rdf:Description> Chapter 3 A Semantic Web Primer

Exemple de cours universitaires (2) <rdf:Description rdf:about="CIT1111"> <uni:nomcours>Discrete Maths</uni:nomcours> <uni:isTaughtBy>David Billington</uni:isTaughtBy> </rdf:Description> <rdf:Description rdf:about="CIT2112"> <uni:nomcours>Programming III</uni:nomcours> <uni:isTaughtBy>Michael Maher</uni:isTaughtBy> </rdf:RDF> Chapter 3 A Semantic Web Primer

rdf:about par rapport à rdf:ID L'élément rdf:Description a un attribut rdf:about indiquant que la ressource a été “définie” ailleurs un attribut rdf:ID indiquant que la ressource est définie Formellement, il n'y a pas une telle "définition" d'un objet à un endroit et sa référence ailleurs il est parfois utile (pour la lisibilité humaine) d'avoir un emplacement de définition tandis que d'autres portent les propriétés “additionnelles” Chapter 3 A Semantic Web Primer

Les éléments propriétés Contenu des éléments rdf:Description <rdf:Description rdf:about="CIT3116"> <uni:nomcours>Knowledge Representation</uni:nomcours> <uni:isTaughtBy>Grigoris Antoniou</uni:isTaughtBy> </rdf:Description> uni:nomcours et uni:isTaughtBy définissent deux paires de valeurs propriétés de CIT3116 (deux déclarations RDF) lus conjointement Chapter 3 A Semantic Web Primer

Types de données L'attribute rdf:datatype="&xsd:integer" sert à indiquer le type de données de la valeur de la propriété âge <rdf:Description rdf:about="949318"> <uni:nom>David Billington</uni:nom> <uni:titre>Associate Professor</uni:titre> <uni:age rdf:datatype="&xsd:integer">27<uni:age> </rdf:Description> Chapter 3 A Semantic Web Primer

Types de données (2) La propriété “age” est supposée avoir "&xsd:integer" comme définition (type) il reste nécessaire d'indiquer le type de la valeur de cette propriété chaque fois qu'elle est utilisée le but est de garantir que le processeur RDF puisse attribuer le type correct de valeur de la propriété même s'il n'a pas "vu" la définition RDF Schema au préalable ce scénario peut très bien se produire dans le www sans restriction Chapter 3 A Semantic Web Primer

L'attribut rdf:resource Les relations entre cours et professeurs (dans l'exemple) n'ont pas été formellement définies mais existent implicitement par l'utilisation du même nom Pour la machine, l'utilisation du même nom peut être une simple coïncidence On peut remarquer que deux entités sont les mêmes qui utilisent l'attribut rdf:resource Chapter 3 A Semantic Web Primer

L'attribut rdf:resource (2) <rdf:Description rdf:about="CIT1111"> <uni:nomcours>Discrete Mathematics</uni:nomcours> <uni:isTaughtBy rdf:resource="949318"/> </rdf:Description> <rdf:Description rdf:about="949318"> <uni:nom>David Billington</uni:nom> <uni:titre>Associate Professor</uni:titre> Chapter 3 A Semantic Web Primer

Référencer des ressources définies en externe Par ex., pour référencer la ressource CIT1111 définie en externe: http://www.mydomain.org/uni-ns#CIT1111 comme étant la valeur de rdf:about www.mydomain.org/uni-ns est l'URI où se trouve la définition de CIT1111 La description comportant un ID définit un fragment URI pouvant servir de référence à la description Chapter 3 A Semantic Web Primer

Descriptions emboîtées: exemple <rdf:Description rdf:about="CIT1111"> <uni:nomcours>Discrete Maths</uni:nomcours> <uni:isTaughtBy> <rdf:Description rdf:ID="949318"> <uni:nom>David Billington</uni:nom> <uni:titre>Associate Professor</uni:titre> </rdf:Description> </uni:isTaughtBy> Chapter 3 A Semantic Web Primer

Descriptions emboîtées Des descriptions peuvent être définies à l'intérieur d'autres descriptions D'autres cours, comme CIT3112, peuvent toujours se renvoyer à la nouvelle ressource avec ID 949318 Bien qu'une description puisse se définir dans une autre, la portée reste globale Chapter 3 A Semantic Web Primer

Introduction d'une certaine structure dans les documents RDF à l'aide de l'élément rdf:type <rdf:Description rdf:ID="CIT1111"> <rdf:type rdf:resource="http://www.mydomain.org/uni- ns#cours"/> <uni:nomcours>Discrete Maths</uni:nomcours> <uni:isTaughtBy rdf:resource="#949318"/> </rdf:Description> <rdf:Description rdf:ID="949318"> <rdf:type rdf:resource="http://www.mydomain.org/uni- ns#lecteur"/> <uni:nom>David Billington</uni:nom> <uni:titre>Associate Professor</uni:titre> Chapter 3 A Semantic Web Primer

Syntaxe abrégée Règles de simplification: Les éléments de propriété sans descendance dans les éléments description peuvent se remplacer par des attributs XML Pour les éléments de description avec élément de type, on peut utiliser le nom spécifié dans l'élément rdf:type au lieu de rdf:Description Ces règles créent des variations de syntaxe de la même déclaration RDF elles sont équivalentes en ce qui concerne le modèle de données RDF même si leur syntaxe XML est différente Chapter 3 A Semantic Web Primer

Syntaxe abrégée: exemple <rdf:Description rdf:ID="CIT1111"> <rdf:type rdf:resource="http://www.mydomain.org/uni- ns#cours"/> <uni:nomcours>Discrete Maths</uni:nomcours> <uni:isTaughtBy rdf:resource="#949318"/> </rdf:Description> Chapter 3 A Semantic Web Primer

Application de la première règle de simplification <rdf:Description rdf:ID="CIT1111" uni:nomcours="Discrete Maths"> <rdf:type rdf:resource="http://www.mydomain.org/uni- ns#cours"/> <uni:isTaughtBy rdf:resource="#949318"/> </rdf:Description> Chapter 3 A Semantic Web Primer

Application de la deuxième règle de simplification <uni:cours rdf:ID="CIT1111" uni:nomcours="Discrete Maths"> <uni:isTaughtBy rdf:resource="#949318"/> </uni:cours> Chapter 3 A Semantic Web Primer

Eléments conteneurs Rassemblent plusieurs ressources ou attributs à propos desquels on veut faire des déclarations globales Par ex., on veut parler des cours enseignés par un certain professeur Le contenu des éléments conteneurs sont nommés rdf:_1, rdf:_2, etc. ou éventuellement rdf:li Chapter 3 A Semantic Web Primer

Trois type d'éléments conteneurs rdf:Bag conteneur dans le désordre permettant les occurrences multiples par ex. membres du conseil facultaire, documents dans un dossier rdf:Seq conteneur avec classement dans l’ordre, peut contenir des occurrences multiples par ex. modules d'un cours, points d'un ordre du jour, liste alphabétique des membres du personnel (l'ordre est imposé) rdf:Alt jeu d'alternatives par ex. origine et miroirs d'un document, traductions d'un document en plusieurs langues Chapter 3 A Semantic Web Primer

Exemple d'un multi-ensemble (bag) <uni:lecteur rdf:ID="949352" uni:nom="Grigoris Antoniou" uni:titre="Professor"> <uni:lescoursTaught> <rdf:Bag> <rdf:_1 rdf:resource="#CIT1112"/> <rdf:_2 rdf:resource="#CIT3116"/> </rdf:Bag> </uni:lescoursTaught> </uni:lecteur> Chapter 3 A Semantic Web Primer

Exemple d'alternative <uni:cours rdf:ID="CIT1111" uni:nomcours="Discrete Mathematics"> <uni:lecteur> <rdf:Alt> <rdf:li rdf:resource="#949352"/> <rdf:li rdf:resource="#949318"/> </rdf:Alt> </uni:lecteur> </uni:cours> Chapter 3 A Semantic Web Primer

Rdf:ID Attribut des éléments conteneurs <uni:lecteur rdf:ID="949318"  uni:nom="David Billington"> <uni:lescoursTaught> <rdf:Bag rdf:ID="DBlescours"> <rdf:_1 rdf:resource="#CIT1111"/> <rdf:_2 rdf:resource="#CIT3112"/> </rdf:Bag> </uni:lescoursTaught> </uni:lecteur> Chapter 3 A Semantic Web Primer

Collections RDF Une des restrictions de ces conteneurs est leur impossibilité de les fermer “ce sont tous des membres de ce conteneur” RDF fournit le support de description des groupes contenant uniquement les membres précisés, sous la forme de collections RDF list dans le graphe RDF construit à l'aide d'un vocabulaire de collection prédéfini: rdf:List, rdf:first, rdf:rest et rdf:nil Chapter 3 A Semantic Web Primer

Collections RDF (2) Syntaxe abrégée "Collection" pour l'attribut rdf:parseType : <rdf:Description rdf:about="#CIT2112"> <uni:isTaughtBy rdf:parseType="Collection"> <rdf:Description rdf:about="#949111"/> <rdf:Description rdf:about="#949352"/> <rdf:Description rdf:about="#949318"/> </uni:isTaughtBy> </rdf:Description> Chapter 3 A Semantic Web Primer

Réification On souhaite parfois faire des déclarations à propos d'autres déclarations Il faut pour cela pouvoir se référer à une déclaration ayant un identifiant RDF permet ce genre de référence via la réification qui transforme une déclaration en ressource Chapter 3 A Semantic Web Primer

Exemple de réification <rdf:Description rdf:about="#949352"> <uni:nom>Grigoris Antoniou</uni:nom> </rdf:Description> réifié en <rdf:Statement rdf:ID="StatementAbout949352"> <rdf:subject rdf:resource="#949352"/> <rdf:predicate rdf:resource="http://www.mydomain.org/ uni-ns#nom"/> <rdf:object>Grigoris Antoniou</rdf:object> </rdf:Statement> Chapter 3 A Semantic Web Primer

Réification (2) rdf:subject, rdf:predicate et rdf:object permettent d'accéder aux parties de la déclaration L' ID de la déclaration peut servir de référence comme on peut le faire pour n'importe quelle description On écrit une rdf:Description si on ne veut plus parler ultérieurement de cette déclaration On écrit une rdf:Statement si on veut se référer à une déclaration Chapter 3 A Semantic Web Primer

Sommaire Fondements de RDF Syntaxe de base XML de RDF Principes de RDF Schema Langage RDF Schema Espaces de noms en RDF et RDF Schema Sémantique axiomatique de RDF et RDFS Sémantique directe basée sur les règles d'inférence Requête de documents RDF/RDFS utilisant RQL Chapter 3 A Semantic Web Primer

Fondements de RDF RDF est un langage universel permettant aux utilisateurs de décrire les ressources dans leur propre vocabulaire RDF ne suppose ni ne définit aucune sémantique d'un domaine spécifique C'est à l'utilisateur de le faire dans RDF Schema en se servant de: classes et propriétés hiérarchies de classes et domaines légataires hiérarchies de propriété Chapter 3 A Semantic Web Primer

Les classes et leurs instances Il faut distinguer: les "choses" concrètes (objets distincts) dans le domaine Discrete Maths, David Billington etc. les séries d'individus partageant des propriétés appelées classes: professeurs, étudiants, cours etc. Les objets distincts appartenant à une classe sont appelés les instances de cette classe En RDF, la relation entre les instances et les classes se fait via rdf:type Chapter 3 A Semantic Web Primer

De l'utilité des classes Imposent des restrictions à ce qui peut être déclaré dans un document RDF utilisant le schéma comme dans les langages de programmation par ex. A+1, où A est un ensemble interdit les déclarations incohérentes Chapter 3 A Semantic Web Primer

Déclarations incohérentes interdites par l'utilisation des classes Les maths discrètes sont enseignées par les maths concrètes nous voulons que les cours soient donnés par les professeurs uniquement restriction sur les valeurs de la propriété “soient donnés par” (restriction d'étendue) David Billington enseigne dans la salle MZH5760 seuls des cours peuvent être enseignés ceci impose une restriction sur les objets auquel la propriété peut s'appliquer (restriction de domaine) Chapter 3 A Semantic Web Primer

Hiérarchies des classes Les classes peuvent être hiérarchisées A est une sous-classe de B si chaque instance de A est également une instance de B B est alors la superclasse de A Le graphe d'une sous-classe ne doit pas être arborescent Une classe peut avoir plusieurs superclasses Chapter 3 A Semantic Web Primer

Exemple de hiérarchie de classes Membre Personnel Membre Personnel administratif Membre Personnel Technique Membre Personnel académique Professeur Professeur associé Assistant Chapter 3 A Semantic Web Primer

Hiérarchie des classes, principe d’héritage Restriction d'étendue: les cours ne peuvent être donnés que par les membres du corps académique Michael Maher est professeur Il "hérite" de la capacité d'enseigner via la classe des membres du corps académique En RDF Schema, ceci se fait en déterminant la sémantique de "est une sous-classe de" ce n'est pas le rôle de l'application (logiciel de traitement RDF) d'interpréter "est une sous-classe de" Chapter 3 A Semantic Web Primer

Hiérarchie des propriétés Relations hiérarchiques des propriétés par ex., "est enseigné par" est une sous-propriété de "implique" si un cours C est enseigné par le membre A du corps académique, C implique aussi A L'inverse n'est pas nécessairement vrai par ex., A peut être l'enseignant du cours C ou un répétiteur qui note le travail à la maison des étudiants mais n'enseigne pas C P est une sous-propriété de Q, si Q(x,y) est vrai chaque fois que P(x,y) est vrai Chapter 3 A Semantic Web Primer

Une couche RDF par rapport à une couche RDF Schema Les mathématiques discrètes sont enseignées par David Billington Le schéma proprement dit est écrit en langage formel, RDF Schema, capable d'exprimer ses ingrédients: sous-ClasseDe, Classe, Propriété, sous-PropriétéDe, Ressource, etc. Chapter 3 A Semantic Web Primer

Une couche RDF par rapport à une couche RDF Schema (2) Litteral range range Telephone ID domaine domaine Membre Personnel implique range sousClasseDe sousPropriétéDe domaine Membre Personnel académique range est donné par domaine sousClasseDe sousClasseDe Cours sousClasseDe Professeur associé Professeur Assistant type type RDFS RDF est donné par Mathematique discrète David Billington Chapter 3 A Semantic Web Primer

Sommaire Fondements de RDF Syntaxe de base XML de RDF Principes de RDF Schema Langage RDF Schema Espaces de noms en RDF et RDF Schema Sémantique axiomatique de RDF et RDFS Sémantique directe basée sur les règles d'inférence Requête de documents RDF/RDFS utilisant RQL Chapter 3 A Semantic Web Primer

Sommaire Introduction Description détaillée de XML Structuration les DTD XML Schema Espaces de noms (Dénominations) Accès, requête de documents XML: XPath Transformations: XSLT Chapter 3 A Semantic Web Primer

RDF Schema en RDF Les primitives de modélisation de RDF Schema sont définies à l'aide de ressources et de propriétés (on les utilise même aussi RDF !) Pour déclarer que "professeur" est une sous-classe de "membre du corps académique" définir les ressources professeur, MembreDuCorpsAcadémique et sous-ClasseDe définir la propriété sous-ClasseDe écrire le triplet (sous-ClasseDe,professeur,MembreDuCorpsAcadémique) On utilise la syntaxe à base XML de RDF Chapter 3 A Semantic Web Primer

Classes fondamentales rdfs:Resource, classe de toutes les ressources rdfs:Class, classe de toutes les classes rdfs:Literal, classe de tous les littéraux(chaînes) rdf:Property, classe de toutes les propriétés rdf:Statement, classe de toutes les déclarations réifiées Chapter 3 A Semantic Web Primer

Propriétés fondamentales rdf:type, relie une ressource à sa classe la ressource est dite être une instance de cette classe rdfs:subClassOf, relie une classe à l'une de ses superclasses toutes les instances d'une classe sont aussi les instances de sa superclasse rdfs:subPropertyOf, relie une propriété à l'une de ses superpropriétés Chapter 3 A Semantic Web Primer

Propriétés fondamentales (2) rdfs:domain, définit le domaine d'une propriété P classe des ressources apparaissant comme sujet dans un triplet avec prédicat P si le domaine n'est pas spécifié, n'importe quelle ressource peut être le sujet rdfs:range, définit l'étendue de la propriété P classe des ressources apparaissant comme valeur dans un triplet avec prédicat P Chapter 3 A Semantic Web Primer

Exemples <rdfs:Class rdf:about="#lecteur"> <rdfs:subClassOf rdf:resource="#staffMember"/> </rdfs:Class> <rdf:Property rdf:ID="phone"> <rdfs:domain rdf:resource="#staffMember"/> <rdfs:range rdf:resource="http://www.w3.org/ 2000/01/rdf-schema#Literal"/> </rdf:Property> Chapter 3 A Semantic Web Primer

Relations entre classes et propriétés fondamentales rdfs:subClassOf et rdfs:subPropertyOf sont transitifs par définition rdfs:Class est une sous-classe de rdfs:Resource parce que toute classe est une ressource rdfs:Resource est une instance de rdfs:Class rdfs:Resource est la classe de toutes les ressources, c'est donc une classe Toute classe est une instance de rdfs:Class pour la même raison Chapter 3 A Semantic Web Primer

Hiérarchie des sous-classes de certaines primitives de modélisation en RDF Schema Rdfs : Ressource Rdfs : Propriété Rdfs : Classe Rdfs : Litteral Rdfs : Datatype Rdfs : XML Litteral Chapter 3 A Semantic Web Primer

Relations des instances de certaines primitives de modélisation en RDF Schema Rdfs : Classe Rdfs : Propriété Rdfs : Ressource Rdfs : Litteral Rdfs : Datatype Rdfs : XML Litteral Chapter 3 A Semantic Web Primer

Relations des instances de certaines propriétés fondamentales en RDF et RDF Schema Rdfs : Ressource Rdfs : domaine Rdfs : type Rdfs : range Rdfs : sousClasseDe Rdfs : sousPropriétéDe Chapter 3 A Semantic Web Primer

Réification et conteneurs rdf:subject, relie une déclaration réifiée à son sujet rdf:predicate, relie une déclaration réifiée à son prédicat rdf:object, relie une déclaration réifiée à son objet rdf:Bag, classe des multi-ensembles rdf:Seq, classe des séquences rdf:Alt, classe des alternatives rdfs:Container, superclasse de toutes les classes de conteneur, y compris les trois ci-dessus Chapter 3 A Semantic Web Primer

Propriétés utilitaires rdfs:seeAlso relie une ressource à une autre ressource qui l'explique rdfs:isDefinedBy est une sous-propriété de rdfs:seeAlso qui relie une ressource à l'emplacement où se trouve sa définition, en général un RDF Schema rfds:comment les commentaires, en général un texte plus long, peuvent être associés à une ressource rdfs:label appellation conviviale (désignation) associée à une ressource Chapter 3 A Semantic Web Primer

Exemple: une université <rdfs:Class rdf:ID="lecteur"> <rdfs:comment> Classe des professeurs. Tous les professeurs sont membres du corps académique </rdfs:comment> <rdfs:subClassOf rdf:resource="#academicStaffMember"/> </rdfs:Class> Chapter 3 A Semantic Web Primer

Exemple: une université (2) <rdfs:Class rdf:ID="cours"> <rdfs:comment>Classe des cours</rdfs:comment> </rdfs:Class> <rdf:Property rdf:ID="isTaughtBy"> <rdfs:comment> Hérite son domaine ("cours") et son étendue ("professeur") de sa superpropriété "implique" </rdfs:comment> <rdfs:subPropertyOf rdf:resource="#involves"/> </rdf:Property> Chapter 3 A Semantic Web Primer

Exemple: une université (3) <rdf:Property rdf:ID="phone"> <rdfs:comment> Propriété des membres du personnel. Prend les littéraux comme valeurs. </rdfs:comment> <rdfs:domain rdf:resource="#staffMember"/> <rdfs:range rdf:resource="http://www.w3.org/2000/01/rdf- schema#Literal"/> </rdf:Property> Chapter 3 A Semantic Web Primer

Hiérarchie des classes dans l'exemple des véhicules Vehicule à moteur Van Camion Vehicule passagers MiniVan Chapter 3 A Semantic Web Primer

Sommaire Fondements de RDF Syntaxe de base XML de RDF Principes de RDF Schema Langage RDF Schema Espaces de noms en RDF et RDF Schema Sémantique axiomatique de RDF et RDFS Sémantique directe basée sur les règles d'inférence Requête de documents RDF/RDFS utilisant RQL Chapter 3 A Semantic Web Primer

Les espaces de noms en RDF <rdfs:Class rdf:ID="Statement" rdfs:comment="Classe de triplets constitués d'un prédicat, d'un sujet et d'un objet (c'est-à-dire une déclaration réifiée)"/> <rdfs:Class rdf:ID="Property" rdfs:comment="Class des propriétés"/> <rdfs:Class rdf:ID="Bag" rdfs:comment="Class des collections non rangées par ordre"/> Chapter 3 A Semantic Web Primer

Les espaces de noms en RDF (2) <rdf:Property rdf:ID="prédicat" rdfs:comment="Identifie la propriété d'une déclaration sous forme réifiée"/> <rdfs:domain rdf:resource="#Statement"/> <rdfs:range rdf:resource="#Property"/> </rdf:Property> Chapter 3 A Semantic Web Primer

Les espaces de noms en RDF Schema <rdfs:Class rdf:ID="Resource" rdfs:comment="Classe la plus générale"/> <rdfs:Class rdf:ID="Class" rdfs:comment="La notion de classes. Toutes les classes sont des ressources"/> <rdfs:subClassOf rdf:resource="#Resource"/> </rdfs:Class> Chapter 3 A Semantic Web Primer

Les espaces de noms en RDF (2) <rdf:Property rdf:ID="subPropertyOf"> <rdfs:domain rdf:resource="http://www.w3.org/ 1999/02/22-rdf-syntax-ns#Property"/> <rdfs:range rdf:resource="http://www.w3.org/ </rdf:Property> <rdf:Property rdf:ID="subClassOf"> <rdfs:domain rdf:resource="#Class"/> <rdfs:range rdf:resource="#Class"/> Chapter 3 A Semantic Web Primer

Les espaces de noms par rapport à la sémantique Envisageons rdfs:subClassOf l'espace de noms précise simplement qu'il s'applique aux classes et a une classe comme valeur la signification d'être une sous-classe n'est pas exprimée La signification ne peut pas être exprimée en RDF si c'était le cas, RDF Schema ne serait pas nécessaire Nécessité d'une définition extérieure de la sémantique respecté par le logiciel de traitement RDF/RDFS Chapter 3 A Semantic Web Primer

Sommaire Fondements de RDF Syntaxe de base XML de RDF Principes de RDF Schema Langage RDF Schema Espaces de noms en RDF et RDF Schema Sémantique axiomatique de RDF et RDFS Sémantique directe basée sur les règles d'inférence Requête de documents RDF/RDFS utilisant RQL Chapter 3 A Semantic Web Primer

Sémantique axiomatique On formalise le sens des primitives de modélisation de RDF et RDF Schema Par traduction en logique du premier ordre On lève les ambiguïtés de la sémantique et on la rend accessible à la machine On fournit un support de raisonnement de base aux raisonneurs automatiques manipulant les formules logiques Chapter 3 A Semantic Web Primer

Approche En RDF et RSF Schema, toutes les primitives du langage sont représentées par des constantes: Resource, Class, Property, subClassOf, etc. Quelques prédicats prédéfinis sont utilisés comme base de l'expression des relations entre constantes On fait appel à la logique des prédicats avec égalité Les noms variables commencent par ? Tous les axiomes sont implicitement quantifiés de manière universelle Chapter 3 A Semantic Web Primer

Axiomatisation auxiliaire des listes Symboles de fonction: nil (liste vide) cons(x,l) (ajoute un élément devant la liste) first(l) (renvoie au premier élément) rest(l) (renvoie au reste de la liste) Symboles de prédicat: item(x,l) (teste si un élément est présent dans la liste) list(l) (teste si l est une liste) Les listes servent à représenter les conteneurs en RDF Chapter 3 A Semantic Web Primer

Prédicats de base PropVal(P,R,V) Type(R,T) Un prédicat à 3 arguments servant à représenter une déclaration RDF ayant une ressource R, une propriété P et une valeur V Une déclaration RDF (triplet) (P,R,V) esr représentée par PropVal(P,R,V). Type(R,T) Abrégé de PropVal(type,R,T) Détermine que la ressource R a le type T Type(?r,?t)  PropVal(type,?r,?t) Chapter 3 A Semantic Web Primer

Classes RDF Constantes: Class, Resource, Property, Literal toutes les classes sont des instances de Class Type(Class,Class) Type(Resource,Class) Type(Property,Class) Type(Literal,Class) Chapter 3 A Semantic Web Primer

Classes RDF (2) Resource est la classe la plus générale: toute classe et toute propriété est une ressource Type(?p,Property) Type(?p,Resource) Type(?c,Class) Type(?c,Resource) Le prédicat d'une déclaration RDF doit être une propriété PropVal(?p,?r,?v) Type(?p,Property) Chapter 3 A Semantic Web Primer

Le type Propriété Type est une propriété PropVal(type,type,Property) Type peut s'appliquer à des ressources (domaine) et a une classe comme valeur (étendue) Type(?r,?c) (Type(?r,Resource) Type(?c,Class)) V Chapter 3 A Semantic Web Primer

La propriété auxiliaire FuncProp P est une propriété fonctionnelle si, et uniquement si c'est une propriété il n'y a pas de x, y1 et y2 avec P(x,y1), P(x,y2 ) et y1¹y2 Type(?p, FuncProp)  (Type(?p, Property)  ?r ?v1 ?v2 (PropVal(?p,?r,?v1)  PropVal(?p,?r,?v2)  ?v1 = ?v2)) Chapter 3 A Semantic Web Primer

Conteneurs Les conteneurs sont des listes: Type(?c,Container) list(?c) Les conteneurs sont des multi-ensembles ou des séquences ou des alternatives: Type(?c,Container) (Type(?c,Bag)  Type(?c,Seq)  Type(?c,Alt)) Les multi-ensembles et les séquences sont disjoints: ¬(Type(?x,Bag)  Type(?x,Seq)) Chapter 3 A Semantic Web Primer

Conteneurs (2) Pour tout nombre naturel n > 0, il y a le sélecteur _n, qui sélectionne le nième élément d'un conteneur C'est une propriété fonctionnelle: Type(_n,FuncProp) Elle ne s'applique qu'aux conteneurs: PropVal(_n,?c,?o)  Type(?c,Container) Chapter 3 A Semantic Web Primer

Sous-classe subClassOf est une propriété: Type(subClassOf,Property) Si une classe C est une sous-classe de C', toutes les instances de C sont aussi des instances de C': PropVal(subClassOf,?c,?c')  (Type(?c,Class)  Type(?c',Class)  ?x (Type(?x,?c)  Type(?x,?c'))) Chapter 3 A Semantic Web Primer

Sous-propriété P est une sous-propriété de P', si P'(x,y) est vrai chaque fois que P(x,y) est vrai: Type(subPropertyOf,Property) PropVal(subPropertyOf,?p,?p')  (Type(?p,Property)  Type(?p',Property)  ?r ?v (PropVal(?p,?r,?v)  PropVal(?p',?r,?v))) Chapter 3 A Semantic Web Primer

Domaine et étendue Si le domaine de P est D, pour chaque P(x,y), xD PropVal(domain,?p,?d)  ?x ?y (PropVal(?p,?x,?y)  Type(?x,?d)) Si l'étendue de P est R, pour chaque P(x,y), yR PropVal(range,?p,?r)  ?x ?y (PropVal(?p,?x,?y)  Type(?y,?r)) Chapter 3 A Semantic Web Primer

Sommaire Fondements de RDF Syntaxe de base XML de RDF Principes de RDF Schema Langage RDF Schema Espaces de noms en RDF et RDF Schema Sémantique axiomatique de RDF et RDFS Sémantique directe basée sur les règles d'inférence Requête de documents RDF/RDFS utilisant RQL Chapter 3 A Semantic Web Primer

Sémantique basée sur les règles d'inférence Sémantique en termes de triplets RDF au lieu de redéclarer RDF en termes de logique du premier ordre ... et systèmes sains et complets d'inférence ce système d'inférence comprend des règles d'inférence de forme: IF E contient certains triplets THEN (?) on ajoute à E certains triplets additionnels où E est un jeu arbitraire de triplets RDF Chapter 3 A Semantic Web Primer

Exemples de règles d'inférence IF E contient le triplet (?x,?p,?y) THEN E contient aussi (?p,rdf:type,rdf:property) IF E contient les triplets (?u,rdfs:subClassOf,?v) et (?v,rdfs:subclassOf,?w) THEN E contient aussi le triplet (?u,rdfs:subClassOf,?w) IF E contient les triplets (?x,rdf:type,?u) et (?u,rdfs:subClassOf,?v) THEN E contient aussi le triplet (?x,rdf:type,?v) Chapter 3 A Semantic Web Primer

Exemples de règles d'inférence (2) Toute ressource ?y se présentant comme la valeur d'une propriété ?p , on peut inférer qu'elle fait partie de l'étendue de ?p Ceci montre que les définitions d'étendue en RDF Schema ne servent pas à restreindre l'étendue d'une propriété mais à inférer le fait de faire partie de l'étendue IF E contient les triplets (?x,?p,?y) et (?p,rdfs:range,?u) THEN E contient aussi le triplet (?x,rdf:type,?u) Chapter 3 A Semantic Web Primer

Sommaire Fondements de RDF Syntaxe de base XML de RDF Principes de RDF Schema Langage RDF Schema Espaces de noms en RDF et RDF Schema Sémantique axiomatique de RDF et RDFS Sémantique directe basée sur les règles d'inférence Requête de documents RDF/RDFS utilisant RQL Chapter 3 A Semantic Web Primer

A quoi sert le langage de requête RDF Différentes représentations XML XML a un niveau inférieur d'abstraction que RDF En syntaxe, il existe plusieurs moyens de représenter une déclaration RDF en XML On devrait disposer de plusieurs requêtes XQuery, par ex. //uni:lecteur/uni:titre si élément uni:titre //uni:lecteur/@uni:titre si attributuni:titre Les deux représentations XML sont équivalentes! Chapter 3 A Semantic Web Primer

A quoi sert le langage de requête RDF? Comprendre la sémantique <uni:lecteur rdf:ID="949352"> <uni:nom>Grigoris Antoniou</uni:nom> </uni:lecteur> <uni:professor rdf:ID="949318"> <uni:nom>David Billington</uni:nom> </uni:professor> <rdfs:Class rdf:about="#professor"> <rdfs:subClassOf rdf:resource="#lecteur"/> </rdfs:Class> Une requête des noms de tous les professeurs doit donner Grigoris Antoniou et David Billington Chapter 3 A Semantic Web Primer

Requêtes de base RQL La requête Class récupère toutes les classes La requête Property récupère toutes les propriétés Pour récupérer les instances d'une classe (par ex. cours) on écrit : cours Si on ne veut pas récupérer les instances héritées (indirectes), il faut écrire ^cours Chapter 3 A Semantic Web Primer

Requêtes de base RQL (2) Les ressources et valeurs des triplets ayant une propriété spécifique (par ex. involves (implique) sont récupérées par la requête : involves Le résultat comprend toutes les sous-propriétés de involves Si on ne veut pas ces résultats supplémentaires, il faut écrire : ^involves Chapter 3 A Semantic Web Primer

Utilisation de "select-from-where" Comme en SQL select spécifie le nombre et l'ordre des données récupérées from sert à naviguer dans le modèle de données where impose des contraintes aux solutions possibles Récupérer tous les numéros de téléphone des membres du personnel: select X,Y from {X}phone{Y} Ici, X et Y sont des variables et {X}phone{Y} représente un triplet ressource-propriété-valeur Chapter 3 A Semantic Web Primer

Joint implicite Récupérer tous les professeurs et leurs numéros de téléphone: select X,Y from lecteur{X}.phone{Y} Jointure implicite: on restreint la seconde requête à ces seuls triplets dont la ressource se trouve dans la variable X Dans ce cas-ci, on restreint le domaine des téléphones aux professeurs Un point . signale le joint implicite Chapter 3 A Semantic Web Primer

Joint explicite Récupérer les intitulés de tous les cours enseignés par le professeur ID 949352 select N from cours{X}.isTaughtBy{Y}, {C}nom{N} où Y="949352" et X=C Chapter 3 A Semantic Web Primer

Interroger Schema Les variables Schema ont un nom avec le préfixe $ (pour les classes) ou @ (pour les propriétés) Récupérer toutes les ressources et valeurs des triplets ayant la propriété phone ou n'importe laquelle de ses sous-propriétés et leurs classes select X,$X,Y,$Y from {X:$X}phone{Y:$Y} Chapter 3 A Semantic Web Primer

Interroger Schema (2) Le domaine et l'étendue d'une propriété peuvent se récupérer de la manière suivante: select domain(@P),range(@P) from @P where @P=phone Chapter 3 A Semantic Web Primer

Récapitulation RDF fournit les fondements de représentation et de traitement des métadonnées RDF possède un modèle de données à base de graphe RDF a une syntaxe de base XML pour supporter l'interopérabilité syntaxique XML et RDF se complètent parce que RDF supporte l'interopérabilité sémantique RDF propose une philosophie décentralisée et permet la construction par incréments des connaissances ainsi que leur partage et réutilisation Chapter 3 A Semantic Web Primer

Récapitulation (2) RDF est indépendant du domaine RDF Schema fournit un processus de description de domaines spécifiques RDF Schema est un langage ontologique primitif Il offre certaines primitives de modélisation à signification fixe Les notions fondamentales de RDF Schema sont la classe, les relations de sous-classe, la propriété, les relations de sous-propriétés, le domaine et les restrictions d'étendue Il existe des langages de requête pour RDF et RDFS Chapter 3 A Semantic Web Primer

... Dans les chapitres suivants RDF Schema est très primitif comme langage de modélisation du web De nombreuses primitives de modélisation font défaut Il faut de ce fait une couche ontologique au-dessus de RDF et RDF Schema Chapter 3 A Semantic Web Primer