Take the 2-minute tour ×
TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. It's 100% free, no registration required.

How can I validate the correctness a biblatex .bib file?

Where validate means checking for:

  • Duplicate keys
  • Missing mandatory fields

What tools do you use?

share|improve this question
    
jabref does it. –  Harish Kumar Apr 27 at 0:22

3 Answers 3

up vote 4 down vote accepted

To validate my .bib files, I put together a Python script called Biblatex Checker.

It checks for missing fields, provides suggestions for common mistakes when using biblatex and identifies duplicate IDs.

It's based on BibTeX Check by Fabian Beck, which can be used for BibTeX files.

share|improve this answer
    
I've love to hear what other LaTex users are using though! –  Pez Cuckow Apr 26 at 16:40
1  
I use biber --tool -V bib.bib. It doesn't complain about missing fields but I didn't try yet to find out how to change it (or in case in can't do it yet to make a feature request). –  Ulrike Fischer Apr 26 at 18:52
    
Actually, -V in tool mode didn't do anything in 1.8. It does in 1.9 dev version. For example it will report on mandatory fields missing from the default data model (in the tool mode config file). You can add any datamodel constraint you want to the data model (either by biblatex macros or via the biber config file for tool mode). The blx-dm.def file that comes with biblatex contains the default data model and its mandatory field constraints. –  PLK Apr 26 at 22:42
    
@PLK: I get additional output with -V. E.g. warnings like Field 'timestamp' invalid in data model. On the other side: I get much less output with biber 2.0. And it doesn't write a xx_bibertool.bib. –  Ulrike Fischer Apr 27 at 14:19
    
I only fixed the 2.0 branch yesterday so you should download it again from SF and try it ... I have created an Enhancement issue on the biber github tracker for such things (like the biblatex one but for biber 2.0). –  PLK Apr 27 at 14:29

I use jabref. Install jabref, set it to biblatex mode. To do this go to OptionsPreferences. In the window that opens, selectAdvanced and check BibLaTeX mode as shown below.

enter image description here

Then open your .bib file using jabref. Select the entries to be cleaned up. Under Tools menu, select cleanup entries. This window opens:

enter image description here

Now you know what to do :)

For duplicate keys, simply go to ToolsAutogenerate BibTeX keys. It will rewrite the duplicate key with some other name.

share|improve this answer
\documentclass{article}
\begin{document}
\nocite{*}
\bibliographystyle{plain}
\bibliography{mybib}
\end{document}

Run latex and bibtex and then look into the logfile of the bibtex run (<filename>.blg). It has all warnings.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.