Triplet RDF

From Wikipedia, the free encyclopedia

Le triplet RDF est la plus petite structure de description de ressources du modèle RDF (Resource Description Framework)[1]. C’est une déclaration ou assertion sur une ressource[2]. Cette déclaration RDF est appelée triplet, car elle suit la structure : « sujet - prédicat - objet »[3].

Ainsi, la déclaration RDF Mona Lisa a pour créateur Léonard de Vinci est le triplet :

Sujet Prédicat Objet
Mona Lisa a pour créateur Léonard de Vinci


Le sujet et l'objet du triplet RDF

Le triplet RDF comprend trois éléments, sujet, prédicat, objet, conventionnellement écrits dans cet ordre[4].

Sujet → Prédicat → Objet
Schéma du triplet RDF.
  • Le sujet représente la ressource ou l'identificateur de la ressource à décrire[5]. Les ressources peuvent être quelconques, notamment des documents, des personnes, des objets physiques ou des concepts abstraits[6]. Le sujet et l'objet, dans le cas où ce sont des ressources, peuvent être identifiés par un URI ou être des nœuds anonymes.

On distingue deux sortes de littéraux : les littéraux ordinaires (chaîne de caractères non typée) et les littéraux typés pour qualifier une chaîne de caractères (couple formé d'une chaîne de caractère à une référence URI qui identifie un type de données particulier)[8]. Un littéral est typé par un URI pour exprimer la nature de la chaîne de caractère. Cet URI peut être simplifié. Par exemple, pour indiquer que la chaîne de caractère est un âge, on qualifie le littéral par l'URI abrégé xsd:integer ou http://www.w3.org/2001/XMLSchema#integer[9].

Le prédicat du triplet RDF

  • Le prédicat représente un type de propriété applicable à cette ressource. Il est lui-même une ressource [10]. Il est nécessairement identifié par un URI. Une propriété permet d’exprimer les relations entre deux ressources ou entre une ressource et un littéral[11]. On distingue les propriétés d’objet, qui expriment une relation entre deux ressources (object property) et les propriétés de types de données (datatype property) qui relient une ressource à un littéral. Dans ce cas, le triplet donne une information sur cette ressource ou en décrit ses caractéristiques[12].

URIs, préfixes et vocabulaires RDF

En RDF, toutes les ressources sont identifiées et nommées par des URIs (Universal Resource Identifier) de façon unique et pérenne.

Ainsi, les ressources des triplets « Mona Lisa a pour créateur Léonard de Vinci » et « Mona Lisa a pour lieu le Musée du Louvre » peuvent être nommées par des URIs extraits du référentiel Wikidata.

Sujet Prédicat Objet
Mona Lisa a pour créateur Léonard de Vinci
<http://www.wikidata.org/entity/Q12418> <http://www.wikidata.org/prop/direct/P170> <http://www.wikidata.org/entity/Q762>
Mona Lisa a pour lieu Musée du Louvre
<http://www.wikidata.org/entity/Q12418> <http://www.wikidata.org/entity/P276> <http://www.wikidata.org/entity/Q19675>

Les préfixes et vocabulaires RDF

La notation des URIs est simplifiée par des préfixes. Les préfixes désignent un espace de noms (espace de nommage ou namespace), c’est-à-dire un ensemble de termes se rapportant au même vocabulaire RDF (ontologies RDF, schéma RDFS, langage OWL). Ces vocabulaires RDF fournissent les URIs qui identifient les propriétés des triplets RDF et les classes (ou catégories) des ressources décrites dans les triplets RDF.

Dans le référentiel Wikidata, le préfixe <wd:> est associé au début d'URI <http://www.wikidata.org/entity/> pour nommer une ressource (sujet ou objet du triplet) et le préfixe <wdt:> est associé au début d’URI <http://www.wikidata.org/prop/direct/> pour nommer la ressource prédicat ou propriété du triplet.

Ainsi, les URIs des ressources des deux triplets RDF Mona Lisa a pour créateur Léonard de Vinci et Mona Lisa a pour lieu le Musée du Louvre sont notés de la façon simplifiée suivante :

Sujet Prédicat Objet
Mona Lisa a pour créateur Léonard de Vinci
<wd:Q12418> <wdt:P170> <wd:Q762>
Mona Lisa a pour lieu Musée du Louvre
<wd:Q12418> <wdt:P276> <wd:Q19675>

Ces deux triplets RDF ayant le même sujet, Mona Lisa, identifiée par l'URI <wd:Q12418> forment un graphe.

Des triplets sous forme d'un graphe

Fig. 1 Graphe RDF (Dublin Core Metadata Initiative).

Par convention, RDF propose de représenter les triplets sous la forme d'un graphe :

  • Un ovale ou ellipse représente une ressource (avec à l’intérieur de cet ovale l’URI de la ressource),
  • Un arc orienté (flèche) représente un prédicat (le nom du prédicat se trouve sur l’arc)
  • Un rectangle représente une valeur (précisée à l’intérieur de ce rectangle)[13].

Ainsi, un triplet RDF est un graphe orienté[14].

La figure 1 est un graphe RDF représentant la déclaration « La ressource http://example.org/123 a son titre "Learning Biology" en anglais ». Ce graphe utilise les propriétés de l'ontologie Dublin Core, selon les recommandations de la Dublin Core Metadata Initiative[15].

Fig. 2 Graphe de deux triplets RDF qui ont pour sujet Mona Lisa.

La figure 2 représente le graphe des deux triplets qui ont pour sujet commun Mona Lisa, identifiée par l'URI <wd:Q12418>. Cette ressource forme un nœud qui relie les deux triplets.

Fig.3 Graphe de trois triplets RDF avec littéraux.

La figure 3 représente les graphes de trois triplets dont l'objet de l'un est une ressource et l'objet des deux autres un littéral (chaîne de caractères). Les trois triplets sont reliés entre eux par un nœud On the Origin of Species, identifié par l'URI <wd:Q20124>, qui est le sujet des trois triplets.


Sujet Prédicat Objet
De l'origine des espèces a pour auteur Charles Darwin
<wd:Q20124> <wdt:P50> <wd:Q1035>
De l'origine des espèces a pour titre On the Origin of Species by Means of Natural Selection, or the Preservation of Favoured Races in the Struggle for Life (English)
<wd:Q20124> <wdt:P1476> "On the Origin of Species by Means of Natural Selection, or the Preservation of Favoured Races in the Struggle for Life"
De l'origine des espèces a pour date de publication 24 November 1859
<wd:Q20124> <wdt:P577> "1859-11-24"

Une même ressource peut donc être sujet, prédicat ou objet de plusieurs triplets. L’ensemble de ces triplets, reliés les uns aux autres par les URI des ressources qu’ils ont en commun, forme un graphe.

Cette notion de graphe implique que des triplets concernant une même ressource, par exemple Mona Lisa ou On the Origin of Species peuvent faire partie de graphes différents, reliés par un URI commun, <wd:Q12418> ou <wd:Q20124>.

Il est donc possible de créer des liens entre graphes isolés, représentant des jeux de données différents, à partir de référentiels communs à ces jeux de données. Ces référentiels fournissent des réservoirs d’URI, grâce auxquels il est possible de naviguer d’un graphe à l’autre, d’un jeu de données à l’autre, suivant le principe de l’hypertexte. Les URI vont être des points de contact entre ces graphes isolés et les transformer en un graphe global géant. En novembre 2007, Tim Berners-Lee utilise l'expression « Giant Global Graph » pour désigner la somme de l'ensemble des triplets disponibles sur le Web[16].

Les syntaxes de sérialisation des triplets

Le modèle de graphe est un modèle abstrait qu’il faut doter d’une syntaxe concrète, si l’on veut pouvoir le représenter en machine. La description des triplets est appelée sérialisation et les syntaxes sont aussi appelés formats ou langages.

Il y a plusieurs syntaxes de sérialisation des graphes RDF : RDF/XML, N-Triples, Turtle et N3, JSON-LD, RDFa. Ce sont tous des langages textuels car on peut les décrire par un éditeur de texte. Ils se différencient par leur lisibilité par les humains.

La première famille de syntaxes comprend N3, N-Triples et Turtle.

La syntaxe Turtle (Terse RDF Triple language), normalisée par le W3C dans le cadre des travaux RDF 1.1[17], est la plus lisible pour les humains. Ces syntaxes reposent sur un principe : un triplet correspond à une phrase qui se termine par un point .. Le sujet, le prédicat et l’objet sont séparés par des espaces et chacun d'eux peut être une URI ou un littéral.

Par convention, les URIs sont représentés entre <chevrons> ; les littéraux sont représentés entre "guillemets", éventuellement suffixés par ^^ et l'URI indiquant explicitement son type et la syntaxe permettant une interprétation de façon non ambiguë et par @ suivi d'un code de langue IETF (BCP 47).

La syntaxe Turtle permet des simplifications permettant de considérablement compresser le fichier ou en améliorer la présentation pour un humain :

  • Les blancs (espaces, tabulations, et sauts de ligne) sont facultatifs avant ou après les signes séparateurs et peuvent être librement répétés pour l'indentation, ils ne sont pas significatifs en termes de données représentées.
  • Si les triplets qui se suivent ont le même sujet, celui-ci n’est pas répété et un point virgule ; sépare l’objet du premier triplet et le prédicat du second.
  • Si les triplets ont le même sujet et le même prédicat, ceux-ci ne sont pas répétés et une virgule , sépare les objets.
  • Dans toutes les valeurs du sujet, du prédicat ou de l'objet, les URIs peuvent être abrégés au moyen de préfixes courts pouvant remplacer un URI de base commun à de nombreux URIs et tenant lieu d'espace de noms.
  • Si les URIs ainsi réduits se limitent à un préfixe suivi d'un identifiant simple, on peut ôter les chevrons qui l'encadrent.

Le fichier Turtle comprend donc généralement deux parties :

  • la première partie déclare sur une ligne les préfixes et espaces de noms utilisés pour abréger les URIs. Chacune des lignes est un triplet dont le sujet est la directive @prefix spécialement réservée, et où le prédicat est le préfixe défini (un identifiant terminé par un :) et où l'objet est l'URI de base associé à ce préfixe.
  • la deuxième partie représente les triplets RDF de données.

Exemples de triplets ayant pour sujet l'entité du référentiel Wikidata De l’origine des espèces suivant la syntaxe Turtle :

  • En première partie du fichier texte, les préfixes utilisés sont déclarés.
  • Dans la deuxième partie, l'ordre des triplets n'est pas significatif ; pour les triplets ayant tous le même sujet, celui-ci n’est pas répété, les triplets sont alors séparés par un point-virgule.
  • Les triplets 1, 6 et 7 expriment le tableau d’exemples ci-dessus et le graphe correspondant (fig.2) au sujet de De l’origine des espèces qui a pour auteur Charles Darwin. Les valeurs données comme objet des triplets 6 et 7 montrent des exemples de valeurs littérales explicitement qualifiées par un type de donnée ou par un code de langue IETF.
  • Les autres triplets relient la ressource en créant des liens entre les jeux de données qui utilisent ces référentiels aux URIs indiqués.
@prefix wd: <http://www.wikidata.org/entity/> .
@prefix wdt: <http://www.wikidata.org/prop/direct/> .
 
wd:Q20124 wdt:P50 wd:Q1035 ;
    wdtn:P214 <http://viaf.org/viaf/313683363> ;
    wdtn:P227 <https://d-nb.info/gnd/4303201-1> ;
    wdtn:P244 <https://id.loc.gov/authorities/names/n81105854> ;
    wdtn:P268 <http://data.bnf.fr/ark:/12148/cb122870840#about> ;
    wdt:P577 "1859-11-24T00:00:00Z"^^xsd:dateTime ;
    wdt:P1476 "On the Origin of Species by Means of Natural Selection, or the Preservation of Favoured Races in the Struggle for Life"@en ;
    wdtn:P269 <http://www.idref.fr/031705685/id> ;
    wdtn:P5331 <http://worldcat.org/entity/work/id/3901191602> .

La deuxième syntaxe utilisée pour sérialiser les triplets est RDF/XML.

Un document RDF/XML a obligatoirement un élément racine <rdf:RDF> qui déclare que ce document XML est un document RDF[18]. Cette racine comprend des pseudo-attributs xmlns: pour déclarer les espaces de noms pour RDF lui-même, ainsi que pour les balises de prédicats de l'ensemble de triplets et pour les contenus des objets de l'ensemble de triplets.

La balise XML principale est <rdf:description> : elle permet de décrire un ensemble de triplets dont l’URI de la ressource en sujet est représenté par la valeur de l’attribut rdf:about :

  • si l’objet du triplet est un URI, celui-ci est indiqué par l’attribut rdf:ressource et la balise d'ouverture n'ayant aucun contenu est elle-même fermée immédiatement ;
  • si l’objet du triplet est un littéral, il est indiqué dans le contenu entre la balise d'ouverture <prédicat ... > et la balise de fermeture </prédicat> et le type de donnée est qualifié par la valeur donnée à l’attribut rdf:datatype[19].

Exemples de triplets ayant pour sujet l'entité du référentiel Wikidata De l’origine des espèces suivant la syntaxe XML/RDF à partir du téléchargement du fichier texte de la page d’informations sur l’entité Q20124 pour représenter les trois triplets du tableau et du graphe de la fig. 2 et les relations avec les identifiants des autres référentiels :

<rdf:RDF
  xmlns:rdf="..."

  xmlns:wd="http://www.wikidata.org/entity/"
  xmlns:wdt="http://www.wikidata.org/prop/direct/"
>
  <rdf:Description rdf:about="http://www.wikidata.org/entity/Q20124">
    <wdt:P50 rdf:resource="http://www.wikidata.org/entity/Q1035"/>
    <wdtn:P214 rdf:resource="http://viaf.org/viaf/313683363"/>
    <wdtn:P227 rdf:resource="https://d-nb.info/gnd/4303201-1"/>
    <wdtn:P244 rdf:resource="https://id.loc.gov/authorities/names/n81105854"/>
    <wdtn:P268 rdf:resource="http://data.bnf.fr/ark:/12148/cb122870840#about"/>
    <wdt:P577 rdf:datatype="http://www.w3.org/2001/XMLSchema#dateTime">1859-11-24T00:00:00Z</wdt:P577>
    <wdt:P1476 xml:lang="en">On the Origin of Species by Means of Natural Selection, or the Preservation of Favoured Races in the Struggle for Life</wdt:P1476>
    <wdtn:P269 rdf:resource="http://www.idref.fr/031705685/id"/>
    <wdtn:P5331 rdf:resource="http://worldcat.org/entity/work/id/3901191602"/>
  </rdf:Description>
</rdf:RDF>

Deux autres syntaxes de description JSON-LD et RDFa

  • Syntaxe JSON-LD (JavaScript Object Notation - Linked Data) [20] est un format orienté machine très difficilement lisible par les humains, mais adapté au traitement informatique.
  • Syntaxe RDFa pour décrire directement des triplets à l’intérieur d’une page HTML.

Triplets RDF et données des bibliothèques

Notes et références

Voir aussi

Related Articles

Wikiwand AI