Vous êtes sur la page 1sur 41

WEB SEMANTIQUE

L3 informatique – S2

Université Medea Dpt math et inf Module: web sémantique 2019/2020 Dr. S.Belkacem
Cours N° 05: RDF : Resource Description
2
Framework

Université Medea Dpt math et inf Module: web sémantique 2019/2020 Dr. S.Belkacem
Architecture du Web Sémantique
3

Fig.1. Architecture en couche du Web Sémantique


Université Medea Dpt math et inf Module: web sémantique 2019/2020 Dr. S.Belkacem
Cours N° 05: RDF : Resource Description Framework

Plan : le cours est scindé en deux parties

4
Partie 01 : Notions de bases

Partie 02 : Sérialisations RDF

Université Medea Dpt math et inf Module: web sémantique 2019/2020 Dr. S.Belkacem
Cours N° 05: RDF : Resource Description Framework

Plan Partie 02 :
1.Sérialisation :

5 Syntaxe N-Triples, Syntaxe Turtle, Syntaxe RDF/XML


2. Agrégations :
Conteneurs, Collections

Université Medea Dpt math et inf Module: web sémantique 2019/2020 Dr. S.Belkacem
6
Réification
 C’est quoi la réification?

 En RDF, la réification permet de considérer un triplet comme un nœud.

 Une déclaration (statement) peut être identifiée par une URI.

 On peut créer des déclarations en utilisant d’autres déclarations (réification)

 Exemple :
