EndNote Zotero field mapping
I need to transfer many, many EndNote libraries to Zotero. The EndNote libraries used 4 custom fields extensively and I need to get the content of those fields into a structured Zotero field(s). (Not added to Zotero as a note.)
My solution is to move the content of the custom fields to different fields (a function that EndNote does fine) before creating the xml. But I can't find an EndNote <> Zotero field map so it is really challenging to figure out what fields I should use.
Again, this library transfer process is going to be repeated regularly over the next few years so I can't just MacGyver this once. I've searched the Zotero support and forums sites, as well as the web and haven't been able to find this resource.
Is an EndNote <> Zotero field map available? Or any suggestions for a better way to move my libraries? Thanks!
My solution is to move the content of the custom fields to different fields (a function that EndNote does fine) before creating the xml. But I can't find an EndNote <> Zotero field map so it is really challenging to figure out what fields I should use.
Again, this library transfer process is going to be repeated regularly over the next few years so I can't just MacGyver this once. I've searched the Zotero support and forums sites, as well as the web and haven't been able to find this resource.
Is an EndNote <> Zotero field map available? Or any suggestions for a better way to move my libraries? Thanks!
Upgrade Storage
What item types are you using and what are the custom fields being used for? One option would be to download the translator .js file, modify how custom1 to custom4 are mapped for the item type you are working with, then copy this to the translators folder in your Zotero data directory (https://www.zotero.org/support/zotero_data). You should save the original translator file as a backup and put it back when you are done with the import.
We use multiple item types and the custom fields contain key information used during the original literature search and categorization. It is crucial that this key information moves to Zotero structured fields.
Based on this information, do you have any additional thoughts?
Thank you!
Also, is there a field type in EndNote that feeds into the "Extra" field in Zotero?
All fields for all items are here: https://pobrien333.github.io/zot2csl/
I believe the only fields shared across all item types are the ones listed at the bottom, though if you have a slightly reduced number of types (e.g. no legal ones) there are some more:
DOI
Citation Key
URL
Accessed
Short Title
Language
License
Extra
Of those, I'd strongly advise against using DOI, URL, Accessed, or Citation Key for anything they're not intended for. Language and short title are also not ideal, so you're mainly stuck with License/Rights and Extra
The xml from EndNote will upload using the unedited version of the .js.
Any ideas?
var fieldMap = {
//same for all itemTypes
abstract: "abstractNote",
"call-num": "callNumber",
"electronic-resource-num": "DOI",
"remote-database-name": "libraryCatalog",
"abbr-1": "journalAbbreviation",
"short-title": "shortTitle",
"full-title": "publicationTitle",
language: "language",
"access-date": "accessDate",
custom1: "rights", //JB edit 02Mar26
custom4: "extra", //JB edit 02Mar26
// label: "Citation Key", (handled below, since it has to go into Extra)
//These two are in the RIS - not sure what they'd be in Endnote XML
//DB:"archive",
//AN:"archiveLocation",
AND
"accession-num": {
PMID: ["journalArticle"] //JEB edit 02Mar26
},
//custom1: {
filingDate: ["patent"], //not in spec
scale: ["map"],
place: ["conferencePaper"]
},
custom2: {
issueDate: ["patent"]
PMCID: ["journalArticle"] //JEB edit 02Mar26 "handled below since we don't actually have that variable (yet)"
},
custom3: {
artworkSize: ["artwork"],
proceedingsTitle: ["conferencePaper"],
runningTime: ["videoRecording"],
country: ["patent"]
},
//custom4: {
//RIS has this, but I can't find any reason for that: "creators/wordsBy":["audioRecording"],
"creators/attorneyAgent":["patent"], //we're not using this for export
genre: ["film"]
},
custom2: {
issueDate: ["patent"]
(elements of an object or a array are always comma-delimited. Zotero's translator editor -- Tools --> Developer -- has a linting function that catches & warns about issues like this. It does expect a folder for translators outside of Zotero -- typically a checked out git repository, but you can just use a copy of the translator folder locally, too)