Here’s a nasty little problem that’s been hiding in plain sight:
Frank Bennett, Jr.
John Doe III
The join for suffixes is irregular in normal usage. If names are
broken into their constituent elements (as is right, I think), we need
somehow to determine the correct join for these cases. It’s a pain,
because it’s much cleaner inside the machine to apply a uniform join
to all of the elements:
Frank Bennett Jr.
John Doe III
Fine with me personally, but I fear that other authors and editors may
not be so broad-minded … how important do you-all think it is to
provide for the first form (with a comma delimiter on Jr.)?
If discriminate handling is needed, I’m completely stumped on how to
do it, and would be very happy for suggestions (and I’m genuinely
hopeful that I’ve missed an obvious solution that will make me look
silly when it is revealed). We might fudge things with a heuristic –
stuff that looks like a roman numeral gets the standard delimiter,
everything else gets a comma, uh, at least for names in romanish
scripts, oh, but maybe not for people who write their name the other
way. That’s extremely messy, and just thinking about it gives me the
shivers. Alternatively, we could require some hint in the input, but
that’s cumbersome and will probably lead to confusion and acrimony
sooner or later.
A separate question is what should be done with a suffix when
rendering in short form with disambiguation? Should it just be left
out altogether (I hope I hope)? If it should be included by
add-names, what would be its priority order? Or would an all-singing
all-dancing implementation have another disambiguation switch for this
element?
I don’t mean to stir things up gratuitously with this item; I’m
building the names handling routines in citeproc-js at the moment,
working from the bottom up. It’s going to be a deep stack of
operations, and I would very much like to be able to weld a steel
plate over it once it’s built.
Frank Bennett, Jr.