I use Mendeley to generate the bibliography.bib file and biblatex to process it. I noticed a problem with arXiv references for which the field primaryClass is defined. Consider the following example:
\documentclass[12pt,a4paper]{article}
\usepackage[style=numeric,backend=biber]{biblatex}
\begin{filecontents}{bibliography.bib}
@misc{Witten1994,
archivePrefix = {arXiv},
arxivId = {hep-th/9411102},
author = {Witten, Edward},
eprint = {9411102},
month = {nov},
primaryClass = {hep-th},
title = {Monopoles and Four-Manifolds},
year = {1994}
}
\end{filecontents}
\addbibresource{bibliography.bib}
\usepackage{hyperref}
\begin{document}
\cite{Witten1994}
\printbibliography
\end{document}
The bibliogaphy entry was copied from the file generated by Mendeley. The code produces the following:
However, when I click on the link, it takes me to https://arxiv.org/abs/9411102, which does not exist. The correct hyperlink should be https://arxiv.org/abs/hep-th/9411102. My questions are:
How can I correct the hyperlink?
How can I get arXiv:hep-th/9411102, which is the correct arxivId, instead of arXiv: 9411102 [hep-th]?
Only solutions which do not require me to modify the bibliography file are acceptable.
Thank you very much for your help!
Update 1: This is the non-modified output generated by Mendeley.
@misc{Witten1994,
abstract = {Recent developments in the understanding of {\$}N=2{\$} supersymmetric Yang-Mills theory in four dimensions suggest a new point of view about Donaldson theory of four manifolds: instead of defining four-manifold invariants by counting {\$}SU(2){\$} instantons, one can define equivalent four-manifold invariants by counting solutions of a non-linear equation with an abelian gauge group. This is a ``dual'' equation in which the gauge group is the dual of the maximal torus of {\$}SU(2){\$}. The new viewpoint suggests many new results about the Donaldson invariants.},
archivePrefix = {arXiv},
arxivId = {hep-th/9411102},
author = {Witten, Edward},
eprint = {9411102},
file = {:home/ylpu/Dropbox/Knihovna/files/Witten - 1994 - Monopoles and Four-Manifolds.pdf:pdf},
month = {nov},
primaryClass = {hep-th},
title = {{Monopoles and Four-Manifolds}},
url = {https://arxiv.org/pdf/hep-th/9411102.pdf http://arxiv.org/abs/hep-th/9411102},
year = {1994}
}
Update 2: I changed article to misc in the code above because the image was generated using misc and not article.
Discussion about @article vs. @online/@misc:
The options in Mendeley are either Generic or Journal Article; they produce @misc and @article, respectively. As far as I know there is no option for @online. I include below another example, where [1] is a citation of a journal article, and [2] and [3] are citations of the same article from arXiv using @misc and @article, respectively. I personally prefer @misc for arXiv articles because I do not see any reason for "In: (Nov. 1994)". On the other hand, I like "In:" for journal articles because it marks the beginning of the publication data - journal, volume, date, page.


biblatexwould expect you to give iteprint = {hep-th/9411102}andeprinttype = {arxiv}. I believe you'd get expected results with that. That given, there's still the issue of how to convince Medley to do that... – gusbrs Jun 16 '18 at 15:25month = {nov},should bemonth = nov,(without braces!),month = {12},or if you likemonth = 12.month = {nov}is wrong even though Biber salvages it, BibTeX on the other hand is stumped. Thebiblatexsolution would bedate = {1994-11},but that is not backwards compatible with BibTeX. – moewe Jun 16 '18 at 15:35@articleis equally wrong. Only papers published in a (scientific) journal should be@articles. If the paper on the arXiv was not published in a journal,@onlineis the better choice. See also https://tex.stackexchange.com/q/415115/35864. Furthermore theurlfield can only contain one URL. Two or more URLs will inevitably break and cause a mess. – moewe Jun 16 '18 at 15:47pubstate = {\bibstring{prepublished}}. There is no need to consider pre-prints as second-class objects, especially for citation purposes. – Coby Viner Jun 16 '18 at 18:35journal = {arXiv},to arXiv-@articles to avoid this clumsiness. That certainly makes the output less awkward. We discussed the merits of using@articlefor arXiv entries below https://tex.stackexchange.com/a/415117/35864 (as already commented below the answer here) but we couldn't come to a satisfying conclusion. – moewe Jun 17 '18 at 07:39