langage rdf/rdfs
TRANSCRIPT
LANGAGE RDF & RDFs
Promotion : 1ère année Master SIA
Université De Béchar
Département Des Sciences Exactes
Mail@:[email protected] À Béchar Le 20/04/2014
Presenté Par: Krim Rached
Encardé Par: BenAli Khaled
Presenté Par Krim Rached 2014
Plan1-Présentation RDF
2-Syntaxe abstraite3-Sérialisation N – Triples 4-Sérialisation RDF/XML
5-Sérialisation Turtle
6-Déclaration de type de ressource
7-Conteneurs8-Collections
9-RDF Schéma – Classes
10-RDF Schéma – Propriétés
Conclusion
Presenté Par Krim Rached 2014
1-Présentation RDF 1/3
Presenté Par Krim Rached 2014
RDF signifie:
- Ressource (Resource): Tout ce qui peut avoir un identifiant unique (URI),
par exemple pages, des lieux, des gens, des chiens, des produits ...
- Description (Description):
attributs, les caractéristiques et les relations des ressources
*- Cadre (Framework): modèle, les langages et les syntaxes pour ces
descriptions
• RDF a été publié comme une recommandation du W3C en 1999.
• RDF a été initialement présenté comme un modèle de données pour les
métadonnées.
• RDF a été généralisé pour couvrir toutes formes de savoir.
1-Présentation RDF 1/3
Presenté Par Krim Rached 2014
1-Présentation RDF 2/3
Modèle de données pour décrire des ressources du web
Graphe:
les nœuds représentent des ressources
les arcs représentent des relations entre ces ressources
Les ressources sont représentées par leur URI
Presenté Par Krim Rached 2014
Le graphe est représenté par un ensemble
d'énoncés (statements)
Un énoncé est un triplet <S, P, O>, où
S est le sujet
P est le prédicat (une propriété)
O est l'objet (la valeur de la propriété pour le sujet
en question)
1-Présentation RDF 3/3
Presenté Par Krim Rached 2014
Plus précisément, les ressources sont identifiées
par des URIrefs, c’est-à-dire URI + identificateur de fragment:
http://mastersia.jimdo.com/chef (URI)
#Rached-krim(Fragment)
http://mastersia.jimdo.com/chef#Rached-krim
En HTML, ceci permet de désigner une section dans un
document, alors que pour RDF il ne s’agit que d’un nom donné à
une ressource
URIref1-Présentation RDF 3/3
Presenté Par Krim Rached 2014
1-RDF – Exemple 1/3
http://scd.mastersia.jimdo.com
http://mastersia.jimdo.com/Rached-
krim
http://mastersia.jimdo.com/Chef#Rached-
krim
Rached-krim
Local :Work At
Local :HasName
Local :HasHomePage
Local: http://mastersia.jimdo.com/Vocabulary#
Presenté Par Krim Rached 2014
1-RDF – Exemple 2/3
http://scd.mastersia.jimdo.com
http://mastersia.jimdo.com/Rached-
krim
http://mastersia.jimdo.com/Chef#Rached-
krim
Rached-krim
Local :HasName
Local :HasHomePage
Local: http://mastersia.jimdo.com/Vocabulary#
Local :Work At
Relation
Nœud Littéral
Nœud URI
Presenté Par Krim Rached 2014
1-RDF – Exemple 3/3
http://scd.mastersia.jimdo.com
http://mastersia.jimdo.com/Rached-
krim
Rached-krim
Local :Work AtLocal :HasName
Local :HasHomePage
Local: http://mastersia.jimdo.com/Vocabulary#
Un Nœud peut être vide
Presenté Par Krim Rached 2014
2-Syntaxe abstraite
Collection de triplets
Une telle collection forme un graphe RDF
Puisque les propriétés sont désignées par des URI, on peut
donc les décrire comme n’importe quelle ressource
Un nœud peut être :
Une URI
Un littéral (typé ou non)
Un nœud vide (il désigne en quelque sorte une ressource dont
on ne connait pas le nom)
Deux types de littéraux :
Simple: “Rached Krim”
Typé: “10”^^xsd:integer
Presenté Par Krim Rached 2014
Un graphe RDF est représenté par une collection de triplets de la forme
sujet prédicat objet
Si un élément est une URI, on le met entre crochets : <>
S’ il s’agit d’un nœud vide, on utilise la forme _:nom où nom est un
identificateur unique pour ce nœud Vide
Un littéral est représenté tel quel
http://mastersia.jimdo.com/ has as legal name ’’Rached-krim’’
sujetprédicat objet
3-Sérialisation N – Triples 1/2
Presenté Par Krim Rached 2014
http://mastersia.jimdo.com/Rached-krim
Local :HasHomePage
3-Sérialisation N – Triples 2/2
http://scd.mastersia.jimdo.com
http://mastersia.jimdo.com/Chef#Rached-
krim
Rached-krim
Local :Work At
Local :HasName
<http://mastersia.jimdo.com/Chefs#>< http://mastersia.jimdo.com/Vocabulary#HasHomePage><http://mastersia.jimdo.com/Rached-krim
<http://mastersia.jimdo.com/Chefs#><http://mastersia.jimdo.com/Vocabulary#Workat><http://scd.mastersia.jimdo.com >
< http://mastersia.jimdo.com/Chefs#>< http://mastersia.jimdo.com/Vocabulary#HasName> <Rached-krim >
Presenté Par Krim Rached 2014
4-Sérialisation RDF/XML 1/3
Utilise les espaces de nommage
Balise rdf:Description pour regrouper les descriptions d’une
ressource
Pour un nœud vide, on retire l'attribut about
Pour étiqueter un nœud vide, on utilise la balise rdf:nodeID
Pour représenter un littéral typé, on utilise l’attribut rdf:datatype
dans le prédicat qui relie la ressource à ce littéral
Il y a souvent plusieurs manières de représenter le
même graphe RDF
Presenté Par Krim Rached 2014
4-Sérialisation RDF/XML 2/3
<rdf:RDF xmlns:rdf =http://www.w3.org/1999/02/22-rdf-syntax-ns#
xmlns : local=" http://mastersia.jimdo.com/Vocabulary#"
<rdf:Description rdf:about="http://mastersia.jimdo.com/Chefs#Rached-Krim">
<Local:HomePage
resource="http://mastersia.jimdo.com/Rached-Krim "/>
<local:worksAt rdf:resource="http://sdc.mastersia.jimdo.com/Vocabulary#"/>
<local:hasName>Rached-Krim </local:hasName>
</rdf:Description>
Presenté Par Krim Rached 2014
<rdf:RDF xmlns:rdf =http://www.w3.org/1999/02/22-rdf-syntax-ns#
xmlns : local=" http://mastersia.jimdo.com/Vocabulary#"
<rdf:Description rdf:about="http://mastersia.jimdo.com/Chefs#Rached-Krim">
<Local:HomePage
resource="http://mastersia.jimdo.com/Rached-Krim "/>
<local:worksAt rdf:resource="http://sdc.mastersia.jimdo.com/Vocabulary#"/>
< local:age
rdf:datatype="http://www.w3.org/2001/XMLSchema#integer">23</local:age>
<local:hasName>Rached-Krim </local:hasName>
</rdf:Description>
4-Sérialisation RDF/XML 3/3
Presenté Par Krim Rached 2014
Permet de spécifier des préfixes
Permet de combiner des descriptions d’une même ressource :
On utilise ; pour grouper des triplets concernant un même sujet
On utilise , pour grouper plusieurs instances d'une propriété concernant un
même sujet
Nœud vide représenté par les crochets [ ]
Toutes les descriptions relatives à un nœud vide peuvent être placées à
l'intérieur des crochets
5-Sérialisation Turtle 1/4
Presenté Par Krim Rached 2014
@préfix local: http://mastersia.jimdo.com/Vocabulary#
@préfix Chef: http://mastersia.jimdo.com/Chef#
Chef: Rached-krim
local:hasHomePage<http://mastersia.jimdo.com/Rached-
krim>.
Chef: Rached-krim
local:hasName" Rached-krim ".
Chef: Rached-krim
local:worksAt local :scd
5-Sérialisation Turtle 2/4
Presenté Par Krim Rached 2014
@préfix local: http://mastersia.jimdo.com/Vocabulary#
@préfix Chef: http://mastersia.jimdo.com/Chef#
Chef: Rached-krim
local:hasHomePage<http://mastersia.jimdo.com/Rached-krim>.
local:worksAt < http://sdc.mastersia.jimdo.com/Vocabulary#>
local:worksAt <http://www.saoura-computer.com>
local:hasName" Rached-krim "
5-Sérialisation Turtle 3/4
Presenté Par Krim Rached 2014
http://scd.mastersia.jimdo.com
http://mastersia.jimdo.com/Rached-
krim
Rached-krim
Local :Work AtLocal :HasName
Local :HasHomePage
@préfix local: http://mastersia.jimdo.com/Vocabulary#
@préfix Chef: http://mastersia.jimdo.com/Chef#
Chef: Rached-krim
[ ]
local:hasHomePage<http://mastersia.jimdo.com/Rached-krim>.
local:worksAt < http://sdc.mastersia.jimdo.com/Vocabulary#>
local:hasName" Rached-krim "
5-Sérialisation Turtle 4/4
Presenté Par Krim Rached 2014
Pour identifier le type d’une ressource:
Utiliser le prédicat rdf:type pré-défini par RDF
Remplacer la balise rdf:Description par le type de
la ressource
À noter qu’une ressource peut avoir plusieurs types
En Turtle, on peut utiliser le prédicat a
6-Déclaration de type de ressource
Presenté Par Krim Rached 2014
<rdf: RDF xmlns:rdf =http://www.w3.org/1999/02/22-rdf-syntax-ns#
xmlns : local=" http://sdc.mastersia.jimdo.com/Vocabulary#"
<Local:ChefProjet rdf:about="http://mastersia.jimdo.com/Chef#Rached-Krim">
<Local:HomePage resource="http://mastersia.jimdo.com/Rached-Krim "/>
<local:worksAt resource="http://sdc.mastersia.jimdo.com/Vocabulary#"/>
<local:hasName>Rached-Krim </local:hasName>
</ Local:ChefProjet >
</rdf: RDF >
6-Type – Exemple - RDF/XML
Presenté Par Krim Rached 2014
Ressource qui contient d’autres ressources
Trois classes de conteneurs:
--rdf:Bag: pas d’ordre entre les membres
--rdf:Seq: membres ordonnés
--rdf:Alt: on s’attend à ce qu’un seul des éléments soit
sélectionné
Conteneur relié à un membre par la relation rdf:_n
Pas de contraintes sur la description de conteneurs
7-Conteneurs
Presenté Par Krim Rached 2014
7-Conteneurs – Exemple – RDF/XML
<rdf:Bag rdf:about=" http://mastersia.jimdo.com/ChefProjet# ">
<rdf:li rdf:resource=" http://mastersia.jimdo.com/Chef#Mehoubi-Ali "/>
<rdf:li rdf:resource=" http://mastersia.jimdo.com/Chef#Cherfi-Khaled "/>
<rdf:li rdf:resource=" http://mastersia.jimdo.com/Chef#Rached-Krim "/>
</rdf:Bag>
Presenté Par Krim Rached 2014
Listes fermées, contrairement aux conteneurs
Balise rdf:nil pour représenter la liste vide
Liste construite de manière récursive, en utilisant
les prédicats rdf: first et rdf:rest
Il excise un forme abrégée
Il n’y a pas de contraintes sur l’utilisation des balises
rdf: first et rdf:rest
8-Collections
Presenté Par Krim Rached 2014
Une ressource peut appartenir à plus d’une classe
Un type appartient à la classe rdfs:Class
RDFS permet de définir une hiérarchie de classes, grâce
au prédicat rdfs:subClassOf
9-RDF Schéma – Classes 1/2
Presenté Par Krim Rached 2014
Local:ChefProje
t
Rdf:type
Local:SouaraMembr
e
http://mastersia.jimdo.com/Chef#Rached-
krim
Rached-krim
Local :HasName
Rdf: Class
Rdf:type
Local:Person
e
Rdfs:SubClassOf
Local:ChefEqui
pe
Rdfs:SubClassOf
Rdfs:SubClassOf
9-RDF Schéma – Classes 2/2
Presenté Par Krim Rached 2014
Toutes les propriétés ont pour type la classe
rdf:Property
On peut établir des hiérarchies de propriétés, grâce au
prédicat rdfs:subPropertyOf
On peut définir le domaine et l’image d’une propriété, en
utilisant les prédicats rdfs:domain et rdfs:range,
respectivement
Les propriétés sont globales (on peut donc y
ajouter des informations n’importe où)
10-RDF Schéma – Propriétés 1/2
Presenté Par Krim Rached 2014
10-RDF Schéma – Propriétés 2/2
Chef: Rached-KrimLocal: SCD
Local :WorkAt
Local :WorkAt
Local :Persone
Local :HasActivity
Local :Organisation
Rdfs:Class
rdfs :domaine rdfs :range
rdf : type rdf : type
rdfs:subPropertyOf
Presenté Par Krim Rached 2014
Conclusion
Il existe à ce jour de nombreuses propositions de langages
destinés à constituer l’infrastructure du Web sémantique.
Elles sont stables et doivent faire l’objet d’utilisation au sein
d’applications.
Simultanément les recherches sont toujours très actives pour
étendre et raffermir ces outils.
Tank You very Much
For your Attention
Presented by Krim Rached