Comprendre le modèle de données de data.bnf.fr

Sommaire

Évolutions début 2017

Différentiel entre les données en RDF des pages et les données en RDF des dumps

L'équipe de data.bnf.fr travaille sur la régularité du rechargement des données. Les rechargements de données successifs ont entraîné un différentiel entre :

  • les données en RDF que l'on peut obtenir page à page par export ou par négociation de contenus,
  • les données en RDF dans les dumps et la base où effectuer les requêtes SPARQL.

Modification des suffixes des URI

Actuellement, les URI portent un suffixe différent selon le type de ressource décrite : #foaf:Person pour une personne, #spatialThing pour un lieu, foaf:Organization pour une organisation, #frbr:Work pour une oeuvre. Les URI des entités ne sont plus différenciées en fonction de leur type mais portent un suffixe #about (au lieu de #foaf:Person, #foaf:Organization, #spatialThing, #frbr:Work)

Les informations de la manifestation (titre, ISBN, nombre de pages, etc.) sont portées par une URI sans suffixe. Les métadonnées de la notice elle-même (date de création de la notice, date de dernière modification) sont portées par l'URI avec le même ark mais avec un suffixe #record. Le modèle de données sera harmonisé : l'URI avec un suffixe #about est destinée à désigner l'entité de type frbr-rda:Manifestation, sur le modèle des autres entités. L'URI avec un suffixe#about est déjà liée à l'URI de la manifestation par une relation d'équivalence owl:sameAs. Dans les prochaines évolutions, cette répartition va changer :

  • les informations sur la manifestation seront rattachées à une URI avec un suffixe #about
  • les informations sur la notice elle-même seront rattachées à une URI non suffixée

Les notices d'expression n'existent pas pour l'instant dans le catalogue, l'entité de type skos:Concept n'existe donc pas non plus pour les expressions. Seule existe une entité de type frbr-rda:Expression, qualifiée par le suffixe #Expression à la fin de l'URI non suffixée de la manifestation correspondante.

Utilisation des URI dans le modèle de données de data.bnf.fr

Pérennité des requêtes

La commande DEFINE input:same-as "yes" placée en début de requête permet de garantir la pérennité des requêtes déjà formulées. Les entités liées par des relations d'équivalence owl:sameAs sont alors considérées comme identiques dans la base : le moteur de requête déduit que toutes les propriétés de l'une des ressources s'appliquent également à l'autre.

  • Récupérer les URI des oeuvres et expressions d'un même auteur (Georges Delerue) à partir du permalien sur sa page :

DEFINE input:same-as "yes"
PREFIX dcterms: <http://purl.org/dc/terms/>
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
SELECT ?oeuvre ?expression
WHERE {<http://data.bnf.fr/ark:/12148/cb138931135> foaf:focus ?uri_auteur.
?oeuvre dcterms:creator ?uri_auteur.
?expression dcterms:contributor ?uri_auteur.}
Résultats de la requête

  • Récupérer la latitude et la longitude d'un lieu en ajoutant #about au permalien sur la page de lieu :

