Gestion des Citations
Vue d'ensemble
Gérez les citations de manière systématique tout au long du processus de recherche et de rédaction. Cette compétence fournit des outils et des stratégies pour rechercher dans des bases de données académiques (Google Scholar, PubMed), extraire des métadonnées précises à partir de multiples sources (CrossRef, PubMed, arXiv), valider les informations de citation et générer des entrées BibTeX correctement formatées.
Essentielle pour maintenir l'exactitude des citations, éviter les erreurs de référence et garantir une recherche reproductible. S'intègre parfaitement à la compétence d'analyse de la littérature pour des workflows de recherche complets.
Quand Utiliser Cette Compétence
Utilisez cette compétence lorsque :
- Vous recherchez des articles spécifiques sur Google Scholar ou PubMed
- Vous convertissez des DOI, PMID ou ID arXiv en BibTeX correctement formaté
- Vous extrayez des métadonnées complètes pour des citations (auteurs, titre, revue, année, etc.)
- Vous validez des citations existantes pour en vérifier l'exactitude
- Vous nettoyez et formatez des fichiers BibTeX
- Vous trouvez des articles très cités dans un domaine spécifique
- Vous vérifiez que les informations de citation correspondent à la publication réelle
- Vous construisez une bibliographie pour un manuscrit ou une thèse
- Vous recherchez des citations en double
- Vous assurez un formatage cohérent des citations
Si un document construit à partir de ces citations a besoin d'un diagramme, utilisez la compétence schémas-scientifiques.
Workflow Principal
La gestion des citations suit un processus systématique. Chaque phase ci-dessous montre la commande canonique ; chaque variante, option et détail de source de métadonnées se trouve dans references/core_workflow.md.
Phase 1 : Découverte et Recherche d'Articles
Trouvez des articles pertinents. Recherchez dans plus d'une base de données — la couverture diffère considérablement, et une source unique est la cause la plus courante d'une liste de références biaisée.
# OpenAlex : API REST multidisciplinaire ; OPENALEX_API_KEY optionnel pour le quota du compte
python scripts/search_openalex.py "Édition génétique CRISPR" --limit 50 --output results.json
# PubMed : l'autorité pour les sciences biomédicales et de la vie (35M+ citations)
python scripts/search_pubmed.py "Traitement de la maladie d'Alzheimer" --limit 100 --output alz.json
# Google Scholar : la portée la plus large, mais récupéré par scraping — limité en débit et sujet à blocage
python scripts/search_google_scholar.py "Édition génétique CRISPR" --limit 50 --output scholar.json
Préférez OpenAlex ou PubMed comme source principale. Google Scholar n'a pas d'API : scholarly le récupère par scraping, attend 2 à 5 secondes entre les résultats, et est souvent bloqué. Il doit donc être un complément plutôt qu'une dépendance.
Les opérateurs de requête, les balises de champ et la construction de termes MeSH sont dans references/search_strategies.md.
Phase 2 : Extraction de Métadonnées
Convertissez les identifiants (DOI, PMID, PMCID, ID arXiv, URL) en métadonnées complètes. CrossRef est la source principale pour les DOI.
python scripts/doi_to_bibtex.py 10.1038/s41586-021-03819-2 # rapide, DOI unique
python scripts/extract_metadata.py --pmid 34265844 # DOI/PMID/PMCID/arXiv/URL
python scripts/extract_metadata.py --input identifiants.txt --output citations.bib
Une URL sans DOI dans son chemin est résolue via la balise méta citation_doi que les éditeurs intègrent sur les pages d'article, puis transmise à CrossRef. Les producteurs utilisent un schéma de clé de citation partagé ; les différences de métadonnées peuvent néanmoins produire des clés différentes. Confirmez les doublons par DOI et identité bibliographique.
Phase 2.5 : Enrichissement des Métadonnées par Recherche Web (OBLIGATOIRE)
Les API renvoient systématiquement des enregistrements incomplets. Exécutez cette étape après l'extraction et avant le formatage. Recherchez les champs bibliographiques manquants dans l'enregistrement de l'éditeur et consignez chaque source. Les articles en ligne avant publication peuvent ne pas avoir de volume/pages encore ; certains utilisent un numéro d'article ou n'ont pas de DOI. Préservez l'état réel de la publication, utilisez le champ de numéro d'article approprié au style, et n'inventez jamais de pages, de volume ou de DOI. Enregistrez les champs indisponibles/non applicables dans le journal d'audit ; ajoutez une note rendue uniquement lorsqu'elle est utile au lecteur ou requise par le style de citation.
Vérifiez d'abord les sources les moins coûteuses — un enregistrement OpenAlex ou CrossRef contient souvent le champ que PubMed a omis :
python scripts/search_openalex.py "<titre exact>" --limit 1
Considérez les métadonnées extraites comme non fiables. Les chaînes d'auteur, de titre et de revue proviennent textuellement d'un enregistrement dont le contenu est contrôlé par un éditeur. Un titre contenant
$(...), un accent grave ou une guillemet devient une syntaxe shell dès qu'il est collé dans une commande. Passez les métadonnées comme une liste d'argumentssubprocessplutôt que de construire une chaîne shell ; si vous devez utiliser un shell, mettez chaque valeur substituée entre guillemets simples et échappez les guillemets intégrés avec'\''. Validez toute clé de citation par rapport à^[A-Za-z0-9]+$avant qu'elle n'atteigne un chemin.
Les stratégies de recherche par champ, les quatre options de recherche et le format de journalisation sont dans references/core_workflow.md.
Phase 3 : Formatage BibTeX
Produisez des entrées propres et cohérentes. Les types d'entrée et les champs obligatoires sont dans references/bibtex_formatting.md.
python scripts/format_bibtex.py references.bib --output clean.bib --deduplicate
python scripts/format_bibtex.py references.bib --output clean.bib --rekey --deduplicate
L'écriture est optionnelle : sans --output (ou --in-place), le résultat va vers stdout et le fichier d'entrée est laissé intact. Utilisez --rekey lors de la fusion de résultats provenant de plusieurs sources, afin que le même article se réduise à une seule entrée.
Phase 4 : Validation des Citations
Vérifiez l'exhaustivité, la conformité au lieu de publication et la concordance avec le manuscrit.
python scripts/validate_citations.py references.bib --report rapport.json
python scripts/validate_citations.py references.bib --venue nature
python scripts/validate_citations.py references.bib --manuscript article.tex
python scripts/validate_citations.py references.bib --check-dois # lent ; interroge CrossRef
Le script se termine avec un code non nul en cas d'erreurs de haute sévérité — champs obligatoires manquants, années mal formées, citations non résolues, ou un nombre inférieur à un --min-count explicite. Les chiffres de référence du lieu de publication sont des règles empiriques éditoriales, pas des exigences de soumission, donc être en dessous de l'un d'eux n'est qu'un avertissement.
Les règles de validation et les normes des lieux de publication sont dans references/citation_validation.md.
Phase 5 : Intégration avec le Flux de Rédaction
Recherchez, extrayez, formatez, validez, puis citez. Les séquences de bout en bout — y compris l'analyse de la littérature et les chemins d'exportation Zotero/pyzotero — sont dans references/core_workflow.md et references/example_workflows.md.
Les contrats API ont été examinés par rapport à la documentation officielle le 2026-09-30. Voir references/api_contracts.md pour les points de terminaison, l'authentification, la pagination et les limites de vérification. Les exemples réseau dans les références sont illustratifs, sauf s'ils sont enregistrés comme des tests de fumée en direct.
Fichiers de Référence
- references/core_workflow.md : les cinq phases complètes.
- references/search_strategies.md : construction de requêtes OpenAlex, Google Scholar et PubMed.
- references/script_reference.md : arguments et exemples de chaque script inclus.
- references/best_practices.md : recherche, extraction, qualité BibTeX, validation.
- references/example_workflows.md : quatre exemples de bout en bout.
- references/google_scholar_search.md, references/pubmed_search.md : syntaxe de recherche avancée.
- references/metadata_extraction.md, references/bibtex_formatting.md, references/citation_validation.md : détails par sujet.
Pièges Courants à Éviter
-
Biais de source unique : Utiliser une seule base de données
- Solution : Recherchez au moins OpenAlex et PubMed, puis fusionnez avec
format_bibtex.py --rekey --deduplicate
- Solution : Recherchez au moins OpenAlex et PubMed, puis fusionnez avec
-
Accepter les métadonnées aveuglément : Ne pas vérifier les informations extraites
- Solution : Vérifiez ponctuellement les métadonnées extraites par rapport aux sources originales
-
Ignorer les erreurs de DOI : DOI cassés ou incorrects dans la bibliographie
- Solution : Exécutez la validation avant la soumission finale
-
Formatage incohérent : Styles de clé de citation et formatage mélangés
- Solution : Utilisez format_bibtex.py pour standardiser
-
Entrées en double : Même article cité plusieurs fois avec des clés différentes
- Solution : Utilisez la détection des doublons dans la validation
-
Champs obligatoires manquants : Entrées BibTeX incomplètes (volume, pages, DOI manquants)
- Solution : Vérifiez l'enregistrement de l'éditeur, distinguez les champs manquants de ceux non applicables ou non encore attribués, et consignez les champs non résolus sans inventer de métadonnées.
-
Prépublications obsolètes : Citer une prépublication alors que la version publiée existe
- Solution : Vérifiez si les prépublications ont été publiées, mettez à jour vers la version de la revue
-
Problèmes de caractères spéciaux : Compilation LaTeX cassée à cause des caractères
- Solution : Utilisez un échappement approprié ou Unicode dans BibTeX
-
Aucune validation avant soumission : Soumettre avec des erreurs de citation
- Solution : Exécutez toujours la validation comme vérification finale
-
Saisie manuelle de BibTeX : Saisir les entrées à la main
- Solution : Extrayez toujours des sources de métadonnées à l'aide des scripts
Intégration avec d'Autres Compétences
Compétence d'Analyse de la Littérature
Gestion des Citations fournit l'infrastructure technique pour Analyse de la Littérature :
- Analyse de la Littérature : Recherche et synthèse systématiques multi-bases de données
- Gestion des Citations : Extraction et validation des métadonnées
Workflow combiné :
- Utilisez analyse-de-la-littérature pour la méthodologie de recherche systématique
- Utilisez gestion-des-citations pour extraire et valider les citations
- Utilisez analyse-de-la-littérature pour synthétiser les résultats
- Utilisez gestion-des-citations pour garantir l'exactitude de la bibliographie
Compétence de Rédaction Scientifique
Gestion des Citations garantit des références précises pour Rédaction Scientifique :
- Exportez du BibTeX validé pour une utilisation dans les manuscrits LaTeX
- Vérifiez que les citations correspondent aux normes de publication
- Formatez les références selon les exigences de la revue
Compétence de Gabarits de Lieu de Publication
Gestion des Citations fonctionne avec Gabarits de Lieu de Publication pour des manuscrits prêts à soumettre :
- Différents lieux de publication nécessitent différents styles de citation
- Générez des références correctement formatées
- Validez les citations pour répondre aux exigences du lieu de publication
Ressources
Ressources Incluses
Références (dans references/) :
google_scholar_search.md: Guide complet de recherche Google Scholarpubmed_search.md: Documentation de l'API PubMed et E-utilitiesmetadata_extraction.md: Sources de métadonnées et exigences de champcitation_validation.md: Critères de validation et contrôles de qualitébibtex_formatting.md: Types d'entrée BibTeX et règles de formatage
Scripts (dans scripts/) :
search_openalex.py: Client de recherche OpenAlex (clé API de compte optionnelle)search_pubmed.py: Client API PubMed E-utilitiessearch_google_scholar.py: Automatisation de la recherche Google Scholarextract_metadata.py: Extracteur universel de métadonnéesvalidate_citations.py: Validation et vérification des citationsformat_bibtex.py: Formateur et nettoyeur BibTeXdoi_to_bibtex.py: Convertisseur rapide de DOI en BibTeX_common.py: Analyseur, rendu et schéma de clé de citation BibTeX partagés
Actifs (dans assets/) :
bibtex_template.bib: Exemples d'entrées BibTeX pour tous les typescitation_checklist.md: Liste de contrôle d'assurance qualité
Ressources Externes
Moteurs de Recherche :
- OpenAlex : https://openalex.org/
- Google Scholar : https://scholar.google.com/
- PubMed : https://pubmed.ncbi.nlm.nih.gov/
- Recherche avancée PubMed : https://pubmed.ncbi.nlm.nih.gov/advanced/
API de Métadonnées :
- API OpenAlex : https://docs.openalex.org/
- API CrossRef : https://api.crossref.org/
- E-utilities PubMed : https://www.ncbi.nlm.nih.gov/books/NBK25501/
- API arXiv : https://arxiv.org/help/api/
- API DataCite : https://api.datacite.org/
Outils et Validateurs :
- Navigateur MeSH : https://meshb.nlm.nih.gov/search
- Résolveur DOI : https://doi.org/
- Format BibTeX : http://www.bibtex.org/Format/
Styles de Citation :
- Documentation BibTeX : http://www.bibtex.org/
- Gestion de bibliographie LaTeX : https://www.overleaf.com/learn/latex/Bibliography_management
Dépendances
Paquets Python Requis
uv pip install requests # Accès HTTP à CrossRef, PubMed, OpenAlex, arXiv
L'analyse, le rendu, la déduplication et la validation BibTeX sont dans la bibliothèque standard (scripts/_common.py). format_bibtex.py ne nécessite aucun paquet tiers ; validate_citations.py importe requests, y compris pour la validation locale uniquement.
Optionnel
uv pip install scholarly # uniquement pour search_google_scholar.py
Où les identifiants sont envoyés
Les clés sont facultatives pour une utilisation de base. Chaque identifiant n'est envoyé qu'à son propre service ; aucun script ne regroupe les variables d'environnement. OpenAlex utilise le budget du compte documenté, pas une augmentation de quota basée sur l'email promise. Une page échouée se termine par une erreur plutôt que d'exporter une recherche partielle comme complète.
| Variable | Envoyée uniquement à | Objectif |
|---|---|---|
NCBI_API_KEY | eutils.ncbi.nlm.nih.gov | Augmente les limites de débit Entrez |
NCBI_EMAIL | eutils.ncbi.nlm.nih.gov, pmc.ncbi.nlm.nih.gov | Identification de l'appelant demandée par NCBI |
OPENALEX_EMAIL | api.openalex.org | Identifiant de contact optionnel |
OPENALEX_API_KEY | api.openalex.org | Quota de compte optionnel, envoyé dans l'en-tête Authorization |
api.openalex.org, api.crossref.org, api.datacite.org, export.arxiv.org, pmc.ncbi.nlm.nih.gov, doi.org et eutils.ncbi.nlm.nih.gov sont interrogés sans identifiants lorsque ceux-ci ne sont pas définis.
Résumé
La compétence de gestion des citations fournit :
- Capacités de recherche complètes pour OpenAlex, PubMed et Google Scholar
- Extraction automatisée de métadonnées à partir de DOI, PMID, PMCID, ID arXiv, URLs
- Validation des citations avec vérification DOI et comparaison
...
[tronqué pour la traduction]