validate-references
关于
This skill validates BibTeX bibliographies by checking DOI resolution via Crossref, URL availability, required fields, and encoding consistency. Use it to audit reference lists before publication or submission. It's ideal for developers needing automated citation quality assurance.
快速安装
Claude Code
推荐npx skills add pjt222/agent-almanac -a claude-code/plugin add https://github.com/pjt222/agent-almanacgit clone https://github.com/pjt222/agent-almanac.git ~/.claude/skills/validate-references在 Claude Code 中复制并粘贴此命令以安装该技能
技能文档
name: validate-references description: > BibTeX-Einträge auf Korrektheit, Vollständigkeit und Aktualität prüfen durch DOI-Auflösung gegen Crossref, URL-Erreichbarkeitsprüfung, Validierung erforderlicher Felder pro Eintragstyp und Zeichenkodierungskonsistenz. Verwenden, wenn ein Literaturverzeichnis vor der Einreichung oder Veröffentlichung auditiert werden soll. license: MIT allowed-tools: Read Grep Glob WebFetch WebSearch metadata: author: Philipp Thoss version: "1.0" domain: citations complexity: intermediate language: R tags: citations, validation, doi-resolution, url-checking, bibtex locale: de source_locale: en source_commit: 6f65f316 translator: claude-sonnet-4-6 translation_date: 2026-03-16
Referenzen validieren
BibTeX-Einträge auf Korrektheit, Vollständigkeit und Aktualität prüfen durch DOI-Auflösung, URL-Prüfung, Pflichtfeldvalidierung und Zeichenkodierungskonsistenz.
Wann verwenden
- Auditierung eines Literaturverzeichnisses vor Zeitschrifteneinreichung
- Überprüfung, ob alle DOIs auf die richtigen Artikel verweisen
- Erkennung defekter URLs in Bibliographieeinträgen
- Sicherstellung, dass alle BibTeX-Einträge die erforderlichen Felder für ihren Typ haben
- Prüfung auf Zeichenkodierungsprobleme, die LaTeX-Kompilierungsfehler verursachen
- Abgleich von BibTeX-Metadaten mit den tatsächlichen veröffentlichten Versionen
Eingaben
- Erforderlich: BibTeX-Datei (.bib) oder BibEntry-Objekt zur Validierung
- Erforderlich: Validierungsumfang (Felder, DOIs, URLs oder alle)
- Optional: Crossref-API-Schlüssel für höhere Abfragegrenzen
- Optional: Zeitüberschreitung für URL-Prüfungen (Standard: 10 Sekunden)
- Optional: Benutzerdefinierte Pflichtfelder über den BibTeX-Standard hinaus
- Optional: Zulässige URL-Domänen (für das Herausfiltern institutioneller Proxy-URLs)
Vorgehensweise
Schritt 1: Bibliographie laden und Struktur analysieren
Die BibTeX-Datei parsen und die Zusammensetzung der Einträge katalogisieren:
- Datei parsen:
RefManageR::ReadBib()verwenden, um die .bib-Datei zu laden. Parsing-Warnungen und -Fehler aufzeichnen. - Eintragstypen zählen: Anzahl der Einträge nach Typ zusammenstellen (article, book, inproceedings, misc usw.).
- Felder inventarisieren: Für jeden Eintrag die vorhandenen und fehlenden Felder auflisten.
- Zeichenkodierung prüfen: Nicht-ASCII-Zeichen erkennen und verifizieren, dass sie korrekte LaTeX-Escapes verwenden.
Erwartet: Alle Einträge werden erfolgreich geparst, mit einer Zusammenfassung der Eintragstypen und markierten Kodierungsproblemen.
Bei Fehler: Falls das Parsen fehlschlägt, den fehlerhaften Eintrag durch zeilenweise Isolierung lokalisieren. Häufige Ursachen: nicht-geschlossene Klammern, fehlende Kommas zwischen Feldern, ungültiges UTF-8.
Schritt 2: Pflichtfelder pro Eintragstyp validieren
Jeden Eintrag gegen die BibTeX-Feldanforderungen prüfen:
- Standardfelder prüfen: Für jeden Eintragstyp die erforderlichen Felder validieren:
| Eintragstyp | Erforderliche Felder |
|---|---|
| article | author, title, journal, year, volume |
| book | author/editor, title, publisher, year |
| inproceedings | author, title, booktitle, year |
| incollection | author, title, booktitle, publisher, year |
| phdthesis | author, title, school, year |
| mastersthesis | author, title, school, year |
| techreport | author, title, institution, year |
| misc | (keine streng erforderlich, aber author, title, year empfohlen) |
- Optionale Felder empfehlen: Fehlende, aber empfohlene Felder markieren (pages, doi, url, abstract).
- Benutzerdefinierte Anforderungen: Falls angegeben, zusätzliche benutzerdefinierte Pflichtfelder prüfen.
- Bericht erstellen: Einen Validierungsbericht erstellen, der fehlende Felder nach Eintrag gruppiert auflistet.
Erwartet: Jeder Eintrag hat alle erforderlichen Felder, oder ein Bericht listet die spezifischen Lücken auf.
Bei Fehler: Falls erforderliche Felder fehlen, versuchen, sie über DOI-Abfrage (Schritt 3) zu ergänzen. Falls kein DOI vorhanden ist, die Einträge für manuelle Ergänzung markieren.
Schritt 3: DOIs gegen Crossref validieren
Jeden DOI auflösen und die Metadaten mit dem BibTeX-Eintrag abgleichen:
- DOIs extrahieren: DOI-Felder aus allen Einträgen sammeln. DOI-Format normalisieren (Präfixe wie „https://doi.org/" entfernen).
- Crossref abfragen:
rcrossref::cr_works(dois = doi_list)oder die Crossref-REST-API verwenden, um die veröffentlichten Metadaten zu den einzelnen DOIs abzurufen. - Felder abgleichen: Lokale BibTeX-Felder mit den von Crossref zurückgegebenen Daten vergleichen:
- Titel: Fuzzy-Abgleich (Groß-/Kleinschreibungs- und Interpunktionsunterschiede ignorieren)
- Autoren: Nachnamen und Initialen des ersten Autors vergleichen
- Jahr: Exakte Übereinstimmung
- Journal: Abgekürzte vs. ausgeschriebene Formen vergleichen
- Volumen/Seiten: Exakte Übereinstimmung falls vorhanden
- Abweichungen markieren: Einträge kennzeichnen, bei denen die lokalen Metadaten wesentlich von der Crossref-Version abweichen.
- Einträge ohne DOI: Als Einträge markieren, die nicht automatisch verifiziert werden können.
Erwartet: Alle DOIs werden erfolgreich aufgelöst und die Metadaten stimmen mit den lokalen Einträgen überein, oder Abweichungen werden dokumentiert.
Bei Fehler: Falls ein DOI nicht aufgelöst werden kann (HTTP 404), ist der DOI möglicherweise falsch. In Crossref nach dem Titel suchen, um den korrekten DOI zu finden. Falls die API-Abfragegrenze erreicht ist, mit einem API-Schlüssel (mailto-Parameter) authentifizieren.
Schritt 4: URLs auf Erreichbarkeit prüfen
Alle URL-Felder auf funktionale Erreichbarkeit testen:
- URLs extrahieren: URL- und URL-Felder aus allen Einträgen sammeln, einschließlich DOI-basierter URLs.
- HTTP-HEAD-Anfragen: HEAD-Anfrage an jede URL senden mit konfigurierter Zeitüberschreitung. Statuscode aufzeichnen.
- Ergebnisse klassifizieren:
- 200 OK: URL erreichbar
- 301/302 Umleitung: Finale URL aufzeichnen, prüfen ob inhaltlich korrekt
- 403/404: URL defekt oder zugriffsbeschränkt
- Zeitüberschreitung: Netzwerkproblem oder Server nicht erreichbar
- SSL-Fehler: Zertifikatsproblem
- Bericht erstellen: Defekte URLs mit vorgeschlagenen Korrekturen auflisten (z.B. aktualisierte URL nach Umleitung).
Erwartet: Alle URLs sind erreichbar oder defekte URLs sind dokumentiert mit Vorschlägen für Korrekturen.
Bei Fehler: Falls viele URLs zugriffsbeschränkt sind (403), kann dies auf institutionellen Proxy-Zugriff hindeuten. Bekannte akademische Domains (Verlagswebsites) von der strikten Prüfung ausnehmen und nur auf 404-Fehler prüfen.
Schritt 5: Validierungsbericht zusammenstellen
Alle Ergebnisse in einem umfassenden Bericht konsolidieren:
- Zusammenfassung: Gesamtzahl geprüfter Einträge, Bestehensrate, Anzahl der Probleme nach Kategorie.
- Detailbericht: Jeden Eintrag mit Problemen auflisten:
- Fehlende Pflichtfelder
- DOI-Metadaten-Abweichungen
- Defekte URLs
- Zeichenkodierungsprobleme
- Priorität: Probleme nach Schweregrad ordnen (fehlende Pflichtfelder > falscher DOI > defekte URL > fehlende optionale Felder).
- Korrekturen vorschlagen: Wo möglich, automatische Korrekturen vorschlagen (z.B. DOI aus Crossref-Suche, aktualisierte URL nach Umleitung).
Erwartet: Ein vollständiger Validierungsbericht mit priorisierter Problemliste und vorgeschlagenen Korrekturen.
Bei Fehler: Falls der Bericht zu viele Probleme enthält, nach Schweregrad filtern und auf die Pflichtfeld- und DOI-Korrekturen fokussieren, die für die Einreichung kritisch sind.
Validierung
- BibTeX-Datei ohne Fehler geparst
- Alle Eintragstypen auf Pflichtfelder geprüft
- DOIs gegen Crossref aufgelöst und Metadaten abgeglichen
- DOI-Abweichungen dokumentiert mit Korrekturvorschlägen
- URLs auf Erreichbarkeit getestet
- Defekte URLs mit vorgeschlagenen Alternativen dokumentiert
- Zeichenkodierungsprobleme identifiziert
- Validierungsbericht mit priorisierter Problemliste erstellt
- Einträge ohne DOI für manuelle Überprüfung markiert
Häufige Fehler
- Crossref-API-Ratenlimit: Ohne authentifizierte Anfragen (mit
mailto-Parameter) liegt das Limit bei etwa 50 Anfragen pro Sekunde. Bei großen Bibliographien Anfragen drosseln oder einen API-Schlüssel verwenden. - DOI-Format-Inkonsistenz: DOIs können als
10.1234/example,doi:10.1234/exampleoderhttps://doi.org/10.1234/examplegespeichert sein. Vor dem Abgleich normalisieren. - Zeitschriftennamen-Varianten: Abgekürzte und ausgeschriebene Zeitschriftennamen können beim Abgleich als Abweichung erscheinen. Eine Zuordnungstabelle oder NLM-Katalogabfrage verwenden.
- URL-Prüfung bei institutionellem Proxy: Viele akademische URLs sind hinter Anmeldeportalen zugänglich. HTTP-403-Fehler für bekannte Verlagsdomänen (Elsevier, Springer, Wiley) nicht als „defekt" melden.
- Falsch-positive beim Titelabgleich: Sonderzeichen, Hochstellungen und mathematische Notation im Titel können den Fuzzy-Abgleich verfälschen. Immer die Ergebnisse manuell überprüfen.
- Veraltete DOIs: Manche DOIs verweisen auf Preprints statt auf die finale veröffentlichte Version. Den DOI-Typ (Preprint vs. Verlagsversion) in den Crossref-Metadaten prüfen.
Verwandte Skills
manage-bibliography-- Bibliographiedateien erstellen und bereinigen vor der Validierungformat-citations-- Zitate formatieren nach Validierung der zugrundeliegenden Datencreate-quarto-report-- validierte Bibliographie in Quarto-Dokumente integrieren
GitHub 仓库
相关推荐技能
llamaguard
其他LlamaGuard是Meta推出的7-8B参数内容审核模型,专门用于过滤LLM的输入和输出内容。它能检测六大安全风险类别(暴力/仇恨、性内容、武器、违禁品、自残、犯罪计划),准确率达94-95%。开发者可通过HuggingFace、vLLM或Sagemaker快速部署,并能与NeMo Guardrails集成实现自动化安全防护。
cost-optimization
其他这个Claude Skill帮助开发者优化云成本,通过资源调整、标记策略和预留实例来降低AWS、Azure和GCP的开支。它适用于减少云支出、分析基础设施成本或实施成本治理策略的场景。关键功能包括提供成本可视化、资源规模调整指导和定价模型优化建议。
quantizing-models-bitsandbytes
其他这个Skill使用bitsandbytes库量化大语言模型,能在GPU内存有限时通过8位或4位量化减少50-75%内存占用,同时保持精度损失最小。它支持INT8、NF4、FP4等多种量化格式,可与HuggingFace Transformers无缝集成,适用于需要部署更大模型或加速推理的场景。还提供QLoRA训练和8位优化器支持,让开发者能轻松实现高效模型压缩。
dispatching-parallel-agents
其他该Skill用于并行处理3个以上无依赖关系的独立故障,可为每个问题域分派专属Claude代理同时执行调查修复。它通过并发处理多个独立问题显著提升故障排查效率,特别适用于测试文件、子系统等无共享状态的场景。
