Topic on Wikidata:Bistro/Archives des discussions structurées

Jump to navigation Jump to search
ParaBenT (talkcontribs)
Harmonia Amanda (talkcontribs)

J'imagine qu'une requête comme celle-ci pourrait le faire ? (en croisant par catégorie/projet avec Petscan ?)

The following query uses these:

  • Properties: instance of (P31)  , date of birth (P569)  , date of death (P570)  
     1 SELECT ?item ?nom ?anniversaire (YEAR(?date) AS ?annee) WHERE {
     2   ?item wdt:P31 wd:Q5.
     3   ?item rdfs:label ?nom.
     4   FILTER(LANGMATCHES(LANG(?nom), "fr"))
     5   {
     6     ?item wdt:P569 ?date.
     7     BIND("naissance" AS ?anniversaire)
     8   }
     9   UNION
    10   {
    11     ?item wdt:P570 ?date.
    12     BIND("décès" AS ?anniversaire)
    13   }
    14   ?article schema:about ?item.
    15   ?article schema:isPartOf <https://fr.wikipedia.org/>.
    16   FILTER((DATATYPE(?date)) = xsd:dateTime)
    17   FILTER((MONTH(?date)) = (MONTH(NOW())))
    18   FILTER((DAY(?date)) = (DAY(NOW())))
    19 }
    20 ORDER BY ?date
    21 LIMIT 10
    

En l'état actuel, la requête prend trop de temps, on devrait l'optimiser avec des sous-requêtes ou simplement réduire le champ au lieu de demander tous les humains nés ou morts en ce jour de l'année ayant un article sur WP:fr (ce qui donne beaucoup de résultats. Edit: 1699 pour le 12 novembre)

TomT0m (talkcontribs)

Ça ne règle pas le problème mais il semble que remplacer l’union par une énumération de tuple possible soit un peu plus performant (la requête précédente dépasse le temps limite, celle-ci passe en 40 secondes quand j’ai essayé)

SELECT ?item ?nom ?anniversaire (YEAR(?date) AS ?annee) WHERE {
  ?item wdt:P31 wd:Q5.
  ?item rdfs:label ?nom.
  FILTER(LANGMATCHES(LANG(?nom), "fr"))
    ?item ?prop ?date.
    values (?prop ?anniversaire) { (wdt:P569 "naissance") (wdt:P570 "décès")} 
    
  ?article schema:about ?item
           ; schema:isPartOf <https://fr.wikipedia.org/>.
    
  FILTER((DATATYPE(?date)) = xsd:dateTime)
  FILTER((MONTH(?date)) = (MONTH(NOW())))
  FILTER((DAY(?date)) = (DAY(NOW())))
}
ORDER BY ?date
LIMIT 10

Try it!

Harmonia Amanda (talkcontribs)

La requête a perdu la mention de s'il s'agissait d'une naissance ou d'un décès... Elle passe aussi si on supprime les labels par exemple. Il faudrait faire des requêtes imbriquées mais là je n'ai pas le temps, je regarde ce soir.

TomT0m (talkcontribs)

J’ai corrigé entre temps normalement :) (mais je m’aperôis que non, j’ai du oublier de valider le post, je refais la modif)

c’est fait, une erreur dans le nom de variable.

ParaBenT (talkcontribs)

Merci pour ce premier retour : (sans tout comprendre)
Le résultat pourrait-il être plus ciblé (donc plus rapide ?)
Objectif : insérer un lien "voir aussi" sous fr:1er_décembre#Naissances qui ne liste que les "naissances" le "1er décembre" "d'être humain" "ayant une page dans fr.wiki".
Est-ce que ceci est possible ?
à décliner pour Décès et pour chacun des jours.
Intérêt  : Les utilisateur des pages de l'éphéméride pourront comparais/enrichir les pages de l’éphéméride en se référent ce résultat. --ParaBenT (talk) 09:35, 12 November 2018 (UTC)

ParaBenT (talkcontribs)

Bien sûr, pour sa déclinaisons dans chaque page de l'éphéméride, si cette précision de requêtes de recherches est réaliste, alors la déclinaison à voir dans fr:Wikipédia:Bot/Requêtes ; Sauf si elle peut être envisagé dès ici ! --ParaBenT (talk) 08:02, 13 November 2018 (UTC)

Tpe.g5.stan (talkcontribs)

Bonjour,

Je suis également intéressé par le sujet, travaillant en partie sur le sujet des éphémérides ces derniers temps.

Si je comprends bien, une telle requête permettrait à un bot de remplir les sections naissances et décès (si nécessaire pour des raisons de performances, en découpant siècle par siècle). C'est une bonne nouvelle.

Cependant se pose une question plus large : doit-on mettre tout le monde ? Cela risque de donner une liste impressionnante comme dans le cas du 27 novembre ou du 1er décembre. C'est un débat qui dépasse largement le cadre de Wikidata, je pense. Tpe.g5.stan (talk) 08:22, 13 November 2018 (UTC)

Jura1 (talkcontribs)
ParaBenT (talkcontribs)

Donc la deuxième liste apporte un début de solution. Cependant :

  • Pour trouver la liste des naissances pour un jour donnée il faut aller dans son Historique des versions et chercher un jour donnée dans l'année précédente et afficher sa version à cette date.
  • Elle ne permet pas de rassembler par jour de naissance les personnes défuntes.
    • Il n'existe donc de liste liste pour les jours anniversaires de décès. --ParaBenT (talk) 06:25, 19 November 2018 (UTC)
Jura1 (talkcontribs)

J'ai fini par la trier par âge ascendant, car dans les vieux il y avait trop de personnes sans nouvelles récentes (p.e. nés en 1930, sans nouvelles depuis des décennies et sans annonce de décès).

ParaBenT (talkcontribs)

Un des intérêt de cette liste est donc de permettre un travail de maintenance sur les biographies ? Y-a-il un espace dédié ? (rien trouvé sur : fr:Projet:Maintenance ! Ni aucun lien directe depuis :fr:Wikipédia:Le Bistro/…#Articles à améliorer !)

Harmonia Amanda (talkcontribs)

Il suffit de changer la requête. Pour faire une sous-page Listeria pour les jours de décès, il suffirait de recopier la page sur les naissances et de demander la date de mort au lieu de la date de naissance. Est-ce que ça répondrait au besoin ?

De même, il est possible de fixer dans la requête une date précise au lieu de la date flottante 'aujourd'hui', même si l'intérêt d'un Listeria pour une requête comme celle-ci me semble douteux.

Jura1 (talkcontribs)

On pourrait en créer pour chaque jour de l'année. L'intérêt de Listeria est que des nouvelles entrées se rajoutent au gré de l'évolution de WD.

ParaBenT (talkcontribs)
  • Est-ce envisageable Harmonia Amanda de faire en test une sous page listéria pour les décès ?
  • L'idée avec des pages en fixant une date précise : en en générant deux pour chaque date du calendrier (une pour les naissances l’autre pour les décès). C'est sous pages obtenues de placer leur lien, via fr:Modèle:Article connexe, directement dans les pages de chaque jour de l’éphéméride en tête de paragraphe une fois pour les naissance une autre pour les décès. Les utilisateurs pourront s'y référer pour consultation et/ou maintenance. (cf. fr:Modèle:Palette_Éphéméride)
  • Du coup pas besoin que listéria actualise ses pages tout les jours, peut-être la veille du jour ou à la demande lors d'une consultation ?

Sans trop y connaître à Listeria dont je faire la connaissance ; ni donc encore trop comment lui parler

Reply to "Identifier les naissances et décès éligibles à une mention dans l'éphéméride"