Un grand nombre de films sortent chaque année, inspirés de la vie de femmes ou de romans écrits par des femmes. Nous avions par exemple recensé les biopics d’autrices. Ces films contribuent à mettre en valeur le matrimoine et, à ce titre, le lien entre ces films et leur sujet d’inspiration gagne à être connu du plus grand nombre.

Mais saviez-vous que ces informations sont déjà accessibles ?
Grâce à la fondation Wikimedia, les données sur lesquelles sont basées une partie des informations de Wikipédia sont disponibles de manière libre et gratuite, grâce à Wikidata !

logo Wikidata
Wikidata est une base de données qui recense des informations sur tous les sujets.
Il s’agit par exemple d’informations biographiques de Julie-Victoire Daubié, Marguerite Audoux, Renée Dunan ou encore Anaïs Ségalas.
Mais cette base de données ne se limite pas aux personnalités historiques, puisqu’elle donne aussi accès aux information sur des films, comme Violette, un film à propos de l’écrivaine Violette Leduc sorti en 2013.
Ces films nous intéressent car c’est un moyen de mieux faire connaître des personnalités féminines.

Notez que Wikidata peut aussi fournir des informations utilisées dans Wikipédia dans le cadre résumé apparaissant par défaut en haut à droite de chaque page Wikipédia.

Pour trouver les films inspirés par des femmes sur Wikidata, il faut effectuer une recherche sur des critères spécifiques. Cet méthode de recherche est très puissante, mais elle nécessite l’usage d’un langage appelé SPARQL qui peut être complexe. Pour vous éviter une recherche fastidieuse, nous donnons quelques exemples de requêtes qui vont nous intéresser, accompagnées de captures d’écran.

On verra dans un second temps comment compléter les résultats renvoyés par Wikidata.

Faire des recherches avec Wikidata

Si vous souhaitez directement améliorer le contenu de Wikidata sans voir comment recherche dans Wikidata, passez directement à l’article  « Et si on améliorait la visibilité des autrices dans les films ? »

Commençons par une recherche simple : on veut trouver tous les films de langue française connus de Wikidata. On va donc créer une requête pour rendre cette recherche compréhensible par Wikidata, et expliquer comment la créer.

Pour rédiger une requête, Wikidata propose une page dédiée. Nous allons décomposer notre requête étape par étape :

Recherche de tous les films

Notre première requête sera simple, elle consiste à chercher tous les films connus de Wikidata. La requête sera :

SELECT ?X WHERE 
{
  ?X wdt:P31 wd:Q11424.
}

Littéralement, on demande à Wikidata :

  • sélectionne (SELECT)
  • tous les éléments, qu’on nommera ?X (X est une variable)
  • avec pour condition (WHERE) :
  • cet élément ?X doit avoir une propriété « nature » de l’élément (wdt:P31) qui a pour valeur « film » (wd:Q11424)

On reste volontairement au plus simple. On pourrait définir plusieurs conditions, toutes figureraient alors dans les accolades {} qui suivent le WHERE.  Les propriétés commencent par la lettre P tandis que les valeurs qu’elles peuvent prendre commencent par la lettre Q.

On peut lancer cette requête à la page suivante. qui ressemblera à ça :

résultats de requête wikidata

On obtient un tableau d’une colonne, nommée X (comme notre variable), avec autant de lignes que de résultats. Le nom de chaque résultat est le code Wikidata associé au film, ce qui est assez indigeste.

On peut noter toutefois que chaque ligne contient une URL pérenne, c’est un lien vers un élément Wikidata (débutant par la lettre Q) qui correspond à un film. On constate aussi que les résultats sont classés par ordre croissant des codes Wikidata par défaut.

Enfin, le nombre de résultats, ici le nombre de films connus de Wikidata, s’affiche en bas de la page avec quelques informations de navigation :

nombre de résultats de films

Il s’agit de l’intégralité des films connus de Wikidata, c’est-à-dire de l’ensemble des éléments enregistrés dans Wikidata et pour lesquels la nature a été définie comme un « film ».

Première remarque : si un film a été entré avec la mauvaise nature, il ne figurera pas dans notre résultat de requête !

Modifier notre requête

En reprenant notre requête précédente, on constate que passer la souris sur la page fait apparaître plusieurs icônes à gauche et à droite.

boutons sur une page de requête

Ces icônes permettent de modifier le contexte de notre requête Wikidata. Ces outils sont nombreux, mais on va seulement s’intéresser ici au menu de droite sur notre requête, accessible en survolant à la souris l’icône droite.

  • « Modifier visuellement » fait apparaître un menu pour modifier notre requête de manière simple :

Modification visuelle de requête

On peut par exemple changer la nature des éléments cherchés de « film » vers « écrivain » en tapant dans le champ de droite écrivain, la requête est alors immédiatement relancée et le résultat s’affiche :

Modification de la nature de film vers auteur

  • « Modifier SPARQL » donne accès à une fenêtre qui contient la requête Wikidata. Le langage de requête utilisé par Wikidata se nomme SPARQL. Il s’agit de celui utilisé pour notre première requête. Plus complexe que la « modification visuelle », ce langage est utile pour pour obtenir des résultats plus précis :

Modifier SPARQL

Le premier bouton « i » permet d’afficher l’interface visuelle en même temps que la requête SPARQL. Nous afficherons désormais cette page pour voir ce que signifient nos requêtes.

En particulier, vous remarquerez qu’en survolant un terme, vous obtenez une infobulle avec une brève description de ce terme, très utile. Ici, on voit apparaître la description de Q482980, qui correspond à « auteur » :

survol d'élément SPARQL

Afficher tous les films de langue française avec leur titre et leur description

