0

I am using Ubuntu 20.04, with TeXLive2019, Biber 2.14 and BibLaTeX 3.1. In the pdf produced from the following MWE by running xelatex, the (single-author) Jaffe2014 citation is listed after the (multi-author) Jaffe2003 citation. My understanding, on the contrary, is that all single-author items should appear first, sorted in year order and then alphabetical order of title, followed by multi-author items, sorted in alphabetical order of author, then year order and then alphabetical order of title.

\documentclass[a4paper, 12pt, table]{report}

\begin{filecontents}{testseq.bib}
@Misc
{
    Jaffe2003c,
    author = "Jaffe, P and Lemon, N and Poisson, S",
    publisher = "Centre for Children and Families in the Justice System",
    title = "{Child custody and domestic violence: A call for accountability}",
    year = "2003",
}

@Article
{
    Jaffe2014a,
    author = "Jaffe, Peter G",
    journal = "{Family Court Review}",
    number = "2",
    pages = "187--192",
    title = "{A presumption against shared parenting for family court litigants}",
    volume = "52",
    year = "2014",
}
\end{filecontents}

\usepackage[style=apa, sortcites=true, backend=biber, uniquename=false]{biblatex}
\DeclareLanguageMapping{english}{english-apa}
\addbibresource{testseq.bib}

\begin{document}

\chapter{Some text}

\textcite{Jaffe2014a} talks about this, and this is where we quote him again \parencite{Jaffe2003c}. 

\printbibliography

\end{document}  

The reason appears to be that Jaffe2003 has the author listed as "Jaffe, Peter G", while Jaffe2014 has him listed as "Jaffe, P". When these are reduced to initials and sorted, "Jaffe, P" will come before "Jaffe, PG". (Incidentally, unless I use "uniquename=false", I get the same disambiguation in the text itself -- "P.G. Jaffe (2014)" and "(P. Jaffe et al., 2003)" -- even though the manual (p67) says that the default here is "false", which should mean that this argument is not needed -- though perhaps I am missing something here.)

While I could go through the bibfile and edit all the entries to show only first names or initials, I'm assuming that there must be an incantation somewhere in Biber/BibLaTeX that restricts its sorting to given name initials only, and only uses additional given names or initials as a subsort criterion. Sadly, having perused the 338 pages of the manual, I can't find anything that bears on this.

Can anyone help me get the citations to sequence correctly?

3
  • It won't resolve the issue, but you should give initials in the author field with a dot: author = "Jaffe, P. and Lemon, N. and Poisson, S.", adn author = "Jaffe, Peter G.",
    – moewe
    Commented May 22, 2020 at 14:07
  • About the manual: uniquename=false, is indeed the initial value (so default in the sense of pre-set/initial, not in the sense of 'uniquename without a value is false'; if you give any boolean option without value, you will always get true), but styles may set different value, and that is what apa and most authoryear-derivatives do.
    – moewe
    Commented May 22, 2020 at 14:09
  • The trend now, at least in British English, is to avoid using them in abbreviations (eg BBC, JP Morgan), because they add clutter to the page - [here] (sussex.ac.uk/informatics/punctuation/capsandabbr/abbr) and [here] (en.wikipedia.org/wiki/Full_stop#After_initials). Some Google Scholar citations have them, some don't, so it's best to strip them all and let the style add them, as APA in fact does. Some Google Scholar citations have them, some don't, so it's best to strip them all and let the style add them, as APA in fact does. Thanks for the explanation of default.
    – donnek
    Commented May 24, 2020 at 8:13

1 Answer 1

0

BibTeX and biblatex do not differentiate between first name and middle names. The given name encompasses both first name and middle names. So you can not easily tell biblatex to ignore middle names for sorting purposes.

If you want to force a certain sorting, I suggest you use the sortname field.

\documentclass[a4paper, 12pt]{article}

\begin{filecontents}{\jobname.bib}
@misc{Jaffe2003c,
  author    = {Jaffe, P. and Lemon, N. and Poisson, S.},
  publisher = {Centre for Children and Families in the Justice System},
  title     = {Child Custody and Domestic Violence: A Call for Accountability},
  year      = {2003},
}
@article{Jaffe2014a,
  author   = {Jaffe, Peter G.},
  sortname = {Jaffe, P.},
  journal  = {Family Court Review},
  number   = {2},
  pages    = {187--192},
  title    = {A Presumption Against Shared Parenting for Family Court Litigants},
  volume   = {52},
  year     = {2014},
}
\end{filecontents}

\usepackage[style=apa, backend=biber, uniquename=false]{biblatex}
\addbibresource{\jobname.bib}

\begin{document}
\textcite{Jaffe2014a} talks about this,
and this is where we quote him again \parencite{Jaffe2003c}. 

\printbibliography
\end{document}

Jaffe, P. G. (2014).//Jaffe, P., Lemon, N., & Poisson, S. (2003).

9
  • Thanks for the pointer to sortname. In the web-based citation app I've written (because the world is just crying out for another citation management system!) I'll just iterate over the database with a regex based on the author ($sortname=preg_replace("/^(.+, .)(.* and .+)$/", "$1", $author);), and also generate that field on import. I'm surprised Biblatex doesn't do something like that internally - maybe a switch (sortinitonly=true), which tells it to generate a sortname from the author/editor name, and use that for the sort. Thanks again.
    – donnek
    Commented May 24, 2020 at 8:13
  • @donnek biblatex doesn't deliberately throw away any info it might have. It is possible to define a sorting scheme that considers only the initials (\DeclareSortingNamekeyTemplate with the inits option to \namepart), but that wouldn't help here, since the initials of the Jaffe2014a entry are still P. G.. You'd still need to get rid of the middle name initial, which is not going to be easy, because there is no notion of a middle name (cf. github.com/plk/biblatex/issues/980). ...
    – moewe
    Commented May 24, 2020 at 9:13
  • ... A RegExp sourcemap would be possible, but those things are really tricky to pull off if you want to cater for all legal input and all edge cases.
    – moewe
    Commented May 24, 2020 at 9:14
  • Sure - I wasn't suggesting it did or should (in fact that's why I need something like sortname, so that I don't lose info from my file). So my regex above keeps the author name while generating a new sortname, and I've now redone it to pick out the first author's family name + initial of first given name, and then the initial of the second given name (middle name). So Shaw, George Bernard and Pinero, Arthur WingShaw, G and B. Is it possible to use a secondary sort field (sortname2?) for the latter?
    – donnek
    Commented May 24, 2020 at 17:40
  • I think that "no notion of a middle name" in the page you referenced is a bit of a red herring. People may choose to use a middle name (Shaw preferred to use "Bernard") or nickname (George Herman "Babe" Ruth Jr.) in preference to their first name, but this doesn't alter the fact that the first name exists, and in the absence (so far as I know) of a bibliographical style that privileges preferred names or nicknames, that is surely what must be recorded in academic work. Just my opinion, of course!
    – donnek
    Commented May 24, 2020 at 17:40

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .