APS articles missing page number in add by DOI

When I use "Add Item(s) by Identifier" in both Standalone and Firefox to add a paper from APS Physics journals (like PRL etc.) the page number field is not populated. However, when I add the article using the Zotero toolbar button in Firefox while on the article's web page, the page number is populated correctly in Zotero.

This problem, interestingly, also affects EndNote, and is specific to APS Physics journals. I suspect the source of the problem lies in the fact that APS Physics papers don't have page numbers, but article numbers instead. It's possible that the article number is transmitted in a strange field that Zotero ignores.

Can anyone with knowledge of the Zotero code confirm this hypothesis? Fixing the bug might be as simple as finding out in what field the article number is hidden and making sure it ends up in the page number. Or it could require talking to APS or whatever organization's server Zotero contacts when searching by DOI.
  • edited October 23, 2015
    Note: I have observed this problem for several recent versions of Zotero (at the moment I have 4.0.28 running) on Ubuntu and Windows 7 Pro.
  • could you post a sample DOI here?
    It's going to be one of the two issues you suggest --different field or not there at all. If the former, we can fix it, if the latter, we'd ask you to talk to APS about this (we can tell you what precisely to say)
  • For example, DOI: 10.1103/PhysRevLett.102.230402
  • OK, it's in there. We'll have to look at this a bit closer to make sure the field (//publisher_item/item_number[@item_number_type="article-number"]) isn't used by anyone else for different things, but absent that this should be a straightforward fix.

    (full UnixRef XML at http://www.crossref.org/openurl/?pid=zter:zter321&url_ver=Z39.88-2004&&rft_id=info:doi/10.1103/PhysRevLett.102.230402&noredirect=true&format=unixref )
  • Awesome, thanks. I look forward to hearing what you find.
  • How did this get resolved ?
  • I don't think it's been resolved yet.
  • Anyone knows a work around this bug? We have hundreds of references that were added in our group library by DOI that are missing their page numbers, and we’re looking for a way to avoid having to complete them by hand...
  • @adamsmith In my checking, all publishers I've looked at have used article number to refer to either page numbers or an article number that should be stored in the same field (for online-only journals).
  • The problem with APS journals (I believe) is that in some databases they have an article-number field but not a “page” field, and maybe that’s why zotero fails to add their page number. I think the change to make is for zotero to import the article-number field when the look-up database doesn’t return a page field..
  • It's not only APS journals. There's lots of other journals, like Scientific Reports, that are listed with article-number instead of page, and for which Zotero doesn't retrieve the article-number when doing a DOI lookup...
  • @jsampaio @adamsmith is aware of the issue. The question is ensuring that other publishers don't use publication-number to mean something else, potentially creating other import issues.
  • OK, we'll fix this. Patches welcome in the meantime.
  • I did the following in translators/crossref.js, works for APS, Nature Comm, Sci reports.

    line 163 added the reportnumber:
    + item.reportNumber = ZU.xpathText(refXML, 'c:publisher_item/c:item_number', ns);
    item.publicationTitle = ZU.xpathText(metadataXML, 'c:full_title[1]', ns);

    in the section on pages, line 322, add article-number as pages if these are empty:
    if (pages.length) {
    item.pages = ZU.xpathText(pages, 'c:first_page[1]', ns);
    var lastPage = ZU.xpathText(pages, 'c:last_page[1]', ns);
    if (lastPage) item.pages += "-"+lastPage;
    }
    + else{
    + item.pages=item.reportNumber;
    + }
Sign In or Register to comment.