# Reference does not appear in the bibliography

I have an issue about the generation of bibliography. Indeed, only the first reference is displayed at the end of the document and the hyperlink and reference corresponding for the second one don't appear.

Here is my LaTeX source:

\RequirePackage{filecontents}
\begin{filecontents}{sample.bib}
@article{SNIa,
title={Measurements of $\Omega$ and $\Lambda$ from 42 high-redshift supernovae},
author={Perlmutter S. et al.},
journal={ApJ},
year={1995}
}
@article{Tegmark1998,
title={Measuring the Galaxy Power Spectrum with Future Redshift Surveys},
author={Tegmark M., Hamilton A.J.S., Strauss M.S., Szalay A.S.},
journal={ApJ},
pages={499-555.},
year={1998}
}
\end{filecontents}

\documentclass[11pt,french,oneside]{report}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[francais]{babel}
\usepackage{indentfirst}
\usepackage{lastpage}
\usepackage{amsmath}
\usepackage{fancyhdr}
\usepackage{url}
\usepackage{epsfig}
\usepackage{graphics}
\usepackage{multirow}
\usepackage{vmargin}
\usepackage{float}
\usepackage{psboxit,pstcol}
\usepackage[style=ext-authoryear, backend=biber]{biblatex}
\usepackage{hyperref}

...

% well displayed
SNIa \cite{SNIa} et valid\'ee depuis par d'autres d'observations

...
% bad displayed
dans le papier de \cite{Tegmark1998}


About the end of the document, I have only the first reference:

Anyone could see what's wrong? Is there a missing bracket in the .bib file?

## 1 Answer

The code in the question is not quite a minimal example (it is not compilable since it misses the \begin{document}...\end{document}), but it already shows a few issues related to the .bib entries.

1. Names should be given either in the format "last, first"/"family, given" or "first last"/"given family" where "first"/"given" may be the full given name or an initial. The format "last f." will lead to confusion. See How should I type author names in a bib file? Don't write Sigfridsson E., write

author = {Sigfridsson, E.},

2. Several authors need to be separated with and regardless of the desired output. See also How to properly write multiple authors in bibtex file?. If there are more than two commas in one name, Biber will throw an error. (This happened for Tegmark1998, hence it does not show.)

author = {Tegmark, M. and Hamilton, A. J. S. and Strauss, M. S. and Szalay, A. S.},

3. If you don't want to give all authors in the .bib file and want to truncate the list manually you should not be using et al. instead you should write and others. See LaTeX doesn't recognize "et al." in the Bibliography.

author={Perlmutter, S. and others},


I would usually recommend to give all authors and let biblatex do the truncation unless the list is just too long (some astronomy papers have hundreds of authors). This paper does not have hundreds of authors, but it already has quite a few. So it could be justified to stick with and others.

Issue number 2 is what Biber tries to tell you about with its warning

WARN - Name "Tegmark M., Hamilton A.J.S., Strauss M.S., Szalay A.S." has too many commas:
skipping name


The simplified MWE

\RequirePackage{filecontents}
\begin{filecontents}{\jobname.bib}
@article{SNIa,
title   = {Measurements of {$\Omega$} and {$\Lambda$} from 42 high-redshift supernovae},
author  = {Perlmutter, S. and others},
journal = {ApJ},
year    = {1995},
}
@article{Tegmark1998,
title   = {Measuring the Galaxy Power Spectrum with Future Redshift Surveys},
author  = {Tegmark, M. and Hamilton, A. J. S. and Strauss, M. S. and Szalay, A. S.},
journal = {ApJ},
pages   = {499-555},
year    = {1998}
}
\end{filecontents}

\documentclass[11pt,french,oneside]{report}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[francais]{babel}
\usepackage[style=ext-authoryear, backend=biber]{biblatex}
\usepackage{hyperref}

\addbibresource{\jobname.bib}

\begin{document}
SNIa \autocite{SNIa} et validée depuis par d'autres d'observations
dans le papier de \textcite{Tegmark1998}

\printbibliography
\end{document}


gives

(I removed the period from the pages field and protected the math mode with curly braces. I also switched to UTF-8 in the example instead of latin1.)