Error: year disambiguation in author-date styles
Hi -- I'm experiencing a year disambiguation issue in author-date styles (Zotero 2.1.8, Firefox 5.0, Ubuntu 11.4). The years get disambiguated in order of appearance in the text rather than order of publication date.
Then there's occasional issues with the alphabetical disambiguation running on from one year to the next; say, for instance, you have publications 2007a to 2007m by one author, and the references list will then start with 2008n for the same author the following year, rather than resetting to 2008a.
Thanks for any help.
Then there's occasional issues with the alphabetical disambiguation running on from one year to the next; say, for instance, you have publications 2007a to 2007m by one author, and the references list will then start with 2008n for the same author the following year, rather than resetting to 2008a.
Thanks for any help.
This discussion has been closed.
Which style?
Item 1:
keystring: (Brooker, C.)
keystring: (Y20110000Y00000000S00000000000000000000)
Item 2:
keystring: (Brooker, C.)
keystring: (Y20110000Y00000000S00000000000000000000)
As the sort keys are the same for the two entries, they are ranked in document order in the bibliography. The year-suffix is missing in the bibliography for these entries, and that is a problem with the style. But things are coming out in the right order, and the year-suffix is being assigned correctly.
Debate over whether APA should sort in this way is beyond my jurisdiction. :) But the processor is doing what it is asked to do. As far as I can tell, nothing strange is going on here.
When the year-suffix elements appear properly in the bibliography, it will be less confusing to the eye, and we will be able to sort through any remaining issues.
No improvement, though.
I went to the style repository, hit 'install' on American Psychological Association 6th Edition (rev of 2011-08-01 06:01:03), then restarted Firefox and LibreOffice and switched the test file back and forth between Chicago Author-Date and APA.
Chicago Author-Date: APA: Chicago Author-Date gets it right, APA gets it wrong. It used to work correctly for a long time, so something must have broken it.
I noticed only very recently that this behaviour has changed. I first suspected I had broken the sorting through my habit of pasting Zotero references from older documents, some of which will occasionally be pre-Zotero 2.1.x.
But it doesn't seem like anything is really broken (except for the disambiguation suffixes that now occasionally run on from one year to the next), and if the new sorting is a feature rather than a bug I'll probably manage to live with it, even though the old sorting seemed to make more sense. I don't have a copy of the APA manual nearby, and a few web searches didn't turn up the relevant rule, so I can't prove the chronological sorting by date-stamp is the right thing. It just feels right.
I'd suggest the sorting should be by full date regardless of the type, rather than specifically changed for particular types.
(Re discriminating by type in the sort, I think you'd want at most to include the rendered date elements in the sort. If a book gives a specific date of publication, but shows only the year, it would be confusing to sort on the unseen date elements.)
https://www.zotero.org/trac/changeset/4659/csl/apa.csl
http://forums.zotero.org/discussion/7427/?Focus=33198#Comment_33198
That change solved problems with sorting for bibliographic entries rendering only the year. But looking at the APA style, it's probably better to sort by the "issued" macro instead of the "issued-year" one.
The spec states: "... if a date variable is called by the variable attribute, the complete date is returned. In contrast, macros return only those date-parts that would otherwise be rendered ..."
As the month/day follow the year, sorting should be correct.
We can also rewrite the macro to put the item type conditional at a higher level, which should eliminate your concern.
In my commit, the year-suffix is suppressed as it's explicitly defined for the no-date case. I could add a cs:text element calling "year-suffix", but this places the year-suffix after the full date ("2002-10-3a") instead of after the year ("2002a-10-3"), which might not be desired.
In my first citeproc + CSL prototype, this issue would never come up: sort the list by date, group by year, index year groups.
Can that logic really not be represented here?
That wasn't right: a book might record the exact date of release in Zotero but display only the year, in which case it should be sorted by what is displayed. To get that working, we needed to recognize conditional logic inside date macros fed to cs:key. That's been done, and will find its way into Zotero in the next release.
Once the new processor is available, we'll need to make a small change to APA to adjust the sort behavior. The change can be made early; I'll look at it later today.
Thanks for your patience; we're nearly there on this one.
(1993d, April 14)
(1993e, January 13)
(1993f, July 2)
(1993g, January 16)
(1993h, November 27)
Also, an entry's disambiguation letter now gets inserted after the year of the access date if an entry has a URL.
For a while I've been using Chicago Manual of Style (Author-date format) as an alternative, but this turns out to be faulty in other ways: its disambiguation, once it has run through the whole alphabet, just keeps on incrementing the disambiguation tokens in the double-letter range, without ever resetting back to single letters for a new year.
Thus, eg:
Smith, J. (1907ab)
Smith, J. (1907ac)
Smith, J. (1908ad)
The disambiguation letter after the access date can be removed, as it's set explicitly wherever it appears throughout the style. (This was my own typo, but I'll leave it to be fixed when the sort key is addressed. The error is at line 144.)
On the issue with bad increments to the year-suffix letter, I'll need sample data.
I'll make what I think is the right change now and file it as a pull-request against the main repo.
Thus, instead of:
(1993d, April 14)
(1993e, January 13)
(1993f, July 2)
(1993g, January 16)
(1993h, November 27)
They would need to come out as:
(1993d, January 13)
(1993e, January 16)
(1993f, April 14)
(1993g, July 2)
(1993h, November 27)
———. 1995af.
———. 1996a.
I'm fairly sure I wasn't hallucinating, though, and will get back to you when I have a reproducible issue...