Sección 7.1

BibTeX

Muchos de los documentos que realizaremos con LaTeX (artículos, libros, informes) irán acompañados de referencias bibliográficas a otras fuentes. LaTeX tiene dos formas distintas de tratar la bibliografía: integrando las referencias en el propio documento o utilizando un documento auxiliar, una pequeña base de datos en texto plano, que contiene las referencias que vamos a incluir en nuestro documento. En esta lección describiremos ambas alternativas.

Bibliografía integrada en el documento

Si necesitamos incluir una bibliografía que solo vamos a usar para un único documento podemos optar por una opción sencilla que consiste en integrar la bibliografía dentro del propio documento. Para ello LaTeX proporciona un entorno llamado thebibliography donde insertaremos la bibliografía utilizada. Generalmente se coloca al final del documento, justo antes de \end{document}

\begin{thebibliography}{9}

\bibitem{lamport94}
  Leslie Lamport,
  \emph{\LaTeX: A Document Preparation System}.
  Addison Wesley, Massachusetts,
  2nd Edition,
  1994.
\end{thebibliography}

Como se puede ver, el entorno tiene un argumento obligatorio (junto a \begin) que indica a LaTeX cuál va a ser el ancho de la etiqueta de las referencias bibliográficas que se incluirán. No importa el número en sí sino el número de cifras que tiene. Por ejemplo, si escribimos '56' indica que tendremos hasta un máximo de 99 citas, por lo que el ancho de la etiqueta será como máximo de dos dígitos.

Dentro del entorno escribiremos las referencias como tal. Comienzan con la instrucción \bibitem{clave}. La clave es el identificador único de la referencia y será lo que se emplee para referenciar desde el texto a nuestras referencias bibliográficas, como veremos más adelante. Es recomendable seguir algún mnemotécnico para poner nombre a las referencias. Una forma muy utilizada es poner el apellido del autor, seguido del año de publicación. Si un autor tiene más publicaciones en el mismo año se suele incluir una palabra significativa del título o, simplemente, una letra 'a', 'b', etc.

Todo lo que va a continuación es el texto de la referencia y hay que escribirlo tal cual queremos que se presente (por ejemplo, en la referencia anterior el título está enfatizado). Los saltos de línea solo se utilizan para mejorar la legibilidad de la referencia ya que LaTeX los ignorará.

Aunque puede ser útil, realmente esta forma de gestionar la bibliografía no nos permite reutilizar. Esto significa que si queremos volver a utilizar una de estas referencias tendríamos que copiarla y pegarla en el nuevo documento en el que la quisiésemos usar. Además, cualquier error encontrado en una referencia nos obligaría a revisar todos los documentos en los que usásemos esta referencia. Para evitar estos problemas LaTeX proporciona un sistema mucho más interesante para gestionar nuestra bibliografía: BibTeX.

Base de datos en BibTeX

Una base de datos BibTeX se guarda en un fichero de texto plano (es decir, legible con un editor de texto simple) con extensión .bib. Su estructura es muy simple ya que solo contiene referencias en el siguiente formato:

@ARTICLE{Quijano2013,
    author = {Quijano-Sánchez, Lara and Recio-García, Juan A. and Díaz-Agudo, Belén and Jiménez-Díaz, Guillermo},
     title = {Social Factors in Group Recommender Systems},
   journal = {ACM Transactions on Intelligent Systems and Technology},
    volume = {4},
    number = {1},
      year = {2013},
     pages = {122 -- 168},
      issn = {2157-6904},
       doi = {10.1145/2414425.2414433}
}

Cada referencia comienza con el tipo de la referencia, que se escribe con @tipo. Existen una serie de tipos predefinidos en LaTeX: artículo de revista o @article (como el del ejemplo), libro o @book, artículos presentados en conferencias o @inproceedings, etc. Más adelante veremos las plantillas para cada uno de ellos.

