Βιβλιογραφικές αναφορές
Αυτό το μάθημα παρουσιάζει τα βασικά για τις βάσεις δεδομένων με βιβλιογραφικές αναφορές. Μάθετε πώς να φτιάχνετε τις δικές σας βάσεις και πώς να τις χρησιμοποιείτε σε έγγραφα με τις δύο κύριες ροές εργασίας που υπάρχουν.
Για βιβλιογραφικές αναφορές, αν και μπορείτε να συμπεριλάβετε πηγές αναφοράς απευθείας στο έγγραφό σας, συνήθως θα αποκτήσετε αυτές τις πληροφορίες από ένα ή περισσότερα εξωτερικά αρχεία. Ένα τέτοιο αρχείο είναι μια βάση δεδομένων βιβλιογραφικών αναφορών, που περιέχει τις πληροφορίες σε μια μορφή φιλική προς επεξεργασία. Χρησιμοποιώντας μία ή περισσότερες βάσεις δεδομένων βιβλιογραφικών αναφορών μπορείτε να επαναχρησιμοποιήσετε πληροφορίες και να αποφύγετε τη χειροκίνητη μορφοποίηση.
Βάσεις δεδομένων βιβλιογραφικών αναφορών
Οι βάσεις δεδομένων βιβλιογραφικών αναφορών αναφέρονται συνήθως ως «αρχεία BibTeX» και έχουν την επέκταση .bib. Περιέχουν μία ή περισσότερες εγγραφές, μία για κάθε αναφορά, και μέσα σε κάθε εγγραφή υπάρχουν μια σειρά πεδίων. Ας δούμε ένα παράδειγμα.
@article{Thomas2008,
author = {Thomas, Christine M. and Liu, Tianbiao and Hall, Michael B.
and Darensbourg, Marcetta Y.},
title = {Series of Mixed Valent {Fe(II)Fe(I)} Complexes That Model the
{H(OX)} State of [{FeFe}]Hydrogenase: Redox Properties,
Density-Functional Theory Investigation, and Reactivity with
Extrinsic {CO}},
journal = {Inorg. Chem.},
year = {2008},
volume = {47},
number = {15},
pages = {7009-7024},
doi = {10.1021/ic800654a},
}
@book{Graham1995,
author = {Ronald L. Graham and Donald E. Knuth and Oren Patashnik},
title = {Concrete Mathematics},
publisher = {Addison-Wesley},
year = {1995},
}
Εδώ έχουμε μία εγγραφή για ένα άρθρο και μία άλλη για ένα βιβλίο· αυτοί είναι οι πιο συνηθισμένοι τύποι. Κάθε εγγραφή της βάσης αρχίζει με ένα @, όπως φαίνεται, και όλη η πληροφορία της βρίσκεται μέσα σε ένα ζεύγος από άγκιστρα.
Τα διάφορα πεδία που χρειαζόμαστε δίνονται σε μορφή κλειδιού-τιμής, εκτός από αυτό που είναι γνωστό ως «κλειδί»: το «όνομα» της αναφοράς. Μπορείτε να χρησιμοποιήσετε ό,τι θέλετε για το «κλειδί», καθώς είναι απλώς μια ετικέτα, αλλά παραπάνω έχουμε επιλέξει να χρησιμοποιήσουμε το όνομα ενός συγγραφέα μαζί με το έτος: αυτή είναι μια κοινή προσέγγιση.
Το ποια πεδία ακριβώς χρειάζεστε εξαρτάται από τον τύπο της εγγραφής, αλλά τα περισσότερα από αυτά είναι μάλλον προφανή. Θα παρατηρήσετε ότι στο πεδίο author, τα ονόματα των συγγραφέων χωρίζονται με and. Αυτό είναι ουσιώδες: η μορφή της έξοδου χρειάζεται να γνωρίζει ποιος συγγραφέας είναι ποιος. Θα παρατηρήσετε επίσης ότι στον τίτλο του άρθρου, ορισμένα στοιχεία είναι σε ένα επιπλέον ζεύγος από άγκιστρα· αυτά γράφονται έτσι για να αποφευχθεί οποιαδήποτε αλλαγή κεφαλαίων-πεζών.
Η επεξεργασία αρχείων .bib με το χέρι είναι μάλλον κουραστική, οπότε συνήθως χρησιμοποιούνται ειδικά προγράμματα για την επεξεργασίας τους. Το JabRef χρησιμοποιείται ευρέως και τρέχει σε όλα τα λειτουργικά συστήματα, αλλά υπάρχουν και πολλά άλλα παρόμοια προγράμματα. Εάν η αναφορά περιέχει DOI (Digital Object Identifier), μπορείτε να δοκιμάσετε το doi2bib για να αποκτήσετε εύκολα την εγγραφή BibTeX. Αλλά βεβαιωθείτε ότι η καταχώριση είναι σωστή!
Εδώ θα χρησιμοποιήσουμε τη σύντομη βάση δεδομένων που δώσαμε παραπάνω για τα παραδείγματά μας: την έχουμε «αποθηκεύσει» ως learnlatex.bib.
Μεταφορά της πληροφορίας από τη βάση δεδομένων
Για να εισαγάγετε την πληροφορία στο έγγραφό σας, υπάρχουν τρία βήματα. Πρώτον, τρέξτε το LaTeX στο έγγραφό σας, κάτι που δημιουργεί ένα αρχείο με τη λίστα των αναφορών που περιέχει το έγγραφό σας. Δεύτερον, τρέξτε ένα πρόγραμμα που παίρνει πληροφορίες από τη βάση δεδομένων βιβλιογραφικών αναφορών, επιλέγει αυτές που χρησιμοποιείτε και τις βάζει σε σειρά. Τέλος, τρέξτε ξανά το LaTeX στο έγγραφό σας, ώστε το LaTeX να χρησιμοποιήσει αυτές τις πληροφορίες για να εισαγάγει τις αναφορές σας. Συνήθως απαιτούνται τουλάχιστον δύο τρεξίματα του LaTeX στο τελευταίο βήμα για να εισαχθούν σωστά όλες οι αναφορές.
Για το δεύτερο βήμα, υπάρχουν δύο συστήματα που χρησιμοποιούνται ευρέως: το BibTeX και το Biber. Το Biber χρησιμοποιείται μόνο μαζί με ένα πακέτο LaTeX που ονομάζεται biblatex, ενώ το BibTeX χρησιμοποιείται είτε χωρίς κάποιο επιπλέον πακέτο είτε με το πακέτο natbib.
Η εκτέλεση ενός δεύτερου προγράμματος, εκτός από το LaTeX, που χρειάζεται για την επεξεργασία της βιβλιογραφίας, γίνεται διαφορετικά σε κάθε επεξεργαστή κειμένου LaTeX. Για τα διαδικτυακά παραδείγματά μας, κάποια προγράμματα τρέχουν στο υπόβαθρο και κάνουν τα πάντα με μία κίνηση. Ο επεξεργαστής σας μπορεί να έχει ένα μόνο κουμπί που να τρέχει όλα τα απαραίτητα βήματα ή μπορεί να χρειαστεί να εκτελέσετε το BibTeX ή το Biber χειροκίνητα μεταξύ των τρεξιμάτων του LaTeX.
Η μορφή των βιβλιογραφικών αναφορών στο κείμενο είναι ανεξάρτητη από τη βάση δεδομένων σας, και καθορίζεται από κάτι είναι γνωστό ως «στυλ». Θα δούμε ότι τα βιβλιογραφικά στυλ λειτουργούν ελαφρώς διαφορετικά στη ροή εργασίας με το BibTeX και σε αυτή με το biblatex, αλλά η γενική ιδέα παραμένει: μπορούμε να επιλέξουμε πώς εμφανίζονται οι αναφορές.
Η ροή εργασίας με το BibTeX και το natbib
Αν και είναι δυνατόν να εισαγάγετε αναφορές σε ένα έγγραφο LaTeX χωρίς να φορτώσετε κάποιο πακέτο, αυτό δεν προσφέρει πολλές δυνατότητες. Εδώ θα χρησιμοποιήσουμε το πακέτο natbib, το οποίο μας επιτρέπει να δημιουργούμε διαφορετικούς τύπους αναφορών και προσφέρει πολλά βιβλιογραφικά στυλ.
Η βασική δομή του εγγράφου μας φαίνεται στο ακόλουθο παράδειγμα.
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{natbib}
\begin{document}
The mathematics showcase is from \citet{Graham1995}, whereas
there is some chemistry in \citet{Thomas2008}.
Some parenthetical citations: \citep{Graham1995}
and then \citep[p.~56]{Thomas2008}.
\citep[See][pp.~45--48]{Graham1995}
Together \citep{Graham1995,Thomas2008}
\bibliographystyle{plainnat}
\bibliography{learnlatex}
\end{document}
Δείτε ότι μπορούμε να δημιουργήσουμε αναφορές σε διαφορετικές εγγραφές στη βάση δίνοντας το κλειδί τους. Το πακέτο natbib παρέχει στυλ αναφορών τόσο ως κείμενο όσο και μέσα σε παρενθέσεις, με τις εντολές \citet και \citep αντίστοιχα. Το βιβλιογραφικό στυλ επιλέγεται από τη γραμμή \bibliographystyle: εδώ χρησιμοποιήσαμε το στυλ plainnat. Η βιβλιογραφία εισάγεται στην πραγματικότητα από τη γραμμή \bibliography, η οποία επιλέγει επίσης τη βάση δεδομένων που θα χρησιμοποιηθεί· μπορούμε να έχουμε περισσότερα από ένα αρχεία χωρισμένα με κόμματα.
Αναφορές σε σελίδες μπορούν να προστεθούν στη βιβλιογραφική αναφορά με μια προαιρετική παράμετρο. Αν δοθούν δύο προαιρετικές παράμετροι, η πρώτη γράφεται μπροστά από την ετικέτα αναφοράς ως μια σύντομη σημείωση και η δεύτερη μετά την ετικέτα για αναφορά σε σελίδα.
Το παραπάνω παράδειγμα χρησιμοποιεί ένα βιβλιογραφικό στυλ που αναφέρει τα ονόματα των συγγραφέων και το έτος, αλλά μπορούν να χρησιμοποιηθούν και αριθμητικές αναφορές. Αυτό γίνεται προσθέτοντας την επιλογή numbers στη γραμμή του natbib.
Η ροή εργασίας με το biblatex
Το πακέτο biblatex λειτουργεί λίγο διαφορετικά από το natbib, καθώς επιλέγουμε τις βάσεις δεδομένων στο προοίμιο αλλά τις εκτυπώνουμε στο σώμα του εγγράφου. Υπάρχουν ορισμένες νέες εντολές για αυτά.
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[style=authoryear]{biblatex}
\addbibresource{learnlatex.bib} % file of reference info
\begin{document}
The mathematics showcase is from \autocite{Graham1995}.
Some more complex citations: \parencite{Graham1995} or
\textcite{Thomas2008} or possibly \citetitle{Graham1995}.
\autocite[56]{Thomas2008}
\autocite[See][45-48]{Graham1995}
Together \autocite{Thomas2008,Graham1995}
\printbibliography
\end{document}
Σημειώνεται ότι η εντολή \addbibresource απαιτεί το πλήρες όνομα του αρχείου της βάσης δεδομένων, ενώ στην εντολή \bibliography με το πακέτο natbib είχαμε παραλείψει την κατάληξη .bib. Επίσης, παρατηρήστε ότι το biblatex χρησιμοποιεί μάλλον μεγαλύτερα ονόματα για τις εντολές του, αλλά αυτά είναι όλα αρκετά εύκολο να τα μαντέψετε.
Και εδώ, το σύντομο κείμενο πριν και μετά την αναφορά μπορεί να εισαχθεί με τις προαιρετικές παραμέτρους. Σημειώστε ότι για τους αριθμούς σελίδων δεν χρειάζεται να δίνουμε το p.~ ή pp.~ (στα αγγλικά, το πρώτο χρησιμοποιείται για μία σελίδα ενώ το δεύτερο για περισσότερες), καθώς το biblatex μπορεί αυτόματα να προσθέσει το κατάλληλο πρόθεμα.
Στο biblatex, το βιβλιογραφικό στυλ επιλέγεται όταν φορτώνουμε το πακέτο. Εδώ χρησιμοποιήσαμε το στυλ authoryear, αλλά υπάρχει και ένα στυλ numeric , ενώ πολλά ακόμη είναι διαθέσιμα.
Επιλέγοντας μεταξύ του BibTeX και του biblatex
Αν και τόσο το BibTeX όσο και το biblatex λαμβάνουν την είσοδό τους μέσω αρχείων BibTeX και μπορούν να παράγουν δομικά παρόμοιο αποτέλεσμα στο έγγραφο, χρησιμοποιούν εντελώς διαφορετικούς τρόπους για να παραγάγουν αυτό το αποτέλεσμα. Αυτό σημαίνει ότι υπάρχουν κάποιες διαφορές μεταξύ των δύο προσεγγίσεων, οι οποίες μπορούν να σας βοηθήσουν να επιλέξετε ποια είναι η πιο κατάλληλη για εσάς.
Στη ροή εργασίας με το BibTeX, το βιβλιογραφικό στυλ τελικά υλοποιείται από ένα αρχείο .bst το οποίο επιλέγεται με την εντολή \bibliographystyle. Το biblatex δεν χρησιμοποιεί αρχεία .bst αλλά ένα διαφορετικό σύστημα. Εάν χρησιμοποιείτε ένα πρότυπο που συνοδεύεται από ένα αρχείο .bst ή σας έχει δοθεί ένα αρχείο .bst για το έργο σας, πρέπει να χρησιμοποιήσετε τη ροή εργασίας με το BibTeX και δεν μπορείτε να χρησιμοποιήσετε το biblatex.
Η διαφορετική προσέγγιση που υιοθετεί το biblatex έχει ως αποτέλεσμα ότι μπορείτε να τροποποιήσετε το αποτέλεσμα των εντολών βιβλιογραφικών αναφορών απευθείας στο προοίμιο του εγγράφου σας, χρησιμοποιώντας εντολές που βασίζονται στο LaTeX. Αντίθετα, τροποποιήσεις των στυλ .bst του BibTeX συνήθως απαιτούν εργασία με αυτά τα εξωτερικά αρχεία και χρειάζονται γνώση της γλώσσας προγραμματισμού του BibTeX. Γενικά, το biblatex θεωρείται ότι είναι πιο εύκολα προσαρμόσιμο σε σχέση με το BibTeX.
Στο biblatex είναι γενικά πιο εύκολο να υλοποιηθούν πιο περίπλοκα στυλ αναφορών με μια ευρύτερη γκάμα διαφορετικών εντολών αναφοράς. Προσφέρονται επίσης περισσότερες λειτουργίες που εξαρτώνται από τα συμφραζόμενα. Όλα αυτά είναι λιγότερο σημαντικά για τα βιβλιογραφικά στυλ που χρησιμοποιούνται συνήθως στις θετικές επιστήμες, αλλά μπορεί να φανούν πολύ χρήσιμα για ορισμένα πιο περίπλοκα στυλ σε περιοχές των ανθρωπιστικών επιστημών.
Το BibTeX μπορεί να ταξινομήσει σωστά μόνο χαρακτήρες US-ASCII (βασικούς λατινικούς) και βασίζεται σε «κόλπα» για να παρέχει ταξινόμηση για μη US-ASCII χαρακτήρες με βάση το US-ASCII. Με το Biber, το biblatex προσφέρει πλήρεις δυνατότητες ταξινόμησης Unicode. Έτσι, το biblatex είναι συνήθως προτιμότερο αν η βιβλιογραφία σας περιέχει χαρακτήρες πέρα από τους βασικούς λατινικούς.
Καθώς είναι πολύ παλαιότερο από το biblatex, το BibTeX είναι πιο καθιερωμένο από το biblatex, κάτι που σημαίνει ότι πολλοί εκδότες και περιοδικά αναμένουν βιβλιογραφίες που παράγονται μέσω της ροής εργασίας με το BibTeX. Αυτοί οι εκδότες δεν μπορούν ή γενικά δεν δέχονται υποβολές που χρησιμοποιούν το biblatex.
Το συμπέρασμα είναι: Ελέγξτε τις οδηγίες υποβολής αν υποβάλετε εργασία σε περιοδικό ή εκδότη. Αν σας δίνεται ένα αρχείο .bst, πρέπει να χρησιμοποιήσετε τη ροή εργασίας με το BibTeX. Αν θέλετε ένα σχετικά απλό στυλ βιβλιογραφίας και αναφορών και χρειάζεστε μόνο ταξινόμηση βασισμένη σε χαρακτήρες US-ASCII, η ροή εργασίας με το BibTeX θα πρέπει να είναι επαρκής. Αν χρειάζεστε πιο περίπλοκο στυλ αναφορών, μη αγγλική ταξινόμηση ή θέλετε πιο εύκολη πρόσβαση σε δυνατότητες προσαρμογής των στυλ αναφοράς και βιβλιογραφίας, εξετάστε τη χρήση του biblatex.
Ασκήσεις
Δοκιμάστε τα παραδείγματα τόσο του natbib όσο και του biblatex. Για το natbib, θα χρειαστεί να τρέξετε LaTeX, BibTeX, LaTeX, LaTeX. Για το biblatex, θα χρειαστεί να τρέξετε LaTeX, Biber, LaTeX. Βρείτε πώς μπορείτε να κάνετε αυτά στο πρόγραμμα επεξεργασίας που χρησιμοποιείτε, ή δοκιμάστε την αυτόματη διαδικασία που παρέχουν το Overleaf και το TeXLive.net.
Εξετάστε τι συμβαίνει όταν δημιουργείτε νέες εγγραφές στη βάση δεδομένων καθώς και νέες αναφορές στο κείμενο. Προσθέστε μία αναφορά που δεν υπάρχει στη βάση δεδομένων και δείτε πώς εμφανίζεται. Πειραματιστείτε με την επιλογή numeric του natbib και με την επιλογή style=numeric του biblatex.