# JabRef – Bibliography interface to LaTeX

Anyone who has written any report with proper, formatted (as demanded by the international community) references, will agree that they are indeed a pain! JabRef is a nice attempt at solving this problem by using a database like approach to bibliography. This article will briefly explain how to get started.

Firstly, you can install it on Windows, download from website, and Ubuntu has it in its repos already 🙂 (as usual!). The main concept is relatively simple. Start off by creating a new database, and adding bibtex entries to this. BibTeX entries are found in most places where you can download papers – IEEEXplore, ScienceDirect, Citeseer, etc. For IEEEXplore, Open link to paper, Download Citation, choose BibTeX and there you are!

For example, typically a transactions article in IEEEXplore would start with “@ARTICLE{5039…”. The first word after @ will help in choosing an appropriate datatype* which is asked the moment you click on add. Then you can just copy-paste the BibTeX entry in the BibTeX source, and the columns in the earlier tabs will be filled out for you. Once this is done I would recommend using a more sensible BibTeXkey rather than some arbitrary number.

So once you are done generating databases in JabRef, its time to add them. The best part here, is that it will add only the references that you have used \cite{key} for. Also, it will automatically order them at place of citation, i.e. early citations, smaller numbers, and so on.

At the place you need to put the bibliography (end) you write in your .tex file,
\bibliographystyle{bib style filename} \bibliography{database1_name,database2_name}  Bibliography style files, have a .bst extension. Again, there is no need to put extensions, both in the style and the database names. Note that you also don’t need to use the standard \begin{thebibliography} part.

Now, in case you are using good old compilation from your terminal, you first need to call  $bibtex filename (without extension)$ pdflatex / latex filename.tex 
LyX / Kile and others should be able to handle that directly I suppose.

That should get your references ready. In case the citations appear as [?] its because it requires another compilation! 😛 The first compile checks what are being used, and creates a document ready to insert, and the second inserts.

* Am still wondering how to get the other datatypes to show the Conf title. Something is fishy. For now, “article” for everything works well.

UPDATE (15Jun10): I am now able to get all types working! For \documentclass[conference]{IEEEtran} I just needed to add
\bibliographystyle{IEEEtran} \bibliography{reportbib}
where reportbib.bib was the flie managed by JabRef. I guess as long as the document class and the style are matching it should be able to generate the bibliography!

UPDATE (24Jan11): Use the curly braces {} to ensure capitalization is kept. Else the IEEEtran style along with JabRef is converting the entire title as a sentence for “article” type.
e.g. Paper about {MIMO} – would be the title in the JabRef to get an output as – “Paper about MIMO” and prevent “Paper about mimo”