PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : bibtex und crossref



wurzel20
15-11-2005, 09:35
Hallo,
seit einiger Zeit macht mich mein bibtex wahnsinnig. Da gibt es nun viele schöne crossrefs auf größere Sammelbände (spart Schreibarbeit...), aber der korrekte Verweis erfolgt nur, wenn mindestens ein Einzelartikel VOR dem Eintrag des ganzen Bandes in der .bib erfolgt. Das ist natürlich dann nicht mehr so ganz alphabetisch (oder ich muss mir andere Kürzel einfallen lassen...). Ein kleines Beispiel:

@Proceedings{Chro1986,
title = {Internationales Symposium über die Lengyel-Kultur Nové Vozokany 1984},
year = {1986},
OPTkey = {},
OPTbooktitle = {},
editor = {Bohuslav Chropovský},
OPTvolume = {},
OPTnumber = {},
OPTseries = {},
address = {Nitra - Wien},
OPTmonth = {},
OPTorganization = {},
publisher = {Archeologický Ústav SAV and Institut für Ur- und Frühgeschichte der Universität Wien},
OPTnote = {},
OPTannote = {}
}

@InProceedings{Pavu1986,
author = {Juraj Pavúk},
title = {Einige aktuelle Probleme zum Studium der Lengyel-Kultur},
crossref = {Chro1986},
OPTkey = {},
OPTbooktitle = {},
pages = {213-219},
OPTyear = {},
OPTeditor = {},
OPTvolume = {},
OPTnumber = {},
OPTseries = {},
OPTaddress = {},
OPTmonth = {},
OPTorganization = {},
OPTpublisher = {},
OPTnote = {},
OPTannote = {}
}


Erzeugt folgende Fehlermeldung:

A bad cross reference---entry "Pavu1986"
refers to entry "Chro1986", which doesn't exist


Diese Fehlermeldung verschwindet, wenn ich den Konferenzbandeintrag an das Ende der .bib Datei verschiebe.
Woran liegt das?

etilli33
15-11-2005, 09:46
Hi Wurzel

ich glaube, bibtex scannt die datei nur nach vorne. Wenn also ein Cross auftaucht, "erinnert" es sich nicht, dass da schon mal was war. Ich bin eigentlich erstaunt, dass bei mir diese Fehler nicht aufgetreten sind, aber JabRef, das ich zur Lit-Verwaltung nehme, hat hier genau präventiv den Mechanismus eingebaut, dass zuerst die Einträge mit Autor gespeichert werden, und dann die mit Herausgeber. In sich alphabetisch, man müsste also nur wissen, um was für einen Typ es sich handelt, dann findet man das auch in größeren Bibfiles.

Ja, vielleicht kann man durch ein Skript einen doppelten Scan von bibtex fordern, sodass es dann im Nachhinein auch die vorderen Einträge findet. Ist aber wohl etwas komplizierter zu machen, sonst gäb es das doch schon.

Gruß
Till

wurzel20
15-11-2005, 10:01
Hallo Till,
heißen Dank. Habe eben auch eine Lösung gefunden: LaTeX-Begleiter Seite 420: "Ein Eintrag, auf den verwiesen wird, muß in den Datenbankdateien hinter dem letzten Eintrag stehen, der auf ihn verweist." So ist das also...
JabRef sieht aber auch schön aus.
Grüße
Wurzel (Marcus)