RDFAoût, votre feuilleton de l'été : pendant un mois, 2 billets par semaine sur le RDFa, à l'attention des lecteurs connaissant déjà le HTML.
- Épisode 1 : Au commencement était l'URI
- Épisode 2 : Des triplets partout
- Épisode 3 : Soyez brefs
- Épisode 4 : De vieilles connaissances (1)
- Épisode 5 : De vieilles connaissances (2)
- Épisode 6 : Organiser la connaissance
- Épisode 7 : Contenants, contenus et auteurs
- Épisode 8 : Succès et limites
Notions abordées dans ce billet : Dublin Core, métadonnées... un billet plutôt court !
Des données sur les données
Il y a toujours eu un peu d'incompréhension à l'évocation de RDF et des métadonnées, car RDF a d'abord été créé comme un modèle de données spécifique aux métadonnées, avant de rapidement devenir un modèle de données général, à vocation presque universelle.
13 ans plus tard, cette confusion n'a pas disparu.
Les métadonnées sont les données à propos des données. C'est facile à comprendre. Prenez un document texte : les données sont le contenu textuel lui-même avec les titres, les paragraphes, les listes, les tableaux... les métadonnées sont son titre, son auteur, sa date de création...
Dans le vaste monde RDF, il existe plusieurs vocabulaires pour les métadonnées dont les plus connus sont issus du projet Dublin Core.
Souvenirs
L'usage de Dublin Core est très répandu, surtout en XML. Vous l'avez même peut-être déjà vu dans du code HTML, sous cette forme désormais obsolète (mais déjà basée sur un espace de nom et un préfixe, l'ancêtre du RDFa en quelques sortes) :
<link href="http://purl.org/dc/terms/" rel="schema.DC" /> <link href="http://www.example.org/disney" rel="DC.rights" />
Aujourd'hui, on écrirait ceci en RDFa :
<head xmlns:dc="http://purl.org/dc/terms/"> <link rel="dc:rights" href="http://www.example.org/disney"/> </head>
Ces deux exemples de code produisent le même triplet suivant :
Sujet | Prédicat | Objet |
---|---|---|
http://www.example.org/mickey | http://purl.org/dc/terms/rights | http://www.example.org/disney |
Où la propriété http://purl.org/dc/terms/rights
lie une ressource avec celle qui en détient les droits d'auteur ou d'exploitation.
Un vocabulaire double
- URI :
http://purl.org/dc/elements/1.1/
- Préfixe usuel : dc
- 15 propriétés / 0 classes
- Note : le vocabulaire historique
- URI :
http://purl.org/dc/terms/
- Préfixes usuels : dc, dct, dcterms
- 55 propriétés / 22 classes
- Note : le vocabulaire étendu
En observant du code XML et/ou RDF utilisant Dublin Core, vous pouvez observer l'usage de deux URI différents pour Dublin Core. Il existe donc deux vocabulaires distincts :
- Le premier, DC Elements Set, est apparu en 1998, quelques mois avant le RDF. Il ne comporte que des propriétés et ne permet de lier les ressources qu'il décrit qu'avec des valeurs littérales. Son usage est toujours très répandu même si ses limitations l'ont rendu obsolète. Il contient les propriétés les plus courantes : creator, date, description, format, language, subject, title...
- Le second, DC Terms, a été formalisé en 2007 et étend le premier avec des classes, de nombreuses nouvelles propriétés et une révision des propriétés historiques, qui acceptent désormais aussi des ressources comme objet des triplets. C'est le vocabulaire que vous devez utiliser dans vos projets.
Par exemple, dc:creator
peut désormais avoir comme objet une ressource de type foaf:Agent
, et dc:subject
une ressource de type skos:Concept
.
FOAF ? SKOS ? Nous verrons ces nouveaux vocabulaires dans les prochains épisodes, en commençant par SKOS.