(#statement1, rdf:subject, www.culture.net//picasso132)
(#statement1, rdf:predicate, ex:peint)
(#statement1, rdf:object, http://www.museum.es/guernica.jpg)
(#paul, #sait, #statement1)

Université Medea Dpt math et inf Module: web sémantique 2019/2020 Dr. S.Belkacem
7
Réification
(#statement1, rdf:subject, www.culture.net//picasso132)
 Exemple :
(#statement1, rdf:predicate, ex:peint)
(#statement1, rdf:object, http://www.museum.es/guernica.jpg)
(#paul, #sait, #statement1)

#paul

#sait

www.culture.net//p Prédicat http://www.museum. #statement1


icasso132 es/guernica.jpg

Université Medea Dpt math et inf Module: web sémantique 2019/2020 Dr. S.Belkacem
Sérialisations RDF

1. Syntaxe RDF/XML
8
2. Syntaxe N-Triples

3. Syntaxe Turtle

Université Medea Dpt math et inf Module: web sémantique 2019/2020 Dr. S.Belkacem
9
Sérialisation
 Les graphes RDF ne sont pas exploitables par les machine

 Pourquoi la sérialisation?

 Pour échanger des données

 Pour permettre le traitement automatique

 Comment sérialiser?

 Présentation formel du graphe RDF en utilisant un standard

 Quel standard utiliser pour la sérialisations?

 RDF/XML , N-Triples, Turtle


Université Medea Dpt math et inf Module: web sémantique 2019/2020 Dr. S.Belkacem
Sérialisations RDF

1. Syntaxe RDF/XML
10
2. Syntaxe N-Triples

3. Syntaxe Turtle

Université Medea Dpt math et inf Module: web sémantique 2019/2020 Dr. S.Belkacem
11
Syntaxe RDF/XML
 Points forts de la Syntaxe RDF/XML

 standardisée

 Utilisation des espaces de noms

 Il existe de nombreux outils (et bibliothèques de programmation) pour


XML

Université Medea Dpt math et inf Module: web sémantique 2019/2020 Dr. S.Belkacem
12
Syntaxe RDF/XML
 Syntaxe XML pour RDF : RDF possède une syntaxe XML

 Un document RDF est une liste de descriptions inclues dans des balises
rdf:RDF
 Une description est introduite par la balise et porte sur
rdf:Description
une entité désignée par une URI introduite par l'attribut

rdf: about

 A la place de l'attribut rdf:about,


rdf: about, on peut utiliser rdf:ID pour
rdf: ID donner
une URL relative

Université Medea Dpt SC math et inf Module: web sémantique 2019/2020 Dr. S.Belkacem
13
Syntaxe RDF/XML
Vocabulaire XML propre à RDF
 Mots réservés

RDF, Description, ID, about, parseType, resource, li, nodeID, datatype

 Noms de classes

Seq, Bag, Alt, Statement, Property, XMLLiteral, List

 Noms de propriétés

subject, predicate, object, type, value, first, rest, _n (où n est un entier plus grand que 0 et ne
commençant pas par 0)

Université Medea Dpt SC math et inf Module: web sémantique 2019/2020 Dr. S.Belkacem
14
Syntaxe RDF/XML : élément racine

  L’élément racine RDF

 délimite bloc de déclaration RDF (marque début et fin)

 Permet la déclaration d'espace de noms

 la balise racine : rdf:RDF

Université Medea Dpt SC math et inf Module: web sémantique 2019/2020 Dr. S.Belkacem
15
Syntaxe RDF/XML : les triplets
 Un Triplet ( Sujet, Prédicat, Objet ) est :

  un triplet marquer par l’élément < rdf:Description >

 la balise "rdf:description" sert à décrire une ressource.

 Attributs de l’élément < rdf:Description >

 rdf:about : la ressource

 rdf:ID : identifiant d’une déclaration RDF

 rdf:type : donner un type prédéfini à une ressource

Université Medea Dpt SC math et inf Module: web sémantique 2019/2020 Dr. S.Belkacem
16
Syntaxe RDF/XML : les triplets

Représentation Prédicat
graphique Sujet valeur

Triple
( Sujet, Prédicat, Objet )
Syntaxe <rdf:Description rdf:about=" Sujet">
RDF/XML <Prédicat> valeur </Prédicat>
</rdf:Description>

Université Medea Dpt SC math et inf Module: web sémantique 2019/2020 Dr. S.Belkacem
17
Syntaxe RDF/XML : les triplets

Représentation Prédicat
graphique Sujet Objet
Triple
( Sujet, Prédicat, Objet )
Syntaxe <rdf:Description rdf:about=" IRI Sujet">
RDF/XML <Prédicat>
<rdf:Description rdf:about=" IRI d’Objet ">
</Prédicat>
</rdf:Description>

Université Medea Dpt SC math et inf Module: web sémantique 2019/2020 Dr. S.Belkacem
18
Syntaxe RDF/XML : les triplets
 Autre forme d’écriture plus simple et concise
Représentation Prédicat
graphique Sujet Objet

Triple
( Sujet, Prédicat, Objet )
Syntaxe
<rdf:Description rdf:about=" IRI Sujet">
RDF/XML
<Prédicat rdf:ressource=" IRI d’Objet ">
</rdf:Description>

Université Medea Dpt SC math et inf Module: web sémantique 2019/2020 Dr. S.Belkacem
19
Syntaxe RDF/XML
 Exemple : Soit le graphe RDF suivant :

http://www.univ-medea.dz/Personel/Mohamed_e/

a l’adresse
Est Appelée e-mail

personne
Moh_e@gamil.com
Mohamed

Université Medea Dpt math et inf Module: web sémantique 2019/2020 Dr. S.Belkacem
20
Syntaxe RDF/XML
 Exemple : le document RDF/XML correspondant est le suivant :

<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:contact = " http://www.W3.org/2000/10/swap/pim/contact# "
xmlns:foaf = "http://xmlns.com/foaf/0.1/#" >
<rdf:Description rdf:about="http://www.univ-medea.dz/Personel/Mohamed_e/ ">
<rdf : type rdf:ressource= " foaf:person " >
<contact : fullName> Mohamed</contact:fullName>
<contact : mailbox rdf:resource = "mailto:Moh_e@gamil.com"/>
</rdf:Description>
</rdf:RDF>
Université Medea Dpt SC math et inf Module: web sémantique 2019/2020 Dr. S.Belkacem
21
Syntaxe RDF/XML : Les nœuds vides
 Les nœuds vides (nœuds blancs) sont marqués par l’attribut

rdf:nodeID= " chaine_de_caracteres "


 Exemple :
Pôle urbain
Rue

adresse Ville Médea


http://www.univ-
medea.dz/
Pays
Algérie

Code Postale
26000
Université Medea Dpt math et inf Module: web sémantique 2019/2020 Dr. S.Belkacem
22
Syntaxe RDF/XML : Les nœuds vides
 Exemple : le document RDF/XML correspondant est le suivant :
<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:univ = " http://www.univ-medea.dz/vocab# " >
<rdf:Description rdf:about="http://www.univ-medea.dz ">
<univ:adresse rdf:nodeID="A234” />
</rdf:Description>
<rdf:Description rdf:nodeID="A234” >
<univ : Rue> Pôle urbain</ univ : Rue >
<univ : Code_Postale > Mohamed </ univ : Code_Postale >
<univ : Ville rdf:resource="http://www.algérie.dz/medea/"/>
<univ : Pays rdf:resource="http://www.algérie.dz/"/>
</rdf:Description>
</rdf:RDF>
Université Medea Dpt SC math et inf Module: web sémantique 2019/2020 Dr. S.Belkacem
Sérialisations RDF

1. Syntaxe RDF/XML
23
2. Syntaxe N-Triples

3. Syntaxe Turtle

Université Medea Dpt math et inf Module: web sémantique 2019/2020 Dr. S.Belkacem
24
Syntaxe N-Triples

   les triples sont directement répertoriés comme tels

 Les IRI/URI sont entre crochets angulaires : < >

 Les littéraux sont entre guillemets : ” ”

 les triples se terminent par un point : .

 les espaces (blancs, sauts de ligne) sont ignorés

Université Medea Dpt SC math et inf Module: web sémantique 2019/2020 Dr. S.Belkacem
25
Syntaxe N-Triples
 Exemple :

 Pour décrire : Mohamed est identifiée par l’IRI http://www.univ-


medea.dz/Personel/Mohamed_e/, a l’adresse d’email : Moh_e@gamil.com.

 les triples issues de l’énoncé précèdent sont :

 http://www.univ-medea.dz/Personel/Mohamed_e/ est appelée Mohamed

 http://www.univ-medea.dz/Personel/Mohamed_e/ a l’adresse d’email Moh_e@gamil.com.

Université Medea Dpt math et inf Module: web sémantique 2019/2020 Dr. S.Belkacem
26
Syntaxe N-Triples
 Exemple : le document RDF/XML correspondant est le suivant :

< http://www.univ-medea.dz/Personel/Mohamed_e/ > <http://www.w3.org/2000/10/swap/pim/


contact#fullName> ” Mohamed ” .

<http://www.univ-medea.dz/Personel/Mohamed_e/> <http://www.w3.org/2000/10/swap/ pim/contact#mailbox>


” Mail to :Moh_e@gamil.com” .

Université Medea Dpt SC math et inf Module: web sémantique 2019/2020 Dr. S.Belkacem
Sérialisations RDF

1. Syntaxe RDF/XML
27
2. Syntaxe N-Triples

3. Syntaxe Turtle

Université Medea Dpt math et inf Module: web sémantique 2019/2020 Dr. S.Belkacem
28
Syntaxe Turtle : Utilisation des préfixes
 La syntaxe Turtle reprend celle des N-triples en y ajoutant des facilités
syntaxiques pour rendre le code plus lisible :

@prefix ensg : < http://www.univ-medea.dz/Personel/Mohamed_e/ >

@prefix vc : <http://www.w3.org/2000/10/swap/ pim/contact>

ensg : URI vc:fullName ” Mohamed ” .

ensg : URI vc :mailbox ” Mail to :Moh_e@gamil.com” .

Université Medea Dpt SC math et inf Module: web sémantique 2019/2020 Dr. S.Belkacem
29
Syntaxe Turtle : Utilisation des préfixes

 La syntaxe Turtle autorise le regroupement de triples avec le même sujet

@prefix ensg : < http://www.univ-medea.dz/Personel/Mohamed_e/ >

@prefix vc : <http://www.w3.org/2000/10/swap/ pim/contact>

ensg : URI vc:fullName ” Mohamed ” ;

vc :mailbox ” Mail to :Moh_e@gamil.com” .

Université Medea Dpt SC math et inf Module: web sémantique 2019/2020 Dr. S.Belkacem
30
RDF dans HTML

<html>
<head>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
………
</rdf:RDF>
</head>
<body>
.
</body>
</html>

Université Medea Dpt SC math et inf Module: web sémantique 2019/2020 Dr. S.Belkacem
Agrégations en RDF

1. Conteneurs
31
2. Collections

Université Medea Dpt math et inf Module: web sémantique 2019/2020 Dr. S.Belkacem
32
Agrégations en RDF : Conteneurs

 Les conteneurs (containers) permettent de décrire des groupes, les ressources contenues dans un

container sont appelées « membres du groupe »

 Exemple: un livre écrit par plusieurs auteurs

 Il existe trois types de containers prédéfinis : rdf:Bag, rdf:Seq, rdf:Alt

 Pour indiquer qu’une ressource est un container, on utilise la propriété rdf:type


33
Syntaxe RDF/XML : les Conteneurs
RDF définit trois types d'objets conteneurs :
 Bag (rdf:Bag) :
 Utilisée pour déclarer : une liste non ordonnée de ressources ou de littéraux.
 utilisée pour déclarer qu'une propriété possède plusieurs valeurs et qu'il n'y a pas de sens
pour l'ordre dans lequel elles sont données.
 Séquence (rdf:Seq):
 Une liste ordonnée de ressources ou de littéraux.
 utilisée pour déclarer qu'une propriété a plusieurs valeurs et que l'ordre de ces valeurs a un
sens.
 Alternative (rdf:Alt) :
 Une liste de ressources ou de littéraux qui représentent des alternatives pour la valeur
(unique) d'une propriété.

Université Medea Dpt SC math et inf Module: web sémantique 2019/2020 Dr. S.Belkacem
34
Conteneurs : Bag
 Exemple:

 Les enseignants du cours WS sont Ali, Omar, et Mohamed (l’ordre n’est pas important)

 Graphe RDF correspondant est le suivant


Ali

http://www.univ- Enseigner par


medea.dz/coursW
S/
Omar

Mohamed

Université Medea Dpt SC math et inf Module: web sémantique 2019/2020 Dr. S.Belkacem
35
Conteneurs : Bag
 Exemple : le document RDF/XML correspondant est le suivant :
<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:vc = "http://www.univ-medea.org/coursWS/exemple #” >
<rdf:Description rdf:about="http://www.univ-medea.dz/coursWS ">
<vc : ensigne>
<rdf:Bag >
<rdf:li> Ali </rdf:li>
<rdf:li>Omar</rdf:li>
<rdf:li>Mohamed</rdf:li>
</rdf:Bag>
</vc : ensigne>
</rdf:Description>
</rdf:RDF>
Université Medea Dpt SC math et inf Module: web sémantique 2019/2020 Dr. S.Belkacem
Conteneurs : Seq
36
 Exemple : Syntaxe RDF/XML d'une séquence d'étudiants par ordre de classement dans le cour WS (l’ordre
est important)
<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:ets = "http://www.univ-medea.org/etudients/informatique/L3/vocab#" >
<rdf:Description rdf:about="http://www.univ-medea.dz/coursWS ">
<ets : classement>
<rdf:Seq >
<rdf:li rdf:about= "http://www.univ-medea.org/etudients/informatique/L3/Akram” >
<rdf:li rdf:about= "http://www.univ-medea.org/etudients/informatique/L3/tesnime” >
<rdf:li rdf:about= "http://www.univ-medea.org/etudients/informatique/L3/Taki” >
</rdf:Seq>
</ets : classement>
</rdf:Description>
Université Medea Dpt SC math et inf Module: web sémantique 2019/2020 Dr. S.Belkacem
</rdf:RDF>
Conteneurs : Alt
37
 Exemple : Syntaxe RDF/XML d'une les choix de spécialités pour un étudiant informatiques (l’ordre n’est
important et une seule valeur est possible)
<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:ets = "http://www.univ-medea.org/etudients/informatique/L3/vocab#" >
<rdf:Description rdf:about="http://www.univ-medea.dz/coursWS ">
<ets : choixOption>
<rdf:ALt >
<rdf:li rdf:about= "http://www.univ-medea.org/etudients/informatique/L3/SIQ” >
<rdf:li rdf:about= "http://www.univ-medea.org/etudients/informatique/L3/SRI” >
</rdf:Alt>
</ets : choixOption >
</rdf:Description>
</rdf:RDF>
Université Medea Dpt SC math et inf Module: web sémantique 2019/2020 Dr. S.Belkacem
Agrégations en RDF

1. Conteneurs
38
2. Collections

Université Medea Dpt math et inf Module: web sémantique 2019/2020 Dr. S.Belkacem
39
Agrégations en RDF : Collections

 Un conteneur est :

 Ouvert : il dit seulement que certaines ressources identifiées sont des membres
d’un groupe ; il ne dit pas qu’il n’existe pas d’autres membres

 Les collections RDF sont utilisées pour décrire des groupes qui ne
contiennent que les membres spécifiés

Université Medea Dpt SC math et inf Module: web sémantique 2019/2020 Dr. S.Belkacem
40
Collections
 Exemple : Le TPN01 sera réaliser par les étudiants : Akram, Tesnime et Amine.

<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:ets = "http://www.univ-medea.org/etudients/informatique/L3/vocab#" >
<rdf:Description rdf:about="http://www.univ-medea.dz/coursWS/TPN01/ ">
<ets : ListedesMembres rdf:parseType="Collection">
< rdf:Description rdf:about= "http://www.univ-medea.org/etudients/informatique/L3/Akram” >
< rdf:Description rdf:about= "http://www.univ-medea.org/etudients/informatique/L3/tesnime” >
< rdf:Description rdf:about= "http://www.univ-medea.org/etudients/informatique/L3/Amine” > </ets
: ListedesMembres >
</rdf:Description>
</rdf:RDF>

Université Medea Dpt SC math et inf Module: web sémantique 2019/2020 Dr. S.Belkacem
Chapitre suivant :

Cours N° 06: RDFs et SPARQL


41

Université Medea Dpt math et inf Module: web sémantique 2019/2020 Dr. S.Belkacem

Vous aimerez peut-être aussi