Logo BnF

API et jeux de données

fr
  • Accueil
    • Catalogue général de la BnF
    • Gallica
    • data.bnf.fr
    • Dépôt légal du Web
    • Catalogue collectif de France (CCFr)
    • Mandragore
    • Bibliographique des éditions parisiennes du XVIe siècle
    • Reliures
    • Données statistiques
    • Voir toutes les sources
    • Expérimentations
    • Projets de recherche
    • Tutoriels & outils
  • Services
  1. Vous êtes ici : Accueil
  2. Explorer Les Données Des Collections Musicales
JSON XML IIIF SRU Sparql Intermarc Musique Hackathon

Explorer les données des collections musicales


La BnF propose pour les collections musicales des données particulièrement riches et qui offrent des possibilités d'enrichissement auprès de sources extérieures de données.

Partitions

Je cherche une partition de musique baroque pour clavier et violon.

Je récupère dans le SRU catalogue général les notices de partitions publiées entre 1600 et 1750.

Au format Intermarc, le critère pour les partitions est bib.doctype all "c" et les critères de dates : bib.publicationdate >= "1600" and bib.publicationdate <= "1750"

http://catalogue.bnf.fr/api/SRU?version=1.2&operation=searchRetrieve&query=bib.doctype%20all%20%22c%22%20and%20bib.publicationdate%20%3E=%20%221600%22%20and%20bib.publicationdate%20%3C=%20%221750%22&recordSchema=intermarcxchange&maximumRecords=200&startRecord=1

La distribution instrumentale est indiquée dans la balise, de manière codée sur deux lettres selon le référentiel Distribution musicale.

Exemple pour la notice ark:/12148/cb44251427s :

ka01

sa01

Le code=a signifie qu'il s'agit d'un soliste, "ka" signifie piano, "sa" signifie violon, "01" donne le nombre de solistes. Les identifiants ARK de ces notices sont contenus dans les balises .

En ajoutant le nom de domaine https://data.bnf.fr aux identifiants ARK des notices qui possèdent cette distribution musicale, je récupère le lien vers l'exemplaire numérique Gallica par le SPARQL endpoint de data.bnf.fr. Pour les partitions qui n'ont pas d'exemplaires numérisés, je récupère les alignements avec la Bibliothèque musicale Petrucci.

PREFIX schemaorg: <http://schema.org/> 
PREFIX rdarelationships: <http://rdvocab.info/RDARelationshipsWEMI/> 
SELECT ?gallica ?imslp WHERE { 
{ [] rdarelationships:electronicReproduction ?gallica. } 
UNION 
{ FILTER NOT EXISTS 
{[] rdarelationships:electronicReproduction ?gallica.} 
[] rdarelationships:workManifested ?oeuvre. ?oeuvre schemaorg:sameAs ?imslp. 
FILTER CONTAINS (str(?imslp), "imslp.org"). }
} 

Réponse en json pour l'exemple ark:/12148/cb44251427s (ne pas oublier de décocher l'option Strict checking of void variables)

Avec les identifiants ARK des documents numérisés, je récupère les documents en noir et blanc, grâce au protocole IIIF :

https://gallica.bnf.fr/iiif/ark:/12148/btv1b10520210t/f1/full/750,1000/0/bitonal.png

Spectacles

Je cherche les articles de presse qui parlent des opéras créés au XIXe siècle et décrits dans le catalogue.

Je récupère les notices de spectacles dans le SRU (attention à bien préciser "&recordSchema=intermarcXchange" dans la requête) :

http://catalogue.bnf.fr/api/SRU?version=1.2&operation=searchRetrieve&query=bib.doctype%20adj%20%22v%22%20AND%20bib.publicationdate%20%3E%20%221800%22%20and%20bib.publicationdate%20%3C%20%221900%22%20&recordSchema=intermarcXchange

Le type de spectacle est codé dans la balise suivante : v1 oz

En quatrième position, la lettre "v" signifie qu'il s'agit de théâtre musical (opéra, opérette...).

Dans les notices concernées, je peux récupèrer le titre du spectacle dans la balise //datafield[@tag='245']/subfield[@code='a'] et le nom des contributeurs dans les balises //datafield[@tag='700']/subfield[@code='a'].

Exemple pour l'ark/12148/cb414927597 :

Fidélio Carvalho

Je peux également récupérer la date de la représentation, dans la balise //datafield[@tag='265']/subfield[@code='d'] 18600505

Une fois le contenu de ces balises récupéré, je peux interroger le mode plein texte de Gallica avec ces chaînes de caractères en le croisant avec le critère de date (qui s'appuie sur la date du fascicule) et le critère de type de document :

https://gallica.bnf.fr/SRU?operation=searchRetrieve&exactSearch=false&collapsing=true&version=1.2&query=(gallica%20any%20%22fidelio%22)%20and%20(gallica%20any%20%22carvahlo%22%20or%20gallica%20any%20%22treitschke%22)%20and%20(gallicapublication_date%3E=%221860%22%20and%20dc.type%20=%20any%20%22fascicule%22%20and%20(ocr.quality)%20all%20%22Texte%20disponible%22)

J'élimine les URL contenus dans les balises qui portent le suffixe "/date" après l'identifiant ARK.

Autre référentiels utiles pour la musique

  • Le référentiel des genres musicaux est présent dans les notices d'autorités et bibliographiques interrogeables par le protocole SRU et a été traduit en RDF pour les entités oeuvres dans data.bnf.fr
  • Le référentiel des codes fonctions qui indiquent un type de relation entre une personne ou une collectivité et une ressource bibliographique est disponible dans les notices bibliographiques interrogeables par le protocole SRU et en RDF dans data.bnf.fr
  • Les référentiels propres aux ressources audiovisuelles

Aide


Intermarc Format bibliographique

Le format INTERMARC est le format de travail de la Bibliothèque nationale de France. C'est dans ce format que sont stockées, gérées et créées les données bibliographiques et d’autorité disponibles dans son catalogue.

Documentation du format INTERMARC de diffusion des métadonnées descriptives de la BnF :

  • Notices d'autorité
  • Notices bibliographiques
Fiche Technique
format

JSON XML

Licence

Licence ouverte de l’état

Technologies

IIIF SRU Sparql Intermarc

Sujets

Musique Hackathon

Contact
coordination-bibliographique@bnf.fr
Partage
twitter facebook Linkedin
  • © 2020 BnF
  • A propos
  • Conditions d'utilisation
  • Mentions légales
  • Politique de confidentialité
  • RSS
  • Écrire à la BnF
  • Accessibilité (non conforme)
  • DCAT
twitter facebook instagram youtube