Bibliografiedatenbank und Sortierung

Eine .bib-Datei ist eine Klartext-Datenbank für bibliografische Angaben. Jedes Werk wird als Eintrag geschrieben: ein Typ (etwa @article) und Felder (author, title, …), die die Rohdaten erfassen, nicht das Erscheinungsbild. Während die BibTeX-Seite erklärt, *wie die Werkzeuge ausgeführt werden*, beschreibt diese Seite die .bib-Datei selbst: Eintragstypen, Feldsyntax und die Reihenfolge, in der die Literaturliste ausgegeben wird.

Der große Nutzen einer .bib-Datei ist Wiederverwendung. Wenn du sie einmal sorgfältig pflegst, kannst du sie über mehrere Arbeiten hinweg nutzen; wechselt die Zeitschrift oder Konferenz, änderst du nur den Stil, nie die Daten. Die Build-Reihenfolge (latex → bibtex → latex → latex) und die Wahl eines .bst-Stils behandelt die [BibTeX-Seite](/learn/bibliography/bibtex-page), deshalb lassen wir sie hier aus.

Aufbau eines Eintrags

Ein einzelner Eintrag beginnt mit @ und einem Typ; danach stehen in geschweiften Klammern ein Zitierschlüssel und die zugehörigen Felder. Das Grundgerüst sieht so aus:

references.bib
@article{shannon1948,
  author  = {Shannon, Claude E.},
  title   = {A Mathematical Theory of Communication},
  journal = {Bell System Technical Journal},
  volume  = {27},
  number  = {3},
  pages   = {379--423},
  year    = {1948}
}

Das shannon1948 direkt nach der öffnenden Klammer ist der Zitierschlüssel: ein selbst gewählter Bezeichner, der im Dokument exakt zu \cite{shannon1948} passen muss (häufig ist surname+year, aber erlaubt ist alles, solange es in der Datei eindeutig ist). Danach folgen fieldname = {value}-Paare, durch Kommas getrennt; ein Komma nach dem letzten Feld ist optional. Werte stehen in geschweiften Klammern { } oder doppelten Anführungszeichen " ", und rein numerische Werte wie year = 1948 dürfen unverpackt bleiben. Typ- und Feldnamen sind nicht groß-/kleinschreibungssensitiv (@Article und @article sind dasselbe).

Eintragstypen

Der Typ sagt, was ein Werk ist: ein Zeitschriftenaufsatz, ein Buch, ein Beitrag in einem Tagungsband. Mit der Typwahl erfahrt der Stil, welche Felder in welcher Reihenfolge gesetzt werden. Die folgende Tabelle listet die Standardtypen des klassischen BibTeX. Jeder Typ hat Pflichtfelder (fehlt eines, erscheint eine Warnung) und optionale Felder; diese Zuordnung legt der Stil (.bst) fest.

TypWofür er stehtWichtige Pflichtfelder
@articleAufsatz in einer Zeitschrift oder Periodikaauthor, title, journal, year
@bookBuch mit genanntem Verlagauthor oder editor, title, publisher, year
@inproceedingsBeitrag in einem Tagungsbandauthor, title, booktitle, year
@conferenceAlias für @inproceedings (Scribe-Kompatibilität)(wie @inproceedings)
@incollectionBetiteltes Kapitel in einem Sammelbandauthor, title, booktitle, publisher, year
@inbookTeil eines Buches (Kapitel oder Seitenbereich)author/editor, title, chapter oder pages, publisher, year
@phdthesisDoktorarbeitauthor, title, school, year
@mastersthesisMasterarbeitauthor, title, school, year
@techreportBericht einer Institutionauthor, title, institution, year
@manualTechnisches oder Software-Handbuchtitle (mindestens)
@unpublishedUnveröffentlichtes Manuskript oder Entwurfauthor, title, note
@miscAlles, was oben nicht passtkeine Pflichtfelder (mit note usw. ergänzen)

