Crossref publisher_item article-number

There is a problem with certain journal articles lacking page numbers in CrossRef. For instance, try adding doi:10.1103/PhysRevB.68.060403 through "add by identifier".

The reason for this is that PhysRevB doesn't have real page numbers, but article numbers instead. In the CrossRef XML we find:

<publisher_item>
<item_number item_number_type="article-number">060403</item_number>
</publisher_item>

This is a problem, since the "proper" way to cite this is to use the article-number as page number, but the CrossRef translator doesn't store this. Incidentally, if you use the PROLA translator at http://prb.aps.org/abstract/PRB/v68/i6/e060403 you will get this as a page number, it is extracted from the RIS/EndNote that PROLA supplies.

I suggest that Zotero treats the article-number as first-page if the first-page doesn't exist. This is not just a hack for PhysRevB, but conforms to the Crossref schema (p. 119):
item_number within publisher_item may also be used to provide an article number when a first_page is not available or applicable. In certain cases it may be deemed in-appropriate to 'misuse' the first_page element to provide a value that has meaning in an on-line only publication and does not convey an form of page number. In these circumstances the attribute <item_number item_number_type="article-number"> will instruct the CrossRef system to treat the value of item_number in the same manner as first_page. This value then becomes a critical part of the query process. If both <item_number item_number_type="article-number"> and first_page are present, first_page will take precedence.
Zotero can be modified in two ways. The easiest is to modify CrossRef.js to substitute article-number in the first_page field if no first_page is available. The other way would be to store the article-number in Zotero, and then do the substitution at the output end, that way it would be possible (guessing here) to create citation styles that explicitly handle the article-number.

I think the first (and easiest) way is the best, but I know quite little about this so please argue with me. I might even be willing to provide a patch, it should be a line or two of code.
Two questions:
  • Might such a patch be accepted?
  • Where and how would it be done most efficiently?
  • I've confirmed the bug persists in Zotero.

    Mendeley, on the other hand, supports article numbers,
    which are used to populate the page number field.

    FGN
  • edited June 10, 2020
    @fgnievinski: You just created a new thread saying this went unnoticed, but if I add the DOI above, 10.1103/PhysRevB.68.060403, via Add Item by Identifier, "060403" is added to the Pages field, which seems to be what's being asked for here. Did you test this recently?
  • Using Zotero 5.0.87 in Windows.

    I downloaded the citation information for an article (https://aip.scitation.org/doi/full/10.1063/1.2759475) by going to Tools -> Download Citation -> BibTex -> copy the contents to clipboard -> go to Zotero -> File -> Import from Clipboard.

    The article is specified by article number, not pages.

    However, in the bibtex, you can see that the article number is specified in the 'pages' field:

    pages = {061103},

    Up now it is fine.

    The problem occurs when you need to use the IEEE reference format (https://ieeeauthorcenter.ieee.org/wp-content/uploads/IEEE-Reference-Guide.pdf).

    The IEEE format specifies that when an article has 'article number', it should be, for example (notice the "Art. no. 061103."):

    "R. Fardel, M. Nagel, F. Nuesch, T. Lippert, and A. Wokaun, “Fabrication of organic light emitting diode pixels by laser-assisted forward transfer,” Appl. Phys. Lett., vol. 91, no. 6, Aug. 2007, Art. no. 061103."

    Then I selected the IEEE citation style (Edit -> Preferences -> Cite -> Styles -> Get additional styles -> type and select IEEE -> Ok).

    Then I tested the style: (Edit -> Preferences -> Cite -> Styles -> Style editor -> select IEEE -> Refresh) and the result is:

    "[1] R. Fardel, M. Nagel, F. Nüesch, T. Lippert, and A. Wokaun, “Fabrication of organic light-emitting diode pixels by laser-assisted forward transfer,” Applied Physics Letters, vol. 91, no. 6, p. 061103, 2007, doi: 10.1063/1.2759475."

    Notice the "p. 061103"

    So I can correctly import the citation information into Zotero, but I cannot cite it correctly, because the IEEE specifies: "Art. no. 061103." and the citation comes out as "p. 061103".
  • The distinction between "article number" and "pages" is not a very meaningful one (e.g., for the item you cite, the "061103" is registered by the publisher as "pages" with CrossRef, not a special field). "Article number" is almost always recorded in bibliographic metadata just as a page number, so there isn't really a way for Zotero to be able to import most article numbers as such.

    Personally, I recommend ignoring this rule and just citing it as a page number. Any reader will be able to figure it out. That said, if you do want "Art. no." instead, enter the number in Extra like this:
    Number: 061103

    Citation styles that are written to include article numbers for journal articles will pick this up (note that most styles do not currently support article numbers).

    I've submitted an update for the IEEE style to include article numbers if provided:
    https://raw.githubusercontent.com/citation-style-language/styles/1643ffab2f7c8d974acdd88fd2c87f166d90ecc3/ieee.csl
  • edited October 5, 2021
    The latest edition of APA Style, 7th, recommends citing article number prefixed by "Article ":

    https://apastyle.apa.org/style-grammar-guidelines/references/examples/journal-article-references#2

    This is already supported in the citation style:
    https://github.com/citation-style-language/styles/blob/master/apa.csl#L1451

    The problem appears to originate from Zotero copying the article number into the initial page number, after which it cannot insert the required prefix. I've tested using zbib.org
  • Enter the data for the item by putting this number in Extra like this:
    Number: 1234

    And leaving page blank.
  • field Extra seems to be ignored by the APA 7th citation style
  • No, it’s not. But you need to enter the data exactly as I have above so that it is recognized as the “number” variable:

    Number: 1234
  • You need to add the number exactly as above, including the "Number: " part -- that works.
  • Thanks, it works with Zotero standalone, after emptying the page number field.

    But I couldn't make it work with Zotero online (web library) -- is it supposed to work there, too?

    For the long term, would it make sense to offer a user setting to import article number as extra number instead of page number?
Sign In or Register to comment.