It seems churlish to mention this one, given that I currently pass barely 50 percent of the disambiguation tests, and mostly fair and square fall-on-your-face failure. However:
disambiguate_ByCiteDisambiguateCondition.txt FAILED
-------- EXPECTED --------
Doe et al., Book A (2000); Doe et al., Book B (2000)
----------- GOT -----------
Doe et al. (2000a); Doe et al. (2000b)
See disambiguate_ByCiteDisambiguateCondition.txt
We have disambiguation rules to add-givenname
, add-names
and add-year-suffix
. The givenname disambiguation rule is by-cite
, but both add-givenname
and add-name
must fail, because both works are by the same two (prolific) authors, John Doe and Jane Roe.
We also have a <choose>
element that will render the title if disambiguate
is true.
The test seems to assume that disambiguate
will be true, and that the title will therefore get printed rather than a year suffix. I’m having trouble matching that to the spec. Per the spec:
Disambiguation methods are activated with the following optional attributes, and are always tried in the listed order
Which is a) add more names, b) expand names to initials and given names, c) add a suffix. It is only if those methods fail that we get to the generalised disambiguation conditional:
If ambiguous cites remain after applying the selected disambiguation methods described above, a final disambiguation attempt is made by rendering these cites with the disambiguate condition testing “true” [Step (4)].
So in this case we should:
- Try step 1 and fail (adding names gets us “Doe and Roe”, twice)
- Try step 2 and fail (expansion gets us “John Doe and Jane Roe”, twice: neither name is ambiguous, but the cites remain ambiguous)
- Try step 3 and succeed (expansion gets us “2000a” and “2000b”): we now have unambiguous citations (though not unambiguous names, which we cannot have any which way here).
We should therefore never get to the “final” step 4, so the disambiguation condition is never triggered and we don’t get titles, as the test suggests we should.
What wrinkle am I missing here?