Zwei Paare führen oft zu Verwechslungen. @inbook vs. @incollection: Ersteres ist *ein Teil eines einzelnen Buches* (etwa Kapitel 3 deines eigenen Buches); Letzteres ist *ein in sich geschlossener Beitrag mit eigenem Autor in einem Sammelband*. @inproceedings vs. @conference sind funktional identisch; @conference ist nur ein älterer Scribe-kompatibler Alias. Für Abschlussarbeiten wählst du je nach Grad @phdthesis oder @mastersthesis. Wenn nichts passt, nimm @misc und ergänze howpublished oder note.

Modernes biblatex deckt fast all diese Typen ab und ergänzt weitere: @online (Alias @electronic) für Webquellen, ein allgemeines @report (dessen Feld type z. B. “technical report” angibt) und ein gradunabhängiges @thesis (auch hier steht die Art in type). @online eignet sich für arXiv- und Preprint-Datensätze, zusammen mit den unten beschriebenen eprint-Feldern. Beachte, dass diese neueren Typen biber/biblatex voraussetzen; klassisches bibtex + .bst versteht sie unter Umständen nicht.

Felder schreiben

Felder sind name = {value}-Paare, die Eigenschaften eines Werks festhalten. Die häufigsten Felder über alle Typen hinweg sind:

  • author / editor — Autor oder Herausgeber; die Syntax für mehrere Autoren steht im nächsten Abschnitt.
  • title — der Titel: Aufsatztitel, Buchtitel, Kapitelüberschrift usw.
  • journal / booktitle — der Zeitschriftentitel (@article) oder der Titel des enthaltenen Buchs bzw. Tagungsbands (@inproceedings, @incollection).
  • year / date — das Veröffentlichungsjahr. Klassisches BibTeX verwendet year (plus optional month); biblatex bevorzugt eine ISO-Form wie date = {2026-05-01} (auch nur date = {2026} ist in Ordnung).
  • volume / number — Band/Ausgabe. pages = {379--423} nutzt einen doppelten Bindestrich für den Bereich (ausgegeben wird ein Halbgeviertstrich “–”).
  • publisher / institution / school — Verlag / herausgebende Institution (Berichte) / gradverleihende Universität (Abschlussarbeiten).
  • doi / url — DOI (nur der 10.…-Körper) und URL; der Stil gibt sie als Links aus.
  • eprint / eprinttype / eprintclass — biblatex-Felder für Preprints. Für arXiv: eprint = {2405.00001}, eprinttype = {arxiv} (früher archivePrefix) und eprintclass (früher primaryClass) für das Fachgebiet.
  • note / howpublished — freie Anmerkungen / “wie veröffentlicht” (dort landet bei @misc oft die URL).

Welche Felder Pflichtfelder oder optional sind, hängt vom Typ ab; die Entscheidung trifft der Stil. Fehlt ein Pflichtfeld, warnt BibTeX; ein unbekanntes Feld wird (in den meisten Stilen) still ignoriert. Zusätzliche Felder aus importierten Metadaten richten daher keinen Schaden an.

Autorennamen und Klammerschutz

author ist das Feld, das am häufigsten falsch geschrieben wird. Mehrere Autoren trennst du mit and (nicht mit Kommas). Jeden Namen kannst du auf zwei Arten schreiben: in natürlicher Reihenfolge First Last (Claude E. Shannon) oder nach dem Muster Last, First (Shannon, Claude E.). Die Nachname-zuerst-Form ist am sichersten, wenn ein Nachname aus mehreren Wörtern besteht oder einen Präfix wie “von / van der” trägt: van der Plas, Geert zeigt klar, dass “van der” zum Nachnamen gehört (in natürlicher Reihenfolge würdest du die Einheit stattdessen klammern: Geert {Van der Plas}).

references.bib
@book{example2026,
  author    = {Knuth, Donald E. and Lamport, Leslie},
  editor    = {{The TeX Users Group}},
  title     = {On the {NASA} Mission to {TeX}},
  publisher = {Addison-Wesley},
  year      = {2026}
}

