Arxiv, bibtex and zotero


I see that there is already a discussion about papers from be classified as article or report. Besides preferring it being an article I have the following issue using Zotero, arxiv and bibtex together:

The recommended way to add arxiv information to bibtex items is giving here

and uses in general the fields archivePrefix, eprint and primaryClass. I see that the field "Loc. in Arxive" is already exported as "eprint" when using BibLatex. Is there any possibility to create the archivePrefix and primaryClass fields as well? If this is to special, is there any way to create general user defined fields? Even if they would just be called "user1", "user2" etc. I could simple use tools like grep and sed to replace them with archiveprefix and primaryClass in the resulting bibtex file.

To summarize, I'd like to create bibtex files according to arxiv recommendation using zotero and so I'm dreaming of
1.) an arxiv translator supporting them
2.) if 1.) is not possible, the possibiity to set archiveprefix and primaryClass manually
3.) if 2.) is not possible, the possibility to set general user defined fields manually.

Thanks a lot for reading this,
  • other thread here for reference

    While we are going to find a way to fix that particular issue, I don't see how we can support the bibtex extension fields (archivePrefix and primaryClass) in any reasonable way, no. Zotero won't implement custom fields any time soon if at all and we just don't have any field that would suggest that type of mapping.

    It would certainly be _possible_ to hack this into the bibtex export translator and people should feel free to do so, but imho it's way too much of a hack to put it into the regular Zotero version of the translator.
  • Hi adamsmith,

    I had a closer look now. According to the biblatex manual

    section 3.11.7, arxivprefix is an alias for eprinttype and primaryclass is an alias for eprintclass.

    Further, by trial and error I found that setting the Journal article fields as follows:

    Archive: arxiv
    Loc. in Archive: 1234.1231
    Call number: hep-ph

    results in zotero exporting a biblatex file containing:

    eprinttype = {arxiv},
    eprint = {1234.1231},
    eprintclass = {hep-ph},

    which is pretty much what I would like to have :) However these fields are not filled automatically by zotero when importing from arxiv, instead a Report is created with all three fields (Archive, Loc. in Archive, Call number) empty. At least this is what I observe importing for testing purposes.

  • The problem is that Zotero isn't just a bib(la)tex front-end and those field mappings don't make a huge amount of sense in Zotero - Archive and Loc. in Archive are at least somewhat plausible (Call number makes no sense), but for Zotero citation styles these will still produce complete nonsense as they're intended and used principally for physical archives.

    If/when we have a proper field for arXiv IDs in Zotero (which I believe has a very good chance of happening), we can handle this a lot more elegantly, of course, both on import and on export.

    As the ticket linked to in the other thread says, we will revert arXiv to journal articles, so that should produce somewhat better outcomes.
  • (Call number makes no sense)
    Agreed. But then I think that the way we export the callNumber in the translator right now doesn't make a ton of sense.
  • changed the translator. Details here
  • For clarity, I was questioning if it makes sense that the BibLaTeX translator export the call number field in the way they do now.

    I believe adamsmith's (very useful!) changes are limited to the arXiv translator.
  • I got that, thanks - I'd bring the call number issue up in the biblatex thread:
    On BibLaTeX I'm mainly deferring to the person who added the biblatex mappings and wrote the translator. I just don't have the energy to fight through the ~100 pages of field description ;).
  • Does anyone know when the arxiv translator went from importing as "techreport" to "article"?
  • 6 days ago, see this thread for background and explanation:
  • Oh man, now I have to redo my whole library... is there an easier way?
  • depends on what you want. You can revert to the old arXiv translator with relative ease - you'd have to do that every time Zotero updates, but that's not terribly hard.
    You can download the old file from
    and use it to replace the existing file with the same name in the "translators" folder in the Zotero data directory:

    Otherwise it depends on how many items you have - re-fetching something like 50 or 100 wouldn't take a ton of time and might be worth the time.
Sign In or Register to comment.