citation-management について
研究者や執筆者向けの引用管理スキルです。Google Scholar と PubMed で文献を検索し、論文識別子からメタデータを取得して、BibTeX エントリーを整形・検証します。
主な機能
- 01Google Scholar と PubMed の検索
- 02論文識別子からメタデータを抽出
- 03識別子を BibTeX に変換
- 04BibTeX ファイルの整形と整理
- 05引用の検証と重複検出
活用シーン
- 01論文や学位論文の参考文献作成
- 02DOI、PMID、arXiv ID の BibTeX 変換
- 03引用情報の不足や誤りの確認
- 04引用ファイルの整理と重複削除
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ crazymsn/ academic-skills --skill citation-managementインストール後、Claude Code で/citation-managementを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
assets/bibtex_template.bibcitation_checklist.mdreferences/bibtex_formatting.mdcitation_validation.mdgoogle_scholar_search.mdmetadata_extraction.mdpubmed_search.mdscripts/doi_to_bibtex.pyextract_metadata.pyformat_bibtex.pygenerate_schematic_ai.pygenerate_schematic.pysearch_google_scholar.pysearch_pubmed.pyvalidate_citations.py詳細
引用管理
概要
研究と執筆のプロセス全体を通じて、引用を体系的に管理します。このスキルは、学術データベース(Google Scholar、PubMed)の検索、複数のソース(CrossRef、PubMed、arXiv)からの正確なメタデータの抽出、引用情報の検証、適切に書式化された BibTeX エントリの生成のためのツールと戦略を提供します。
引用の正確性を維持し、参照エラーを回避し、再現可能な研究を確保するために重要です。包括的な研究ワークフローのために literature-review スキルとシームレスに統合されます。
このスキルを使用するタイミング
次の場合にこのスキルを使用してください:
- Google Scholar または PubMed で特定の論文を検索するとき
- DOI、PMID、または arXiv ID を適切に書式化された BibTeX に変換するとき
- 引用の完全なメタデータ(著者、タイトル、雑誌、年など)を抽出するとき
- 既存の引用の正確性を検証するとき
- BibTeX ファイルをクリーニングおよび書式化するとき
- 特定の分野で被引用数の多い論文を見つけるとき
- 引用情報が実際の出版物と一致することを確認するとき
- 原稿または論文のための参考文献リストを作成するとき
- 重複する引用を確認するとき
- 一貫した引用書式を確保するとき
Scientific Schematics による視覚的強化
このスキルで文書を作成する際は、視覚的な伝達を強化するために、科学的な図やスキーマティックの追加を必ず検討してください。
文書にスキーマティックや図がまだ含まれていない場合:
- scientific-schematics スキルを使用して、AI を活用した出版品質の図を生成します
- 希望する図を自然言語で説明するだけです
- Nano Banana Pro が自動的にスキーマティックを生成、レビュー、洗練します
新規文書の場合: テキストで説明された主要な概念、ワークフロー、アーキテクチャ、または関係を視覚的に表現するために、科学的なスキーマティックをデフォルトで生成する必要があります。
スキーマティックの生成方法:
python scripts/generate_schematic.py "your diagram description" -o figures/output.png
AI は自動的に次を行います:
- 適切な書式を備えた出版品質の画像を作成
- 複数の反復を通じてレビューと洗練を実施
- アクセシビリティを確保(色覚に配慮、高コントラスト)
- figures/ ディレクトリに出力を保存
スキーマティックを追加するタイミング:
- 引用ワークフローの図
- 文献検索の方法論のフローチャート
- 参考文献管理システムのアーキテクチャ
- 引用スタイルの決定木
- データベース統合の図
- 視覚化の恩恵を受けるあらゆる複雑な概念
スキーマティックの作成に関する詳細なガイダンスについては、scientific-schematics スキルのドキュメントを参照してください。
コアワークフロー
引用管理は体系的なプロセスに従います:
フェーズ 1: 論文の発見と検索
目標: 学術検索エンジンを使用して関連する論文を見つけます。
Google Scholar 検索
Google Scholar は、分野を横断して最も包括的なカバレッジを提供します。
基本検索:
# Search for papers on a topic
python scripts/search_google_scholar.py "CRISPR gene editing" \
--limit 50 \
--output results.json
# Search with year filter
python scripts/search_google_scholar.py "machine learning protein folding" \
--year-start 2020 \
--year-end 2024 \
--limit 100 \
--output ml_proteins.json
高度な検索戦略(references/google_scholar_search.md を参照):
- 完全一致のフレーズには引用符を使用:
"deep learning" - 著者で検索:
author:LeCun - タイトルで検索:
intitle:"neural networks" - 用語を除外:
machine learning -survey - 並べ替えオプションを使用して被引用数の多い論文を見つける
- 日付範囲で絞り込み、最新の研究を取得
ベストプラクティス:
- 具体的で的を絞った検索語を使用する
- 主要な技術用語や略語を含める
- 変化の速い分野では最近の年で絞り込む
- 「Cited by」を確認して重要な論文を見つける
- さらなる分析のために上位の結果をエクスポートする
PubMed 検索
PubMed は生物医学およびライフサイエンス分野の文献に特化しています(3,500 万件以上の引用文献)。
基本検索:
# Search PubMed
python scripts/search_pubmed.py "Alzheimer's disease treatment" \
--limit 100 \
--output alzheimers.json
# Search with MeSH terms and filters
python scripts/search_pubmed.py \
--query '"Alzheimer Disease"[MeSH] AND "Drug Therapy"[MeSH]' \
--date-start 2020 \
--date-end 2024 \
--publication-types "Clinical Trial,Review" \
--output alzheimers_trials.json
PubMed の高度なクエリ(references/pubmed_search.md を参照):
- MeSH 用語を使用:
"Diabetes Mellitus"[MeSH] - フィールドタグ:
"cancer"[Title],"Smith J"[Author] - ブール演算子:
AND,OR,NOT - 日付フィルター:
2020:2024[Publication Date] - 文献の種類:
"Review"[Publication Type] - E-utilities API と組み合わせて自動化
ベストプラクティス:
- MeSH Browser を使用して正しい統制語彙を見つける
- 複雑なクエリは、まず PubMed の高度な検索ビルダーで作成する
- OR で複数の同義語を含める
- 簡単にメタデータを抽出できるよう PMID を取得する
- JSON 形式、または直接 BibTeX 形式でエクスポートする
フェーズ 2: メタデータ抽出
目標: 論文の識別子(DOI、PMID、arXiv ID)を、完全で正確なメタデータに変換する。
DOI から BibTeX への簡易変換
単一の DOI の場合は、簡易変換ツールを使用します:
# Convert single DOI
python scripts/doi_to_bibtex.py 10.1038/s41586-021-03819-2
# Convert multiple DOIs from a file
python scripts/doi_to_bibtex.py --input dois.txt --output references.bib
# Different output formats
python scripts/doi_to_bibtex.py 10.1038/nature12345 --format json
包括的なメタデータ抽出
DOI、PMID、arXiv ID、または URL の場合:
# Extract from DOI
python scripts/extract_metadata.py --doi 10.1038/s41586-021-03819-2
# Extract from PMID
python scripts/extract_metadata.py --pmid 34265844
# Extract from arXiv ID
python scripts/extract_metadata.py --arxiv 2103.14030
# Extract from URL
python scripts/extract_metadata.py --url "https://www.nature.com/articles/s41586-021-03819-2"
# Batch extraction from file (mixed identifiers)
python scripts/extract_metadata.py --input identifiers.txt --output citations.bib
メタデータのソース(references/metadata_extraction.md を参照):
-
CrossRef API: DOI の主要なソース
- ジャーナル論文の包括的なメタデータ
- 出版社が提供する情報
- 著者、タイトル、ジャーナル名、巻、ページ、日付を含む
- 無料、API キー不要
-
PubMed E-utilities: 生物医学文献
- NCBI が提供する公式メタデータ
- MeSH 用語、抄録を含む
- PMID および PMCID 識別子
- 無料、大量利用の場合は API キーを推奨
-
arXiv API: 物理学、数学、CS、q-bio 分野のプレプリント
- プレプリントの完全なメタデータ
- バージョン管理
- 著者の所属
- 無料、オープンアクセス
-
DataCite API: 研究データセット、ソフトウェア、その他のリソース
- 従来の学術成果物以外のメタデータ
- データセットやコードの DOI
- 無料でアクセス可能
抽出される情報:
- 必須フィールド: author、title、year
- ジャーナル論文: journal、volume、number、pages、DOI
- 書籍: publisher、ISBN、edition
- 会議論文: booktitle、開催地、pages
- プレプリント: リポジトリ(arXiv、bioRxiv)、プレプリント ID
- その他: abstract、keywords、URL
フェーズ 3: BibTeX の整形
目標: 整った形式の BibTeX エントリを生成する。
BibTeX のエントリタイプの理解
詳細なガイドは references/bibtex_formatting.md を参照してください。
一般的なエントリタイプ:
@article: ジャーナル論文(最も一般的)@book: 書籍@inproceedings: 会議論文@incollection: 書籍の章@phdthesis: 学位論文@misc: プレプリント、ソフトウェア、データセット
タイプごとの必須フィールド:
@article{citationkey,
author = {Last1, First1 and Last2, First2},
title = {Article Title},
journal = {Journal Name},
year = {2024},
volume = {10},
number = {3},
pages = {123--145},
doi = {10.1234/example}
}
@inproceedings{citationkey,
author = {Last, First},
title = {Paper Title},
booktitle = {Conference Name},
year = {2024},
pages = {1--10}
}
@book{citationkey,
author = {Last, First},
title = {Book Title},
publisher = {Publisher Name},
year = {2024}
}
整形とクリーニング
整形ツールを使用して BibTeX ファイルを標準化します:
# Format and clean BibTeX file
python scripts/format_bibtex.py references.bib \
--output formatted_references.bib
# Sort entries by citation key
python scripts/format_bibtex.py references.bib \
--sort key \
--output sorted_references.bib
# Sort by year (newest first)
python scripts/format_bibtex.py references.bib \
--sort year \
--descending \
--output sorted_references.bib
# Remove duplicates
python scripts/format_bibtex.py references.bib \
--deduplicate \
--output clean_references.bib
# Validate and report issues
python scripts/format_bibtex.py references.bib \
--validate \
--report validation_report.txt
整形の操作:
- フィールドの順序を標準化する
- インデントと空白を統一する
- タイトルの大文字・小文字を適切に処理する({} で保護)
- 著者名の形式を標準化する
- 引用キーの形式を統一する
- 不要なフィールドを削除する
- 一般的なエラーを修正する(カンマや波括弧の欠落など)
フェーズ 4: 引用の検証
目標: すべての引用が正確で完全であることを確認する。
包括的な検証
# Validate BibTeX file
python scripts/validate_citations.py references.bib
# Validate and fix common issues
python scripts/validate_citations.py references.bib \
--auto-fix \
--output validated_references.bib
# Generate detailed validation report
python scripts/validate_citations.py references.bib \
--report validation_report.json \
--verbose
検証項目(references/citation_validation.mdを参照):
-
DOI の確認:
- DOI が doi.org で正しく解決されること
- BibTeX と CrossRef のメタデータが一致すること
- 破損または無効な DOI がないこと
-
必須フィールド:
- エントリーの種類に応じた必須フィールドがすべて存在すること
- 空欄や重要な情報の欠落がないこと
- 著者名が適切にフォーマットされていること
-
データの一貫性:
- 年が有効であること(4 桁で、妥当な範囲内)
- 巻号が数値であること
- ページが正しくフォーマットされていること(例:123--145)
- URL にアクセスできること
-
重複の検出:
- 同じ DOI が複数回使われていないか
- 類似したタイトルがないか(重複の可能性)
- 著者・年・タイトルの組み合わせが同じものがないか
-
形式への準拠:
- BibTeX の構文が有効であること
- 波括弧と引用符が適切に使われていること
- 引用キーが一意であること
- 特殊文字が正しく処理されていること
検証結果:
{
"total_entries": 150,
"valid_entries": 145,
"errors": [
{
"citation_key": "Smith2023",
"error_type": "missing_field",
"field": "journal",
"severity": "high"
},
{
"citation_key": "Jones2022",
"error_type": "invalid_doi",
"doi": "10.1234/broken",
"severity": "high"
}
],
"warnings": [
{
"citation_key": "Brown2021",
"warning_type": "possible_duplicate",
"duplicate_of": "Brown2021a",
"severity": "medium"
}
]
}
フェーズ 5:執筆ワークフローとの統合
論文原稿の参考文献を作成する
参考文献一覧を作成するための完全なワークフロー:
# 1. Search for papers on your topic
python scripts/search_pubmed.py \
'"CRISPR-Cas Systems"[MeSH] AND "Gene Editing"[MeSH]' \
--date-start 2020 \
--limit 200 \
--output crispr_papers.json
# 2. Extract DOIs from search results and convert to BibTeX
python scripts/extract_metadata.py \
--input crispr_papers.json \
--output crispr_refs.bib
# 3. Add specific papers by DOI
python scripts/doi_to_bibtex.py 10.1038/nature12345 >> crispr_refs.bib
python scripts/doi_to_bibtex.py 10.1126/science.abcd1234 >> crispr_refs.bib
# 4. Format and clean the BibTeX file
python scripts/format_bibtex.py crispr_refs.bib \
--deduplicate \
--sort year \
--descending \
--output references.bib
# 5. Validate all citations
python scripts/validate_citations.py references.bib \
--auto-fix \
--report validation.json \
--output final_references.bib
# 6. Review validation report and fix any remaining issues
cat validation.json
# 7. Use in your LaTeX document
# \bibliography{final_references}
文献レビューのスキルとの統合
このスキルはliterature-reviewスキルを補完します:
文献レビューのスキル → 体系的な検索と統合 引用管理スキル → 技術的な引用処理
組み合わせたワークフロー:
literature-reviewを使って、複数のデータベースを対象に包括的に検索しますcitation-managementを使って、すべての引用を抽出して検証しますliterature-reviewを使って、テーマ別に知見を統合しますcitation-managementを使って、最終的な参考文献一覧の正確性を確認します
# After completing literature review
# Verify all citations in the review document
python scripts/validate_citations.py my_review_references.bib --report review_validation.json
# Format for specific citation style if needed
python scripts/format_bibtex.py my_review_references.bib \
--style nature \
--output formatted_refs.bib
検索戦略
Google Scholar のベストプラクティス
主要論文と影響力の大きい論文を見つける(重要):
引用数、掲載先の質、著者の評価に基づいて、常に論文を優先してください。
引用数の基準:
| 論文の経過年数 | 引用数 | 分類 |
|---|---|---|
| 0~3 年 | 20 件以上 | 注目すべき論文 |
| 0~3 年 | 100 件以上 | 非常に影響力の大きい論文 |
| 3~7 年 | 100 件以上 | 重要な論文 |
| 3~7 年 | 500 件以上 | 画期的な論文 |
| 7 年以上 | 500 件以上 | 主要論文 |
| 7 年以上 | 1000 件以上 | 基礎となる論文 |
掲載先の質のランク:
- ランク 1(優先): Nature、Science、Cell、NEJM、Lancet、JAMA、PNAS
- ランク 2(優先度高): インパクトファクター >10、主要な学会(NeurIPS、ICML、ICLR)
- ランク 3(良好): 専門誌(IF 5-10)
- ランク 4(限定的に利用): 影響力が低い査読付き掲載先
著者の評価を示す指標:
- h-index >40 のシニア研究者
- ランク 1 の掲載先での複数の出版実績
- 評判の高い機関でのリーダーシップ
- 受賞歴や編集職
影響力の大きい論文の検索戦略:
- 引用数で並べ替えます(引用数の多い順)
- 概要を把握するため、ランク 1 の学術誌に掲載された総説を探します
- 影響度や最近の関連研究を評価するため、「Cited by」を確認します
- 主要論文への新たな引用を追跡するため、引用アラートを使います
source:Natureやsource:Scienceを使って、主要な掲載先で絞り込みますauthor:LastNameを使って、その分野で著名な研究者の論文を検索します
高度な演算子(全リストはreferences/google_scholar_search.mdを参照):
"exact phrase" # Exact phrase matching
author:lastname # Search by author
intitle:keyword # Search in title only
source:journal # Search specific journal
-exclude # Exclude terms
OR # Alternative terms
2020..2024 # Year range
検索例:
# Find recent reviews on a topic
"CRISPR" intitle:review 2023..2024
# Find papers by specific author on topic
author:Church "synthetic biology"
# Find highly cited foundational work
"deep learning" 2012..2015 sort:citations
# Exclude surveys and focus on methods
"protein folding" -survey -review intitle:method
PubMed のベストプラクティス
MeSH 用語を使う: MeSH(医学件名標目)は、精度の高い検索を可能にする統制語彙です。
- https://meshb.nlm.nih.gov/search で MeSH 用語を探します
- クエリで使用します:
"Diabetes Mellitus, Type 2"[MeSH] - 網羅的に検索するため、キーワードと組み合わせます
フィールドタグ:
[Title] # Search in title only
[Title/Abstract] # Search in title or abstract
[Author] # Search by author name
[Journal] # Search specific journal
[Publication Date] # Date range
[Publication Type] # Article type
[MeSH] # MeSH term
複雑なクエリを作成する:
# Clinical trials on diabetes treatment published recently
"Diabetes Mellitus, Type 2"[MeSH] AND "Drug Therapy"[MeSH]
AND "Clinical Trial"[Publication Type] AND 2020:2024[Publication Date]
# Reviews on CRISPR in specific journal
"CRISPR-Cas Systems"[MeSH] AND "Nature"[Journal] AND "Review"[Publication Type]
# Specific author's recent work
"Smith AB"[Author] AND cancer[Title/Abstract] AND 2022:2024[Publication Date]
自動化のための E-utilities: スクリプトは、プログラムからアクセスするために NCBI E-utilities API を使用します:
- ESearch:PMID を検索して取得します
- EFetch:完全なメタデータを取得します
- ESummary:要約情報を取得します
- ELink:関連論文を見つけます
API の完全なドキュメントはreferences/pubmed_search.mdを参照してください。
ツールとスクリプト
search_google_scholar.py
Google Scholarを検索して、結果をエクスポートします。
機能:
- レート制限付きの自動検索
- ページネーションに対応
- 年の範囲で絞り込み
- JSONまたはBibTeXにエクスポート
- 被引用数の情報
使用方法:
# Basic search
python scripts/search_google_scholar.py "quantum computing"
# Advanced search with filters
python scripts/search_google_scholar.py "quantum computing" \
--year-start 2020 \
--year-end 2024 \
--limit 100 \
--sort-by citations \
--output quantum_papers.json
# Export directly to BibTeX
python scripts/search_google_scholar.py "machine learning" \
--limit 50 \
--format bibtex \
--output ml_papers.bib
search_pubmed.py
E-utilities APIを使用してPubMedを検索します。
機能:
- 複雑なクエリに対応(MeSH、フィールドタグ、ブール演算)
- 日付の範囲で絞り込み
- 出版物の種類で絞り込み
- メタデータを含む一括取得
- JSONまたはBibTeXにエクスポート
使用方法:
# Simple keyword search
python scripts/search_pubmed.py "CRISPR gene editing"
# Complex query with filters
python scripts/search_pubmed.py \
--query '"CRISPR-Cas Systems"[MeSH] AND "therapeutic"[Title/Abstract]' \
--date-start 2020-01-01 \
--date-end 2024-12-31 \
--publication-types "Clinical Trial,Review" \
--limit 200 \
--output crispr_therapeutic.json
# Export to BibTeX
python scripts/search_pubmed.py "Alzheimer's disease" \
--limit 100 \
--format bibtex \
--output alzheimers.bib
extract_metadata.py
論文の識別子から完全なメタデータを抽出します。
機能:
- DOI、PMID、arXiv ID、URLに対応
- CrossRef、PubMed、arXivのAPIに問い合わせ
- 複数の識別子の種類に対応
- 一括処理
- 複数の出力形式
使用方法:
# Single DOI
python scripts/extract_metadata.py --doi 10.1038/s41586-021-03819-2
# Single PMID
python scripts/extract_metadata.py --pmid 34265844
# Single arXiv ID
python scripts/extract_metadata.py --arxiv 2103.14030
# From URL
python scripts/extract_metadata.py \
--url "https://www.nature.com/articles/s41586-021-03819-2"
# Batch processing (file with one identifier per line)
python scripts/extract_metadata.py \
--input paper_ids.txt \
--output references.bib
# Different output formats
python scripts/extract_metadata.py \
--doi 10.1038/nature12345 \
--format json # or bibtex, yaml
validate_citations.py
BibTeXエントリの正確性と完全性を検証します。
機能:
- doi.orgとCrossRefを介したDOIの検証
- 必須フィールドの確認
- 重複の検出
- 書式の検証
- よくある問題の自動修正
- 詳細なレポート
使用方法:
# Basic validation
python scripts/validate_citations.py references.bib
# With auto-fix
python scripts/validate_citations.py references.bib \
--auto-fix \
--output fixed_references.bib
# Detailed validation report
python scripts/validate_citations.py references.bib \
--report validation_report.json \
--verbose
# Only check DOIs
python scripts/validate_citations.py references.bib \
--check-dois-only
format_bibtex.py
BibTeXファイルの書式を整え、クリーンアップします。
機能:
- 書式の標準化
- エントリの並べ替え(キー、年、著者別)
- 重複の削除
- 構文の検証
- よくあるエラーの修正
- 引用キーの規則を適用
使用方法:
# Basic formatting
python scripts/format_bibtex.py references.bib
# Sort by year (newest first)
python scripts/format_bibtex.py references.bib \
--sort year \
--descending \
--output sorted_refs.bib
# Remove duplicates
python scripts/format_bibtex.py references.bib \
--deduplicate \
--output clean_refs.bib
# Complete cleanup
python scripts/format_bibtex.py references.bib \
--deduplicate \
--sort year \
--validate \
--auto-fix \
--output final_refs.bib
doi_to_bibtex.py
DOIをBibTeXにすばやく変換します。
機能:
- 単一のDOIをすばやく変換
- 一括処理
- 複数の出力形式
- クリップボードに対応
使用方法:
# Single DOI
python scripts/doi_to_bibtex.py 10.1038/s41586-021-03819-2
# Multiple DOIs
python scripts/doi_to_bibtex.py \
10.1038/nature12345 \
10.1126/science.abc1234 \
10.1016/j.cell.2023.01.001
# From file (one DOI per line)
python scripts/doi_to_bibtex.py --input dois.txt --output references.bib
# Copy to clipboard
python scripts/doi_to_bibtex.py 10.1038/nature12345 --clipboard
ベストプラクティス
検索戦略
-
幅広く検索してから絞り込みます:
- 一般的な用語から始めて、分野の概要を把握します
- 具体的なキーワードやフィルターを使って絞り込みます
- 同義語や関連用語を使用します
-
複数の情報源を使用します:
- 幅広く網羅するにはGoogle Scholarを使用します
- 生物医学分野に特化した検索にはPubMedを使用します
- プレプリントにはarXivを使用します
- 結果を組み合わせて、網羅性を高めます
-
引用を活用します:
- 重要な論文を見つけるには「Cited by」を確認します
- 重要な論文の参考文献を確認します
- 引用ネットワークを使って関連研究を見つけます
-
検索内容を記録します:
- 検索クエリと日付を保存します
- 結果の件数を記録します
- 適用したフィルターや制限事項を記録します
メタデータの抽出
-
利用可能な場合は必ずDOIを使用します:
- 最も信頼性の高い識別子です
- 出版物への永続的なリンクです
- CrossRef経由で最適なメタデータを取得できます
-
抽出したメタデータを確認します:
- 著者名が正しいことを確認します
- ジャーナル名や学会名を確認します
- 出版年を確認します
- ページ番号と巻号を検証します
-
特殊なケースに対応します:
- プレプリント:リポジトリとIDを含めます
- 後に出版されたプレプリント:出版版を使用します
- 学会論文:学会名と開催地を含めます
- 書籍の章:書名と編者を含めます
-
一貫性を保ちます:
- 著者名の形式を統一します
- ジャーナルの略称を統一します
- DOIの形式を統一します(URL形式を推奨)
BibTeXの品質
-
規則に従います:
- 意味のある引用キーを使用します(FirstAuthor2024keyword)
- タイトルの大文字表記を保持するには{}で囲みます
- ページ範囲には単一のハイフンではなく--を使用します
- 近年の出版物にはすべてDOIフィールドを含めます
-
整理された状態を保ちます:
- 不要なフィールドを削除します
- 冗長な情報を含めません
- 書式を統一します
- 構文を定期的に検証します
-
体系的に整理します:
- 年またはトピック別に並べ替えます
- 関連する論文をグループ化します
- プロジェクトごとに別のファイルを使用します
- 重複を避けるため、慎重に統合します
検証
-
早期かつ頻繁に検証する:
- 引用を追加する際に確認します
- 提出前に参考文献リスト全体を検証します
- 手動で編集した後は再検証します
-
問題は速やかに修正する:
- DOI が無効:正しい識別子を見つけます
- フィールドの欠落:元の情報源から抽出します
- 重複:最適な版を選び、ほかを削除します
- 書式エラー:安全な場合は自動修正を使用します
-
重要な引用は手動で確認する:
- 重要な論文が正しく引用されていることを確認します
- 著者名が出版物の表記と一致していることを確認します
- ページ番号と巻号を確認します
- URL が最新であることを確認します
避けるべきよくある落とし穴
-
単一の情報源への偏り:Google Scholar または PubMed だけを使用する
- 解決策:網羅的に調査するため、複数のデータベースを検索します
-
メタデータを無条件に受け入れる:抽出した情報を検証しない
- 解決策:抽出したメタデータを元の情報源と照合して抜き取り確認します
-
DOI のエラーを無視する:参考文献に無効または誤った DOI が含まれている
- 解決策:最終提出前に検証を実行します
-
書式に一貫性がない:引用キーのスタイルや書式が混在している
- 解決策:format_bibtex.py を使用して標準化します
-
エントリの重複:同じ論文が異なるキーで複数回引用されている
- 解決策:検証時に重複検出を使用します
-
必須フィールドの欠落:BibTeX エントリが不完全である
- 解決策:検証を行い、必須フィールドがすべて揃っていることを確認します
-
古いプレプリント:出版済みの版があるのにプレプリントを引用する
- 解決策:プレプリントが出版済みか確認し、ジャーナル版に更新します
-
特殊文字の問題:文字が原因で LaTeX のコンパイルに失敗する
- 解決策:BibTeX では適切なエスケープまたは Unicode を使用します
-
提出前に検証しない:引用に誤りがある状態で提出する
- 解決策:最終確認として必ず検証を実行します
-
BibTeX エントリを手動で作成する:エントリを手入力する
- 解決策:必ずスクリプトを使い、メタデータの情報源から抽出します
ワークフローの例
例 1:論文の参考文献リストを作成する
# Step 1: Find key papers on your topic
python scripts/search_google_scholar.py "transformer neural networks" \
--year-start 2017 \
--limit 50 \
--output transformers_gs.json
python scripts/search_pubmed.py "deep learning medical imaging" \
--date-start 2020 \
--limit 50 \
--output medical_dl_pm.json
# Step 2: Extract metadata from search results
python scripts/extract_metadata.py \
--input transformers_gs.json \
--output transformers.bib
python scripts/extract_metadata.py \
--input medical_dl_pm.json \
--output medical.bib
# Step 3: Add specific papers you already know
python scripts/doi_to_bibtex.py 10.1038/s41586-021-03819-2 >> specific.bib
python scripts/doi_to_bibtex.py 10.1126/science.aam9317 >> specific.bib
# Step 4: Combine all BibTeX files
cat transformers.bib medical.bib specific.bib > combined.bib
# Step 5: Format and deduplicate
python scripts/format_bibtex.py combined.bib \
--deduplicate \
--sort year \
--descending \
--output formatted.bib
# Step 6: Validate
python scripts/validate_citations.py formatted.bib \
--auto-fix \
--report validation.json \
--output final_references.bib
# Step 7: Review any issues
cat validation.json | grep -A 3 '"errors"'
# Step 8: Use in LaTeX
# \bibliography{final_references}
例 2:DOI のリストを変換する
# You have a text file with DOIs (one per line)
# dois.txt contains:
# 10.1038/s41586-021-03819-2
# 10.1126/science.aam9317
# 10.1016/j.cell.2023.01.001
# Convert all to BibTeX
python scripts/doi_to_bibtex.py --input dois.txt --output references.bib
# Validate the result
python scripts/validate_citations.py references.bib --verbose
例 3:既存の BibTeX ファイルを整理する
# You have a messy BibTeX file from various sources
# Clean it up systematically
# Step 1: Format and standardize
python scripts/format_bibtex.py messy_references.bib \
--output step1_formatted.bib
# Step 2: Remove duplicates
python scripts/format_bibtex.py step1_formatted.bib \
--deduplicate \
--output step2_deduplicated.bib
# Step 3: Validate and auto-fix
python scripts/validate_citations.py step2_deduplicated.bib \
--auto-fix \
--output step3_validated.bib
# Step 4: Sort by year
python scripts/format_bibtex.py step3_validated.bib \
--sort year \
--descending \
--output clean_references.bib
# Step 5: Final validation report
python scripts/validate_citations.py clean_references.bib \
--report final_validation.json \
--verbose
# Review report
cat final_validation.json
例 4:代表的な論文を見つけて引用する
# Find highly cited papers on a topic
python scripts/search_google_scholar.py "AlphaFold protein structure" \
--year-start 2020 \
--year-end 2024 \
--sort-by citations \
--limit 20 \
--output alphafold_seminal.json
# Extract the top 10 by citation count
# (script will have included citation counts in JSON)
# Convert to BibTeX
python scripts/extract_metadata.py \
--input alphafold_seminal.json \
--output alphafold_refs.bib
# The BibTeX file now contains the most influential papers
ほかのスキルとの連携
文献レビュー スキル
引用管理は、文献レビューの技術的な基盤を提供します:
- 文献レビュー:複数のデータベースを対象とした体系的な検索と統合
- 引用管理:メタデータの抽出と検証
組み合わせたワークフロー:
- literature-review を使用して体系的な検索方法を適用します
- citation-management を使用して引用を抽出し、検証します
- literature-review を使用して調査結果を統合します
- citation-management を使用して参考文献の正確性を確保します
科学論文執筆スキル
引用管理は、科学論文執筆に正確な参考文献を提供します:
- 検証済みの BibTeX を LaTeX 原稿で使えるようにエクスポートします
- 引用が出版基準に合致していることを確認します
- ジャーナルの要件に従って参考文献を書式設定します
投稿先テンプレート スキル
引用管理は、投稿可能な原稿を作成するために投稿先テンプレートと連携します:
- 投稿先ごとに異なる引用スタイルが必要です
- 適切な書式の参考文献を生成します
- 引用が投稿先の要件を満たしていることを検証します
リソース
同梱リソース
リファレンス(references/ 内):
google_scholar_search.md:Google Scholar の検索ガイド完全版pubmed_search.md:PubMed および E-utilities API のドキュメントmetadata_extraction.md:メタデータのソースとフィールド要件citation_validation.md:検証基準と品質チェックbibtex_formatting.md:BibTeX のエントリータイプと書式ルール
スクリプト(scripts/ 内):
search_google_scholar.py:Google Scholar の検索を自動化search_pubmed.py:PubMed E-utilities API クライアントextract_metadata.py:汎用メタデータ抽出ツールvalidate_citations.py:引用の検証と確認format_bibtex.py:BibTeX のフォーマッターとクリーナーdoi_to_bibtex.py:DOI から BibTeX への簡易コンバーター
アセット(assets/ 内):
bibtex_template.bib:すべてのタイプを網羅した BibTeX エントリーの例citation_checklist.md:品質保証チェックリスト
外部リソース
検索エンジン:
- Google Scholar:https://scholar.google.com/
- PubMed:https://pubmed.ncbi.nlm.nih.gov/
- PubMed の詳細検索:https://pubmed.ncbi.nlm.nih.gov/advanced/
メタデータ API:
- CrossRef API:https://api.crossref.org/
- PubMed E-utilities:https://www.ncbi.nlm.nih.gov/books/NBK25501/
- arXiv API:https://arxiv.org/help/api/
- DataCite API:https://api.datacite.org/
ツールとバリデーター:
- MeSH ブラウザー:https://meshb.nlm.nih.gov/search
- DOI リゾルバー:https://doi.org/
- BibTeX の書式:http://www.bibtex.org/Format/
引用スタイル:
- BibTeX のドキュメント:http://www.bibtex.org/
- LaTeX の参考文献管理:https://www.overleaf.com/learn/latex/Bibliography_management
依存関係
必須の Python パッケージ
# Core dependencies
pip install requests # HTTP requests for APIs
pip install bibtexparser # BibTeX parsing and formatting
pip install biopython # PubMed E-utilities access
# Optional (for Google Scholar)
pip install scholarly # Google Scholar API wrapper
# or
pip install selenium # For more robust Scholar scraping
オプションのツール
# For advanced validation
pip install crossref-commons # Enhanced CrossRef API access
pip install pylatexenc # LaTeX special character handling
概要
引用管理スキルでは、次のことができます。
- Google Scholar と PubMed の包括的な検索機能
- DOI、PMID、arXiv ID、URL からのメタデータ抽出の自動化
- DOI の検証と完全性チェックによる引用の検証
- 標準化ツールとクリーニングツールを使ったBibTeX の書式設定
- 検証とレポート作成による品質保証
- 科学論文執筆のワークフローとの統合
- 文書化された検索方法と抽出方法による再現性の確保
このスキルを活用して、研究全体を通じて引用の正確性と完全性を保ち、出版可能な品質の参考文献リストを作成してください。