Después del tipo hay que poner la llave izquierda { e inmediatamente después la clave BibTeX o identificador único de la referencia (en el ejemplo es Quijano2013). Para escribir este identificador seguiremos un convenio similar al que vimos en la sección anterior.

Después aparecerán todos los campos relevantes de la referencia: título, autor, volumen, año de publicación, etc. Cada tipo de documento sigue una plantilla más o menos fija. Más adelante veremos algunas de las más utilizadas. Como se puede ver en el ejemplo, cada campo de la referencia se escribe con:

Un caso especial de campo son los nombres de los autores. Se pueden escribir tanto en el formato "apellidos nombre" como "nombre apellidos". Luego podremos personalizar en qué orden va dependiendo de en qué formato pidamos a BibTeX que compile las referencias. Para separar dos autores tendremos que poner la palabra and.

También hay que destacar que en estas referencias, lo que pongamos entre {} se escribirá tal cual. Por ejemplo, es útil si necesitamos preservar las mayúsculas/minúsculas de una palabra ya que, si no se utilizan, LaTeX pone en minúscula todo el texto de la referencia.

Por último, para añadir la bibliografía, escribiremos al final del documento (pero antes de \end{document}) lo siguiente:

\bibliographystyle{plain}
\bibliography{biblio1,biblio2,...,biblioN}

La primera línea indica cuál es el estilo en el que se va escribir la bibliografía (cómo aparecen los autores, si el título está enfatizado, negritas...). Existe una enorme cantidad de estilos predefinidos en LaTeX (plain, apa, acm, chicago, ieeetr, etc) por lo que elegiremos el que más nos convenga para el documento que estamos escribiendo. También podemos utilizar estilos personalizados, añadiendo al directorio en el que esté el archivo .tex un archivo de estilo bibliográfico (que tiene extensión .bst). A continuación se escriben los distintos archivos .bib que componen nuestra bibliografía, sin espacios entre comas y sin el .bib.

Ahora que sabemos cómo organizar nuestras referencias de una manera más cómoda solo nos falta saber cómo citar estas referencias desde nuestro documento.

Citar elementos bibliográficos

Para añadir una referencia bibliográfica a nuestro documento solo tenemos que escribir la siguiente instrucción en el lugar en el que queremos insertar la referencia:

\cite{clave}

LaTeX se encargará de añadir la cita, darla formato, añadir la referencia cruzada y numerar adecuadamente las referencias. Para añadir correctamente la bibliografía, el proceso de compilación ha de realizarse en varias fases. En particular hay que ejecutar:

pdflatex >> bibtex >> pdflatex >> pdflatex

De esta forma añade a la sección de la bibliografía del documento solo los elementos que han sido referenciados (que pueden ser solo un subconjunto de los que tenemos en el documento de la bibliografía).

Podemos añadir múltiples citas de una vez:

\cite{articulo1, articulo2, articulo3}

Incluso podemos añadir información adicional a la cita incrustada en el texto como la página de un documento:

\cite[p.~215]{libro1}

Para añadir a la sección de la bibliografía alguna cita bibliográfica que no aparecerá referenciada en el texto, entonces tendremos que añadir una falsa referencia con \nocite{clave}. En particular \nocite{*} incluye todas las citas de la bibliografía, estén o no referenciadas en el documento.

Tipos de plantillas en BibTeX

A modo de resumen, a continuación describiremos brevemente las plantillas que usa BibTeX para los principales tipos de documentos que soporta, así como campos principales que podemos rellenar en ellos (el nombre del campo aparece tal cual lo tenemos que escribir en BibTeX).

@article

Artículo de una revista (magazine o journal)

  • Campos obligatorios: author, title, journal, year.
  • Campos opcionales: doi, volume, number, pages, month, note.
@book

Libro publicado

  • Campos obligatorios: author o editor, title, publisher, year.
  • Campos opcionales: doi, volume o number, series, address, edition, month, note.
@proceedings

Actas de un congreso o conferencia.

  • Campos obligatorios: title, year.
  • Campos opcionales: doi, editor, volume o number, series, address, month, organization, publisher, note.
@techreport

Informe técnico.

  • Campos obligatorios: author, title, institution, year.
  • Campos opcionales: doi, type, number, address, month, note.
@mastersthesis

Tesis de Máster, Trabajo de Fin de Máster o Tesina.

  • Campos obligatorios: author, title, school, year.
  • Campos opcionales: doi, type (por ejemplo "Tesina"), address, month, note.
@phdthesis

Tesis doctoral.

  • Campos obligatorios: author, title, year, school.
  • Campos opcionales: doi, address, month, keywords, note.
@inproceedings

Referencia a un artículo publicado en las actas de un congreso.

  • Campos obligatorios: author, title, booktitle, year.
  • Campos opcionales: doi, editor, volume o number, series, pages, address, month, organization, publisher, note.
@conference

Referencia similar al anterior.

  • Campos obligatorios: author, title, booktitle, year.
  • Campos opcionales: doi, editor, volume o number, series, pages, address, month, organization, publisher, note.
@inbook

Sección de un libro (por ejemplo, un capítulo de libro)

  • Campos obligatorios: author o editor, title, chapter, pages, publisher, year.
  • Campos opcionales: doi, volume/number, series, type, address, edition, month, note.
@misc

Esta plantilla es útil para incluir cualquier otro tipo de publicación para la que no tenemos una plantilla concreta (por ejemplo, una página web, una película, un software...)

  • Solo usa parámetros opcionales: author, title, howpublished, month, year, url, note.