I want to reference two ArXiv-papers from the same first author. However, something weird happens, when I append a third author to one of the papers.
Both entries in the bibliography show an additional pair of parentheses () that is actually intended to give the year.
But in this case, I don't want to specify the year!
In the minimal example that I attached, the parenthesis vanish when "Goofy Goof" is removed from the author list of "disney2015".
It looks to me very much like a bug in bibtex or in this style class.
Can somebody help me with that?
I would like to know whether it happens to you as well. I tried it with bibtex 0.99d and kpathsea 6.1.0 and kpathsea 6.1.1
I would like to show you my example bibtex file (bibtest.bib
):
@article{disney2013,
archivePrefix = {arXiv},
arxivId = {1307.9998},
author = {Donald Duck and Dagobert Duck and Daisy Duck and Mickey Mouse},
eprint = {1307.9998},
url = {http://arxiv.org/abs/1307.9998}
}
@article{disney2015,
archivePrefix = {arXiv},
arxivId = {1411.9999},
eprint = {1411.9999},
author = {Donald Duck and Pippi Longstockings and Goofy Goof},
url = {http://arxiv.org/abs/1411.9999}
}
@article{disney2017,
archivePrefix = {arXiv},
arxivId = {1411.9997},
eprint = {1411.9997},
author = {Mickey Mouse},
url = {http://arxiv.org/abs/1411.9997}
}
That could be run from this tex file:
\documentclass[superscriptaddress,twocolumn]{revtex4-1}
\usepackage[utf8]{inputenc}
\usepackage[english]{babel}
\usepackage{hyperref}
\begin{document}
\cite{disney2015}
\cite{disney2013}
\cite{disney2017}
\bibliographystyle{apsrev4-1}
\bibliography{bibtest}
\end{document}
Thanks in Advance,
Mechanix
Best Answer
Your question is quite unclear to me. Are you forced to use the document class and the
bst
you used in your MWE? For example, for publishing an article? Then do not change the predefined behaviour of the template you use!If you are not forced to use the class and bibliography style, why do you not just use another one? It is much easier to customize
biblatex
than to create an own style withmakebst
.The specific reason for the parenthes-related issues you're encountering is that you're using a bibliography style which requires a
year
field if the entry is of type@article
. (Separately, there's also an issue with missingjournal
fields; more about that later.) That's why you get an empty()
pair when you omit theyear
field. Because the style is not designed not to have ayear
field for entries of type@article
, no test is performed to check if the field is missing. So the "error" you get is more a feature than a bug, because you're using the entry type in a way it is not built for.Your MWE generates several warnings you should read and correct. For example, you need to add a class option for the society and journal.
You also provide the file extensions
.bst
for the style (don't!) and.bib
for the bib file (don't!) in the arguments of\bibliographystyle
and\bibliography
. Finally, if you want to get rid of warnings about the missing fieldjournal
, you have to add something likejournal = {MISSING},
(changeMISSING
to what you need) to each of your bib entries.Please see the following MWE. I've added class options, augmented the entries with
year
andjournal
fields, and corrected the syntax of the\bibliographystyle
and\bibliography
directives.If you insist in not writing an year into the bib file (Why btw?) you have to copy the used style file and change it or better to use
biblatex
and the possibilities to customize it ...Edit:
As @Mico mentioned in his comment I add his advice here:
Instead of back-filling the missing
journal
andyear
fields for entries of type@article
, which sort of treats the symptoms of the problem, why not treat the cause of the problem directly? My recommendation would be not to use the entry type@article
for arxiv publications. Instead, I'd use the entry type@misc
, which doesn't require theyear
field to begin with (or thejournal
field, for that matter).