DEFINE input:same-as "yes"
PREFIX geo: <http://www.w3.org/2003/01/geo/wgs84_pos#>
SELECT ?latitude_longitude
WHERE {<http://data.bnf.fr/ark:/12148/cb15320577r#about> geo:lat_long ?latitude_longitude.}
Résultats de la requête

Schéma simple et complet

Les deux schémas ci-dessous présentent l'organisation générale des données.

Graphe Victor Hugo, auteur des Contemplations :

Graphe Victor Hugo, auteur des Contemplations

Graphe Charles Baudelaire, préfacier d’une édition du Scarabée d’or d’Edgar Poe :

Graphe Charles Baudelaire, préfacier d'une édition du Scarabée d'or d'Edgar Poe

Consulter le schéma complet du modèle de donnée

Schéma complet du modèle de donnée

Mécanique FRBR et concepts œuvres, auteurs et thèmes

Modèle FRBR

Le modèle de données de data.bnf.fr expérimente et adapte le modèle le modèle FRBR (fonctionnalités requises pour les notices bibliographiques) élaboré par la fédération internationale des associations et institutions de bibliothèques, l’IFLA. Data.bnf.fr s’inscrit donc dans les évolutions récentes en matière de description bibliographique.
Ce modèle comprend trois groupes d'entités liées par des relations : les informations sur les documents, les personnes physiques ou morales, et les thèmes.

Entités des trois groupes du modèle FRBR

Source : Bénézet Joly, http://slideplayer.fr/slide/3213771/.

  • Les pages « œuvres »

Le premier groupe du modèle FRBR décrit les différents aspects d’une production intellectuelle ou artistique, à travers quatre niveaux : l’œuvre, l’expression, la manifestation et l’item.

Le niveau de l'œuvre est celui de la création intellectuelle ou artistique, par exemple Le colonel Chabert d'Honoré de Balzac. Les unités documentaires « œuvres » sont créées à partir des notices d'autorité correspondantes de la BnF, présentes dans le Catalogue général de la BnF.

Le niveau de l’expression regroupe les différentes versions d’une seule œuvre telles que le texte original, une traduction, une adaptation ou encore une version abrégée. Les expressions ne sont pas visibles dans les pages HTML de data.bnf.fr, mais sont bien présentes dans le RDF correspondant.

Le niveau de la manifestation est celui de la matérialisation d'une expression, par exemple une édition des Misérables comme « Nouvelle impression illustrée. 1879-1882. Paris. E. Hugues ». Les manifestations d’une œuvre sont listées dans l’unité documentaire « œuvre » et regroupées dans la section « Vie et éditions de l’œuvre ».
Ce niveau correspond à la notice bibliographique dans le Catalogue général de la BnF ou, dans la base BnF archives et manuscrits, à un niveau de description identifié par une cote.

Le niveau de l'item est celui de l'exemplaire. Il est accessible par le lien vers la notice dans le Catalogue général de la BnF ou dans BnF archives et manuscrits, ou vers l'exemplaire numérisé dans la Bibliothèque numérique Gallica.

Notons que des relations de tout à partie peuvent exister entre :

o une œuvre et une autre œuvre.
Par exemple, Le Père Goriot, d'Honoré de Balzac, est contenu dans Les Scènes de la vie privée du même auteur, et tous deux ont le statut d'œuvre et sont dotés d’une page data.bnf fr.

o une manifestation et une autre manifestation.
Par exemple, une édition particulière du Père Goriot est contenue dans la manifestation Etudes de mœurs, qui est une édition regroupant plusieurs textes de Balzac.

  • Les pages « auteurs »

Une personne peut être auteur d'une œuvre (un lien existe alors entre la page « auteur » et la page « œuvre » correspondante) ou contributeur d'une expression (préfacier, traducteur, librettiste...). Cependant, le niveau de l'expression n’étant pas distinct de celui de la manifestation dans les pages HTML de data.bnf.fr. Les différents types de contribution par une personne sur une œuvre font l'objet d'un référentiel dans le format Intermarc adopté par la BnF ; ces référentiels enrichissent le RDF des pages.

Dans les données RDF, la relation entre un auteur et une ressource sera exprimée au niveau de l’œuvre si la personne est auteur de l’œuvre (auteur du texte original, compositeur, réalisateur) ; soit au niveau de l’expression si elle a produit une traduction, une interprétation (en musique), etc. La notion d’auteur exprimée au niveau de l’œuvre sera de toute façon répétée au niveau de l’expression.

  • Les pages « thèmes »

Parmi les données exposées et récupérables, se trouvent les notices de sujets du thésaurus RAMEAU (Répertoire d'autorité-matière encyclopédique et alphabétique unifié) de la BnF. Elles ont été converties dans le langage RDF SKOS (Simple Knowledge Organisation), dans le cadre du projet européen TELplus . Ce référentiel est désormais maintenu à jour sur data.bnf.fr avec la base de données totale et actualisée de la BnF.

Les documents ayant pour sujet un concept RAMEAU sont listés dans la page « Thème » correspondante.

De plus, le site comprend des pages regroupant des études (œuvres et manifestations) au sujet d'une œuvre ou d'un auteur. Elles ne sont pas indexées par les moteurs de recherche et ne sont accessibles que depuis les pages « œuvres » ou « auteurs » correspondantes.
Ainsi, sur la page « Napoléon », on trouvera un lien vers une page regroupant les documents portant sur Napoléon, tels que Vie de Napoléon Buonaparte, 1827.

  • Les pages « dates » et les pages « lieux »

Les pages « dates » permettent de couvrir une période temporelle, comme une année (par exemple, la page de l’année 1789).
Ces pages rassemblent :

o les thèmes liés à cette période temporelle,

o les auteurs nés ou morts à la date en question,

o les organisations créées ou dont l’activité a cessé,

o les œuvres crées ou terminés, les spectacles représentés et les documents publiés pendant cette période.

Ces pages n’ont pas d’équivalence dans le catalogue.

Les pages « lieux » rassemblent les documents cartographiques au sujet d’un lieu.
Elles permettent également de retrouver :

o les auteurs qui y sont nés ou morts,

o les organisations qui y ont été créées,

o les périodiques ou documents qui y ont été publiés, les spectacles qui y ont été représentés, les enregistrements qui y ont été faits, ainsi que les batailles et traités qui y ont été signés.

Elles sont liées aux pages « thèmes » correspondantes qui rassemblent les documents au sujet de ce lieu.

Alignements et regroupements par œuvre (« clustering »)

Dans les pages « auteurs » et « œuvres », les manifestations d'un même auteur sont regroupées autour des œuvres par le lien à une notice d'autorité Titre Conventionnel (TIC), exprimé dans les notices bibliographiques d’origine .

Cependant, certaines manifestations non reliées restent orphelines. Afin d’améliorer la FRBRisation des données et par conséquent l’ergonomie de consultation pour les utilisateurs, il importe de réaliser des alignements de ces manifestations orphelines, c’est-à-dire des rapprochements automatiques de ces manifestations vers les œuvres correspondantes.

Exemples :
Notice bibliographique de la BnF avec un lien à la notice autorité auteur « Jean de la Fontaine » et un lien vers la notice d’autorité titre « Les Fables ».
Notice bibliographique de la BnF sans lien vers la notice d’autorité titre « La cigale et la fourmi » mais avec un lien vers la notice autorité auteur La Fontaine.

C’est pourquoi un alignement simple est d’ores et déjà mis en œuvre dans data.bnf.fr. Lorsqu’une manifestation est expressément liée, dans la notice bibliographique d’origine, à la notice d’autorité de l’auteur et que la chaîne de caractères du titre correspond exactement à celle de l’œuvre, la manifestation est automatiquement rattachée à l’œuvre.

Toutefois, à l’issue de cet alignement simple, de nombreuses manifestations restent encore orphelines. A terme, deux solutions sont possibles :

  • une solution d’alignement : les manifestions sont rattachées à une œuvre, pour laquelle il existe une unité documentaire. Il s'agit des manifestations qui n'avaient pas de lien avec les notices autorités du catalogue : notices bibliographiques non liées issues du Catalogue général, notices issues du catalogue BnF archives et manuscrits.
    Nous utilisons un algorithme d'alignement simple et avancé (mot commençant par, contient les mots exactement, contient les mots distance X, distance de Levensthein, algorithme de prédiction) pour définir si les chaînes de caractères de deux titres d’éditions différentes correspondent à une même œuvre. Le lien vers la notice autorité personne, dans la notice bibliographique, reste déterminant pour l'alignement des œuvres.
  • le regroupement : s'il n'existe pas d'autorité œuvre créée, certaines manifestations sont regroupées autour d'une nouvelle unité documentaire.

Données embarquées: schema.org et Open Graph Protocol

Les pages « auteurs », « œuvres » et « thèmes » sont ouvertes sur le Web, et accessibles directement par les internautes depuis les moteurs de recherche.
C'est pourquoi, outre les méthodes traditionnelles d'indexation de la page d'accueil, nous avons choisi d'embarquer deux types de données pour structurer les pages « auteurs », « œuvres » et « thèmes » :

  • Schema.org , qui fournit un vocabulaire pour ajouter de l'information au contenu HTML avec un format de microdonnées, favorisant le référencement par les grands moteurs de recherche.

Nous avons utilisé les éléments suivants, s'appliquant à toute la partie « body » du html :

itemtype=http://schema.org/Person
itemprop="description" itemprop="birthdate" itemprop="deathdate" itemprop="nationality" itemprop="memberOf"

itemtype=http://schema.org/Book
itemprop="description" itemprop="inLanguage" itemprop="datePublished" itemprop="genre"

itemtype= http://schema.org/Organization
itemprop="description" itemprop="image" itemprop="name" itemprop="url" itemprop="members" itemprop="founding date" itemprop="founders"

Avec, pour les groupes, des sous-classes d'organisation :
itemscope itemtype= http://schema.org/PerformingGroup itemscope itemtype= http://schema.org/DanceGroup itemscope itemtype= http://schema.org/TheaterGroup itemscope itemtype= http://schema.org/MusicGroup

  • Opengraph Protocol (OG) qui permet aux pages d'être représentées dans les réseaux sociaux :

C'est un vocabulaire très simple, mis en place pour encoder en RDFa quelques métadonnées qui seront récupérées lorsque l'utilisateur ajoutera la ressource à son profil Facebook. Dans le header de la page HTML, les métadonnées suivantes sont intégrées grâce à des balises META :

og: title (titre de la page)
og: description (description du contenu de la page)
og: type (type de ressource décrite : auteur et livre)
og: url (URL de la page)
og: image (URL de l’image illustrant la page)
og: author (pour les pages « Œuvres », le nom de l’auteur)

Vocabulaires employés

La réutilisation de vocabulaires existants a été privilégiée pour favoriser l'interopérabilité, en particulier :

rdf

http://www.w3.org/1999/02/22-rdf-syntax-ns

rdfs

http://www.w3.org/2000/01/rdf-schema

skos

http://www.w3.org/2004/02/skos/core

dcterms

http://purl.org/dc/terms

foaf

http://xmlns.com/foaf/0.1/

RDAgroup2elements

http://rdvocab.info/uri/schema/FRBRentitiesRDA

rdvocab

http://RDVocab.info/Elements

Néanmoins, certaines propriétés et classes ne peuvent être exprimées que par une ontologie propre à la BnF : bnf-onto. Pour publier ses ontologies, la BnF a choisi un espace de nommage homogène de forme http://data.bnf.fr/ontology.

Présentation de l’ontologie bnf-onto

L’ontologie bnf-onto est déclarée à l’adresse suivante : http://data.bnf.fr/ontology/bnf-onto/.
Liste des propriétés :

Libellé de la propriété

Définition

URI

cote

Cote d’un document d’archives : numéro unique identifiant l’exemplaire matériel conservé dans les collections

http://data.bnf.fr/ontology/bnf-onto/cote

EAN

Numéro d’identification EAN (european article numbering), code barre

http://data.bnf.fr/ontology/bnf-onto/EAN

expositionVirtuelle

URL d’une exposition virtuelle de la BnF

http://data.bnf.fr/ontology/bnf-onto/expositionVirtuelle

firstYear

Première date (année uniquement) d'une entité : année de naissance d'une personne, année de création d'une organisation, année de première publication d'une œuvre

http://data.bnf.fr/ontology/bnf-onto/firstYear

FRBNF

Numéro de notice utilisé à la BnF. Il sert de base à la construction de l'identifiant ARK.

http://data.bnf.fr/ontology/bnf-onto/FRBNF

isbn

Utilisé pour déclarer le numéro international d’identification d’un libre (International standard book number)

http://data.bnf.fr/ontology/bnf-onto/isbn

ISMN

Numéro ISMN (International standard music number) utilisé pour la musique imprimé

http://data.bnf.fr/ontology/bnf-onto/ismn

ouvrageJeunesse

Edition d’un ouvrage destinée à un public jeune. Cette propriété permet de trier les éditions, qui ont souvent un contenu différent malgré un titre identique.

http://data.bnf.fr/ontology/bnf-onto/ouvrageJeunesse

code_role

Code de fonction du rôle de la personne/organisation en relation avec l’ouvrage décrit :
S’emploie pour les rôles de contributions, avec une valeur littérale (chiffre), selon le référentiel des codes de fonctions des auteurs et contributeurs en Intermarc (BnF).
S’emploie en complément d’une balise marcrel avec le référentiel des codes de fonctions de la bibliothèque du Congrès.

http://data.bnf.fr/ontology/bnf-onto/code_role

role

Nom pour désigner le rôle des contributeurs.

http://data.bnf.fr/ontology/bnf-onto/role

translation

Lien à une édition traduite du périodique

http://data.bnf.fr/ontology/bnf-onto/translation

Vocabulaires BnF

Les référentiels spécifiques de la BnF sont déclarés à l’adresse suivante :http://data.bnf.fr/vocabulary/.
Liste des vocabulaires :

o Liste des codes de pays : http://data.bnf.fr/vocabulary/countrycodes

o Liste des codes de rôles : http://data.bnf.fr/vocabulary/roles

o Liste des types de thèmes RAMEAU : http://data.bnf.fr/vocabulary/scheme

Mapping entre le format InterMarc et le RDF fourni

Personnes

Correspondance RDF

Zones Intermarc (notices PEP)

forme

skos:prefLabel @in_lang

100, 400

autre forme

skos:altLabel, foaf:familyName, foaf:givenName, dc:date,


nationalité

foaf:nationality

008 position 12-13

langue

RDAgroup2elements:languageOfThePerson

008 position 14-16

sexe

foaf:gender

008 position 17

naissance

RDAgroup2elements:dateOfBirth

008 position 27-36

mort

RDAgroup2elements:dateOfDeath

008 position 37-46

lieu de naissance

RDAgroup2elements:placeOfBirth

603 $a

lieu de mort

RDAgroup2elements:placeOfDeath

603 $b

début d'activité

RDAgroup2elements:periodOfActivityOfThePerson

008 position 47-51

fin d'activité

RDAgroup2elements:periodOfActivityOfThePerson

008 position 52-55

sources (note sur les sources de la notice)

skos:editorialNote

610

résumé, note

RDAgroup2elements:biographicalInformation

600

domaines

RDAgroup2elements:fieldOfActivityOfThePerson

624

liens vers la ressource DBpedia

owl:sameAs


fonction de contributeur

marcrel:[code de fontion de la bibliothèque du Congrès]


vignette Gallica représentant l'auteur

foaf:depiction


Organisation

Correspondance RDF

Zones Intermarc (notices ORG)

forme

skos:prefLabel @in_lang

100, 400

nationalité

foaf:nationality

008 position 12-13

langue

RDAgroup2elements:languageOfThePerson

008 position 14-16

date de début

RDAgroup2Elements:dateAssociatedWithTheCorporateBody

008 pos 27-36

date de fin

RDAgroup2Elements:dateAssociatedWithTheCorporateBody

008 pos 37-46

début activité

dc:date

008 pos 47-51

fin activité

RDAgroup2elements:periodOfActivityOfTheCorporateBody

008 pos 52-55

site internet

foaf:homepage

606

sources

skos:editorialNote

610

résumé, note

RDAgroup2elements:corporateHistory

600

domaine

RDAgroup2elements:fieldOfActivityOfTheCorporateBody

624

liens vers la ressource Dbpedia

owl:sameAs


Thèmes RAMEAU

Correspondance RDF

Zones Intermarc (notices RAM)

titre original

skos:prefLabel

16X, 46X

autre forme

skos:altLabel

16X, 46X

origine (thésaurus Rameau)

skos:inScheme


source (note sur les sources de la notice)

skos:editorialNote

610, 612

note (note descriptive)

skos:scopeNote

600

termes plus larges

skos:broader

3XX, 5XX

termes plus précis

skos:narrower

3XX, 5XX

termes reliés

skos:related

3XX, 5XX

alignement thésaurus extérieurs

skos:closematch

620

alignement thésaurus extérieurs

skos:exactmatch


Œuvre

Correspondance RDF

Zones Intermarc (notices TIC, TUT, TUM)

forme (titre principal)

dc:title, skos:prefLabel, rdfs:label @in_lang

145, 415

autre forme

skos:altLabel @in_lang


langue

dc:language

008 position 14-16

date oeuvre

dc:date

008 position 27-36

source

skos:editorialNote

610

résumé, note

dc:description

600

domaine

dc:subject

624

lien vers la notice d'autorité du catalogue

owl:sameAs


contenu dans

dc:isPartOf


auteur principal

dc:creator

100, 101, 110

auteur secondaire

dc:contributor, bnf-onto:[coderole]

711, 702, 700, 701, 710, 712

auteur code libre

dc:contributor, bnf-onto:[coderole]

code libre, 321, 322

vignette Gallica de l'œuvre numérisée

foaf:depiction


Manifestation

Correspondance RDF

Zones Intermarc (notice bibliographiques)

manifestation de l'œuvre

rdarelationships:workManifested


titre

dc:title

245

contient

dc:hasPart


édition (date d'édition)

dc:date

260

édition (lieu d'édition)

rdvocab:placeOfPublication

250

édition (nom de l'éditeur)

rdvocab:publishersName

260

description matérielle

dc:description


ISBN

bnf-onto:ISBN

20

type de document

dc:type


langue

dc:language

41

adaptation jeunesse

bnf-onto:ouvrageJeunesse


Expression

Correspondance RDF


rôle de contribution

marcrel:[code de fonction de la Bibliothèque du Congrès]


rôle de contribution (chiffre)

bnf-onto:coderole

sous-zone $4

rôle de contribution (valeur littérale)

bnf-onto:role


type de document

dc:type