Qu'est-ce qu'une taxonomie ?
Une taxonomie est un objet décrivant une étiquette associée à un contenu (diffusion ou émission). Cette étiquette comprend toujours un type (thème ou tag), un intitulé (title), et une description (standFirst).
Sur l'Open API, deux types de taxonomies sont disponibles :
Les thèmes : il existe trois niveaux de thèmes (thème, sous-thème, sous-sous-thème).
Par exemple, une page de thème sur la plateforme Radio France peut être consultée à l'adresse suivante : https://www.radiofrance.fr/sciences-savoirs. On peut identifier le chemin du thème en observant la partie science-savoirs dans l'URL. Cette thématique peut comporter plusieurs sous-thèmes sous les chemins sciences-savoirs/philosophie ou encore sciences-savoirs/histoire.
astuceLes pages de thème sont reconnaissables car elles proposent généralement des sous-thèmes.
Les slashs présents dans le chemin indiquent la hiérarchie d'un thème.
Les tags : il s'agit généralement d'un mot-clé associé à un contenu. En prenant l'exemple d'une diffusion, on peut remarquer en bas de la page une liste de mots-clés cliquables, parmi lesquels figure le tag Forêt. Ce dernier redirige vers une page listant toutes les diffusions associées à ce mot-clé.
Contrairement aux thèmes, il n'existe pas de hiérarchie pour les tags.
Il existe deux ensembles de taxonomies : l'un pour les stations France Bleu et l'autre pour le reste des marques. Ces dernières sont distinguables en sélectionnant la source dans la requête GraphQL "taxonomies", comme indiqué ci-dessous.
Lister les dix premières taxonomies
{
taxonomies(source: UNIFIED, first: 10) {
edges {
cursor
node {
id
path
type
title
standFirst
}
}
}
}
Réponse de la requête
Récupérer la référence d'une taxonomie par son chemin
Exemple pour un sous thème:
{
taxonomies(source: UNIFIED, paths: ["sciences-savoirs/sciences"]) {
edges {
cursor
node {
id
path
type
title
standFirst
}
}
}
}
Réponse de la requête
Récupérer des diffusions à partir d'une ou plusieurs taxonomies
Prenons l'exemple où nous souhaitons avoir uniquement les contenus liés au thème de la politique. Nous pourrions récupérer l'identifiant du thème en effectuant une requête sur la query taxonomies
, puis exécuter la requête suivante :
{
diffusions(
station: FRANCEINTER
themes: ["f15e4e03-0f8d-4d43-abaf-e1d6a9b98ea6_0"]
) {
edges {
cursor
node {
id
title
standFirst
url
published_date
taxonomiesConnection {
edges {
node {
id
path
title
}
}
}
}
}
}
}
Réponse de la requête
Si il s'agit d'un sous-thème, veillez à remplacer l'argument theme
par subtheme
ou par subsubtheme
si il s'agit d'un thème de troisième niveau.
Example de récupération de diffusions par sous thème:
{
# sous theme: politique/democratie-et-vie-citoyenne
diffusions(
station: FRANCEINTER
subthemes: ["90a83929-c886-414e-a3b7-82b6c08908b4_0"]
) {
edges {
cursor
node {
id
title
standFirst
url
published_date
taxonomiesConnection {
edges {
node {
id
path
title
}
}
}
}
}
}
}
Réponse de la requête
Chacun des filtres est exclusif, fonctionnant selon des opérations logiques ET plutôt que des opérations logiques OU.