Zotero needs a preprint category
In many subjects, a lot of scholarly work appears, and gets cited as a preprint.
The current solution for zotero is to classify the reference as a Journal Article, with the Publication field being the identifier.
This is a bad solution, because a pre-print archive is not a journal, and a preprint is not a journal article.
The bibtex entry recommended by arXiv for example, asks for preprint items to be ```@misc``` instead of ```@article```, and it should not have a ```journal``` field, but a ```eprinttype``` instead. This matters not just for a typographical aspect, but also for the automation aspects.
Where do they ask this? If this is how arXiv items should appear generally, I could adjust BBT to change the entry type.
Right now, BBT will add the
eprint
fields if you either:Library Catalog
toarXiv
orarXiv.org
and theJournal name
to the arXiv IDarXiv: <arXiv ID>
to the extra field on a line of its ownI also *read* it somewhere, but I don’t remember where rn.
The BBT solution would satisfy me, as long as having the ```arxiv:’’’ in the extra field of a published article still outputs both the Journal *and* the arxiv information inside the same ```@article’’’ bibtex entry.
I wouldn't trust samples from arXiv to be indicative of much. If they come out and give details on how these should be done, I'd be happy to modify BBT. Without that, there's always postscripts.
That is precisely what that does.
Sorry, I wasn't clear. I'm aware it does that and it is very useful. But I thought you were going to add a functionality that when the Publication field of a Journal article is empty AND you have the ```arxiv:``` info in the Extra field, then BBT would output a @misc bibtex entry..
*I wouldn't trust samples from arXiv to be indicative of much.*
They are not fantastic, but they are consistent with regards to this @misc convention.
I cannot find the page on arxiv.org that I thought I read regarding this issue, so maybe it does not exist. But a quick search reveals that I we are not the only ones thinking that @article is wrong for an arxiv preprint.
https://tex.stackexchange.com/questions/415115/format-of-article-without-journal-title-field-in-biblatex-bibliography-entries
https://tex.stackexchange.com/questions/219189/how-to-cite-an-unpublished-preprint-with-bibtex
https://latex.org/forum/viewtopic.php?t=3552
https://ergodicity.net/2016/10/06/whats-the-proper-bibtex-type-for-arxiv-papers/
https://github.com/zotero/translators/issues/616
If things has changed (e.g. if sites like ADS and INSPIRE are handling this differently now) we can change this on the import end of things, too, but it's really not so clear cut as to say it's wrong.
Essentially there are two cases: reprints and preprints, the first case should be handled the way it is, the other should be changed, to emply the preprint item type you said is coming.
Second link suggests @unpublished rather than @misc
Third link suggests @booklet, @manual, @misc, @phdthesis...
The fourth link suggests @techreport, which is explicitly argued against at the second link.
The BibLaTeX documentation lists 'journaltitle' as a required field for 'article', see section 2.1 (Entry Types). Since Better BibLaTeX is already omitting Zotero's Publication field for arXiv preprints, it should probably export as '@misc' or '@online', not '@article'. For Better BibTeX, I would recommend keeping the current default export as '@article', since Zotero's Publication field might be of use for some styles. I would favor a postscript for the optional export as '@misc'. There is no '@online' entry type for BibTeX according to its documentation. See also https://tex.stackexchange.com/a/3608.
If you import arXiv items into Zotero via your web browser or by arXiv ID, the Publication field will generally not be empty. For preprints, it's populated with an "arXiv:..." entry, which citation styles in various workflows are likely depending on. Note that the arXiv ID will be written to the Extra field even for published journal articles. Therefore, a BBT postscript should better not depend on Publication being empty or on the presence of an arXiv ID. Comparing the beginning of the Publication entry with "arxiv" might provide an optional export as '@misc' or '@online'.
There has been some related discussion here about adding new item types to Zotero. I agree with many of the suggestions made there. Once Zotero gets a proper item type for preprints, it would be great if merging different item types could be made possible. This would help with merging preprints with published versions. Inapplicable entries could be moved to the Extra field for this to be without data loss.
item
will have an attributeitem.arXiv
which looks like{ id: <arXiv ID>, category: <arXiv category, if found> }
See "eprint" as officially listed in an arXiv instruction (https://arxiv.org/help/hypertex/bibstyles) and Getting DOI / arXiv links with BibTeX (https://www.math.cmu.edu/~gautam/sj/blog/20171114-bibtex-doi.html), as well as some older approaches e.g. mine for giving link to arXiv for Mendeley exports https://gist.github.com/stared/5473014.
Yes, it is a pity that proprietary Mendeley owned by Elsevier provides better support for open archives.
Type: article
That will be migrated automatically to Preprint when the type is added.
Report
with aType: article
line inextra
with the stock BibLaTeX exporter I just get a report, and theType: article
in anote
fieldThe fields in Extra work correctly with citeproc-js in the Word Processor plugins.
Anyone who is using Zotero to work with BibTex/BibLaTeX/pandoc documents should be using BetterBibTeX's exporters, not the stock importers, which are intended only for general data exchange.
Following https://arxiv.org/help/hypertex/bibstyles, https://tex.stackexchange.com/a/429140 and https://tex.stackexchange.com/a/415117, I would expect something like
@misc{HiggsBSM,
author = "Muhlleitner, M.",
title = "Higgs Physics Beyond the Standard Model",
archivePrefix = "arXiv",
eprint = "1410.5093",
primaryClass = "hep-ph",
keywords = "High Energy Physics - Phenomenology",
year = 2014,
month = oct
}