langage rdf/rdfs

31
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

Upload: rached-krim

Post on 07-Jul-2015

255 views

Category:

Education


0 download

TRANSCRIPT

Page 1: Langage RDF/RDFs

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

Page 2: Langage RDF/RDFs

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

Page 3: Langage RDF/RDFs

Presenté Par Krim Rached 2014

1-Présentation RDF 1/3

Page 4: Langage RDF/RDFs

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

Page 5: Langage RDF/RDFs

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

Page 6: Langage RDF/RDFs

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

Page 7: Langage RDF/RDFs

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

Page 8: Langage RDF/RDFs

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#

Page 9: Langage RDF/RDFs

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

Page 10: Langage RDF/RDFs

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

Page 11: Langage RDF/RDFs

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

Page 12: Langage RDF/RDFs

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

Page 13: Langage RDF/RDFs

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 >

Page 14: Langage RDF/RDFs

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

Page 15: Langage RDF/RDFs

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>

Page 16: Langage RDF/RDFs

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

Page 17: Langage RDF/RDFs

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

Page 18: Langage RDF/RDFs

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

Page 19: Langage RDF/RDFs

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

Page 20: Langage RDF/RDFs

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

Page 21: Langage RDF/RDFs

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

Page 22: Langage RDF/RDFs

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

Page 23: Langage RDF/RDFs

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

Page 24: Langage RDF/RDFs

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>

Page 25: Langage RDF/RDFs

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

Page 26: Langage RDF/RDFs

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

Page 27: Langage RDF/RDFs

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

Page 28: Langage RDF/RDFs

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

Page 29: Langage RDF/RDFs

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

Page 30: Langage RDF/RDFs

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.