Author-date citations with page references not separated by a semicolon

edited March 6, 2018
Zotero correctly separates multiple references to the same author with a comma. When there are also page references, they should go back to being separated with a semicolon (without adding the duplicate author name), and this is not happening. Hence, if one attaches page references to a citation, one can end up with something like '(Shakespeare 1615, 1875, 1616, 110–30; Donne 1629)' – the '1875' there is input as a page number, not another citation.

The Chicago Manual of Style gives the following examples:
(Whittaker 1967, 1975; Wiens 1989a, 1989b)

(Wong 1999, 328; 2000, 475; García 1998, 67)
This is also a problem in other CSL processors, and I think it's an omission in the Cite Collapsing area of the CSL specification, though I would be glad to know if it's only an oversight in the Chicago author-date CSL style.
  • that's right, CSL can't do it -- the number of options & exceptions is geting rather significant on this -- does just adding a ; suffix work? I think at some point I might just consider that OK as a workaround for a rare scenario
  • @adamsmith Could this be addressed by tweaking the processor though, without adding another option?
  • After 10+ years of doing this, I'm very skeptical that there is any practice that doesn't have an exception, so I'm not sure we can just assume this, though as a rule it makes sense. I'll try to do some digging. One problem is going to be that there aren't going to be many other manuals detailed enough to even address this.
  • This is actually not a very unusual situation if the material one is citing is something other than journal articles (i.e. anything for which one needs to add page numbers), and one needs to cite more than one work by a particular author.

    @nickbart points out that he mentioned this four years ago:
  • edited March 6, 2018
    In any case, it seems we have a bug in the processor. Racking up data for the samples above in Chicago Author-Date, but with citation delimiter=", " and after-collapse-delimiter="; ", we get:

    (Whittaker 1967, 1975, Wiens 1989a, 1989b)
    (Wong 1999, 328, 2000, 475; Garcia 1998, 67)

    I don't think that tweaking to get a semicolon after the "328" would be a full solution (assuming Chicago would also require "(Jones 1999; Smith 2000)"), but there should have been a semicolon after the "1975."
  • The code of citeproc-js is a little bit of a mess in this area, but I think we can cope with these use cases with the existing CSL options, if we treat after-collapse-delimiter as a "hard" cite delimiter when it is set. I'll see what I can come up with for a trial.
  • edited March 7, 2018
    The code contained an ill-judged hack to avoid one failure of expected after-collapse-delimiter behavior. Implementing a more proper fix for the relevant misstep breaks just one existing test (collapse_TrailingDelimiter).
    (Condit et al. 2000, 1995, 1998; Connell 1971, Cortes & Hunziker 1971)
    but got
    (Condit et al. 2000, 1995, 1998; Connell 1971; Cortes & Hunziker 1971)
    That looks like an acceptable trade-off to me, but the view of authors and CSL maintainers should be determinative.

  • My understanding is that (Condit et al. 2000, 1995, 1998; Connell 1971; Cortes & Hunziker 1971) actually is the correct form according to (unchanged from CMoS, 16e, 15.29), which says:
    Two or more references in a single parenthetical citation are separated by semicolons. [...]
    (Armstrong and Malacinski 1989; Beigl 1989; Pickett and White 1985)
    Additional works by the same author(s) are cited by date only, separated by commas except where page numbers are required.
    (Whittaker 1967, 1975; Wiens 1989a, 1989b)
    (Wong 1999, 328; 2000, 475; García 1998, 67)
    What about the output when page numbers are included? In this case, my understanding is that CMOS requires (Condit et al. 2000, 123; 1995, 456; 1998, 78–90; Connell 1971; Cortes & Hunziker 1971).
  • edited March 7, 2018
    It's correct in Chicago Manual, but it's incorrect in the styles for which the after-collapse-delimiter was introduced, i.e. styles which usually delimit with comma _except_ when following a set of collapsed citations (the test doesn't specify delimiter=", " but that's the default)
  • A little more code cleanup, and we're now getting some promising results.

    (Condit et al. 2000, 1995, 1998; Connell 1971, Cortes & Hunziker 1971)
    ..[0] (Whittaker 1967, 1975; Wiens 1989a, 1989b)
    >>[1] (Wong 1999, 328; 2000, 475; Garcia 1998, 67)
    Just one test that formerly passed is now failing ...

    >>[0] (Jones 2000; Smith 2000a,b)
    but got
    >>[0] (Jones 2000, Smith 2000a,b)
    ... but this is a test for which I had introduced the ugly hack into citeproc-js code. I think the comma-space delimiter is actually correct for this one.
  • I'm pretty sure (Jones 2000; Smith 2000a,b) is correct in that style given the layout delimiter="; "
  • Ah, true, I should have checked the style. That actually makes things easier. I've removed a condition, and now everything passes.
  • A processor with the new logic is available in the Propachi plugin, which can be installed in Zotero Standalone for testing purposes.
  • I tried propachi-vanilla-v1.1.120-fx.xpi together with the latest chicago-author-date.csl, but it seems there’s still no semicolon in cases where page numbers are involved:


    Blah (Doe 1986, 12–34; 1998, 77).

    Actual output:

    Blah (Doe 1986, 12–34, 1998, 77).
  • edited March 11, 2018
    It requires an adjustment to the style, adding after-collapse-delimiter and changing the value of delimiter on the citation layout. The collapse_ChicagoAfterCollapse test shows the values needed.
  • There might be other ways to accomplish the same effect by tweaking the logic of the processor, but with this approach, all other tests in the suite pass as-is: the behavior is discretionary, and shouldn't impact other styles.
  • @fbennett – With an adjusted chicago-author-date.csl and propachi-vanilla-v1.1.120-fx.xpi, the results are as expected now.
  • That's splendid; thank you!
  • edited January 12, 2019
    I'm trying to resolve the same issue and with propachi-vanilla-1.1.131 and updating chicago-author-date.csl using the style in @fbennett 's link (ChicagoAfterCollapse), it is not working. What I did was copy/paste the csl section from ChicagoAfterCollapse into the Zotero CSL style editor, save as chicago-author-date2.csl, and then added that file as a style in Zotero. Am I doing this wrong?

    I noticed that in ChicagoAfterCollapes there is an 'after-collapse-delimiter' in only one location. The line is:

    citation et-al-min="4" et-al-use-first="1" disambiguate-add-year-suffix="true" disambiguate-add-names="true" disambiguate-add-givenname="true" givenname-disambiguation-rule="primary-name" collapse="year" after-collapse-delimiter="; "
    Do I need to put it in other locations in the style also? I'm not experienced with editing CSL styles. Thanks for any help.
  • You're probably not saving the style correctly -- did you change title and ID?
  • That was the problem - I had failed to change the ID. Thanks.
  • Maybe I’m missing something, but is there any reason why the official chicago-author-date.csl shouldn’t be updated accordingly?
  • I don't see a reason not to adjust the official style; I think I had just misread the above discussion to think this wasn't necessary anymore.
  • Just checked again (with an up-to-date Zotero + LO, no Propachi): an adjusted version of chicago-author-date.csl does fix the issue; the current version from the repository does not.
  • I've submitted a PR for chicago-author-date (incl. de, fr, basque):
Sign In or Register to comment.