Notre requête précédente donnait accès à la totalité des films connus de Wikidata. Pour l’utiliser, il faut cliquer sur chaque élément pour trouver le nom du film. Il y a plus de 200 000 résultats, cette liste est donc peu utilisable, mais c’est un début !

On commence par revenir à la requête de recherche de tous les films en modifiant la valeur auteur (Q482980) par film (Q11424) :

SELECT ?X WHERE 
{
  ?X wdt:P31 wd:Q11424.
}

On constate au passage, en tapant la valeur « film » dans l’Assistant de requête, dans le champ de droite, qu’une auto-complétion facilite l’entrée des valeurs :

Nous allons maintenant modifier notre requête pour n’afficher que les films tournés en langue française. Ça aura pour effet à la fois de limiter le nombre de résultats (plus il y a de résultats, plus ça prend de temps à Wikidata) et de renvoyer un résultat plus utilisable. On ajoute donc dans le cadre de droite la ligne en gras dans la requête :

SELECT ?X  WHERE 
{
  ?X wdt:P31 wd:Q11424.
  ?X wdt:P364 wd:Q150 
}

Cette nouvelle ligne précise que les éléments résultats ?X doivent avoir une propriété « langue du film ou de l’émission de télévision » (qui a pour code P364) qui a pour valeur « français » (qui a pour code Q150). On a aussi ajouté un point avant la première condition. Les conditions terminent par un point (il est accessoire pour la dernière). La requête est ici.

Notez que la nouvelle requête diminue le nombre de réponses autour de 9000 :

nombre de résultats de films de langue française

Pour simplifier la requête, on peut « factoriser » le ?X commun aux deux conditions en supprimant le second ?X et en remplaçant le point par un point-virgule :

SELECT ?X  WHERE 
{
  ?X wdt:P31 wd:Q11424;
     wdt:P364 wd:Q150 
}

Le résultat est le même, vous pouvez le constater en comparant le résultat ici.

Pour continuer de simplifier la requête, on va maintenant renommer notre variable ?X en ?film, ce qui sera plus compréhensible, et ajouter une variable ?filmLabel. Cette variable ?filmLabel contiendra plus tard le titre de chaque film :

SELECT ?film ?filmLabel WHERE 
{
  ?film wdt:P31 wd:Q11424;
        wdt:P364 wd:Q150 
}

Pour l’instant, notre requête renvoie deux colonnes film et filmLabel. Cette deuxième colonne ne contient rien pour l’instant :

ajout d'un filmLabel à la requête

Enfin, on va ajouter le titre des films trouvés à nos résultats (dans la seconde colonne).

Wikidata dispose d’une « variable » XXXLabel associée aux éléments de nature XXX. Cette variable prend la valeur du libellé de l’élément Wikidata. En pratique, un élément de nature « film » a un libellé « filmLabel » qui prend pour valeur le nom du film, tout comme un élément de nature « human » (être humain) a un libellé « humanLabel » qui prendra pour valeur le nom de l’être humain.

Pour bénéficier de ce nommage, on va ajouter la ligne suivante en gras à notre requête :

SELECT ?film ?filmLabel WHERE 
{
  ?film wdt:P31 wd:Q11424.
  ?film wdt:P364 wd:Q150 
  SERVICE wikibase:label { bd:serviceParam wikibase:language "fr". }
}

Cette ligne permet à >ikidata de récupérer la valeur du libellé (label en anglais) des éléments. On pourrait aussi afficher ?filmDescription pour ajouter le descriptif du film aux colonnes du résultat, ce qui donnerait :

films en langue française avec libellé et descriptif

Les films inspirés d’autrices françaises

Vous savez désormais comment modifier vos requêtes Wikidata. Pour aller plus loin, il est possible d’aller bien plus loin, en particulier grâce aux ateliers Wikidata organisés à Paris par la fondation Wikimédia France ou en se connectant à #wikidata-fr.

On va maintenant trouver tous les films qui ont pour sujet une autrice qui s’exprimait en français en utilisant les critères suivants :

  • la nature est un film ;
  • la date de publication (propriété P577) correspondra à la variable ?date (et affichée dans une colonne de même nom) ;
  • le sujet ou thème principal (propriété P921) ou dépeint (propriété P180) aura pour valeur ?autrice ;
  • cet élément ?autrice peut varier, il aura lui-même pour conditions :
    • le genre (P21) a pour valeur féminin (Q6581072) ;
    • l’occupation (P106) a pour valeur écrivain (Q36180) ;
    • la langue officielle (P37) ou langue maternelle (P103) ou langue parlée, écrite ou signée (P1412) ou langue d’écriture (P6886) a pour valeur français (Q150).

La requête finale sera ainsi formulée :

#Films sur des autrices de langue française
SELECT ?film ?filmLabel ?autrice ?autriceLabel ?imdb (MIN(?date) AS ?minDate) WHERE {
  ?film wdt:P31 wd:Q11424; 
        wdt:P577 ?date.
  {?film wdt:P921 ?autrice} UNION {?film wdt:P180 ?autrice}
  OPTIONAL{?film wdt:P345 ?imdb}.
  ?autrice wdt:P21 wd:Q6581072;
           wdt:P106 wd:Q36180.
  { ?autrice wdt:P37|wdt:P103|wdt:P1412|wdt:6886 wd:Q150 . }
  SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en,fr". }
}
GROUP BY ?film ?filmLabel ?autrice ?autriceLabel ?imdb
ORDER BY DESC(?minDate)

La première ligne, débutant par # est un commentaire, non pris en compte par Wikidata. La requête renvoie un faible nombre de résultats.

liste des résultats films inspirés d'autrices de langue française

En augmentant le nombre de critères, on a obtenu une liste de résultats bien plus courte.