Wenn es zu viele Autoren gibt, um alle aufzulisten, schließe mit and others ab; der Stil macht daraus “et al.”. Ist der Autor eine Organisation (The TeX Users Group), wird sie üblicherweise in doppelte geschweifte Klammern {{...}} gesetzt, damit ein and im Namen nicht als Namenstrenner missverstanden wird.

Ebenso wichtig ist in der Praxis der Schutz von Großbuchstaben. Viele Stile wandeln Titel in sentence case um; dabei würden Eigennamen und Akronyme wie NASA oder TeX zu Nasa oder Tex verstümmelt. Setze den Bereich, der erhalten bleiben soll, in ein zusätzliches Klammerpaartitle = {On the {NASA} Mission to {TeX}} — dann ist er vor der Umwandlung geschützt.

@string-Makros und Kommentare

Wenn derselbe Wert wiederholt vorkommt, kannst du mit @string ein Makro definieren. Den definierten Namen verwendest du an einer Wertposition (ohne Klammern) und verkettest ihn mit # mit anderen Zeichenketten. Das ist praktisch, um zwischen abgekürzten und ausgeschriebenen Zeitschriftentiteln zu wechseln.

references.bib
@string{bstj = {Bell System Technical Journal}}

@article{shannon1948,
  author  = {Shannon, Claude E.},
  title   = {A Mathematical Theory of Communication},
  journal = bstj,
  year    = {1948}
}

Bei Kommentaren lohnt sich eine Klarstellung: In einer .bib-Datei ist % kein Kommentarzeichen (anders als im LaTeX-Text). Klassisches bibtex ignoriert jeden Text außerhalb eines Eintrags (@...{}); eine Notiz als normaler Text zwischen Einträgen schadet also nicht. biber (das Backend von biblatex) ist strenger und warnt bei losem Text außerhalb von Einträgen. Die portable Form ist @comment{ ... }; ihr Inhalt wird vollständig übersprungen.

Reihenfolge der Liste

Die Reihenfolge, in der Einträge erscheinen, hat nichts mit der Reihenfolge in der .bib-Datei zu tun. Die Entscheidung läuft über zwei unterschiedliche Mechanismen:

Im klassischen BibTeX legt der Stil (.bst) die Reihenfolge fest. Du hast kaum direkten Einfluss; den Stil zu wählen heißt, die Sortierung zu wählen. plain und alpha sortieren zum Beispiel alphabetisch nach Autor, während unsrt die Reihenfolge der ersten Zitierung nutzt; technische Stile wie ieeetr tun das ebenfalls. Bei denselben Daten ändert schon der Wechsel von \bibliographystyle{plain} zu \bibliographystyle{unsrt} die Reihenfolge. Für Japanisch sortieren pbibtex / upbibtex nach Codepoint (siehe die [BibTeX-Seite](/learn/bibliography/bibtex-page)).

Unter biblatex steuerst du die Reihenfolge ausdrücklich mit der Option sorting= — unabhängig vom Stil, etwa mit \usepackage[sorting=nyt]{biblatex}. Sortierschlüssel werden als Buchstabenkombinationen geschrieben: n = name, y = year, t = title. Häufige Optionen sind:

OptionSchlüsselreihenfolgeBedeutung
ntyname → title → yearName, dann Titel, dann Jahr (biblatex-Standard)
nytname → year → titleName, Jahr, Titel (beliebt für Autor-Jahr-Stile)
yntyear → name → titleJahr, dann Name, dann Titel (chronologisch)
ydntyear (absteigend) → name → titleNeueste Jahre zuerst, dann ältere
none(keine Sortierung)Zitierreihenfolge (entspricht unsrt)

Kurz gesagt: Soll die Zitierreihenfolge erhalten bleiben, wähle unter BibTeX den Stil unsrt oder unter biblatex sorting=none. Für alphabetische Sortierung nimm unter BibTeX plain oder unter biblatex den Standard nty (bei Autor-Jahr auch nyt). In beiden Fällen musst du die Einträge in der .bib nie umsortieren; die Reihenfolge ist vollständig Aufgabe des Werkzeugs.