TransWikia.com

Biblatex Name Disambiguation only for Single Authors?

TeX - LaTeX Asked by Norbert-op on February 17, 2021

I’m using biblatex 3.13 and biblatex-chicago 1.0rc5 and would like to have names disambiguated only when they are single authors. In Chicago disambiguation is only needed on the judgment of the author, and for my sources usually a name being in a list is enough by itself.

This post has a similar issue for the APA style, but about first authors in lists:

biblatex: Name disambiguation only for FIRST author

MWE

sample.bib file

@book{hossfeld1973,
  location = {{Fribourg, Switzerland}},
  title = {Prophet gegen Prophet},
  publisher = {{Verlag Schweizerisches Katholisches Bibelwerk}},
  date = {1973},
  author = {Hossfeld, Frank Lothar and Meyer, Ivo}
}

@book{meyer1968,
  location = {{Grand Rapids, MI}},
  title = {Prophecy and Prophets in the Judaism of the Hellenistic-Roman Period},
  shorttitle = {Prophecy and Prophets},
  publisher = {{Eerdmans}},
  date = {1968},
  author = {Meyer, Rudolf}
}

Minimal Working Example

documentclass{article}
usepackage[uniquename=true,backend=biber,notes,noibid]{biblatex-chicago}

addbibresource{sample.bib}

begin{document}
    There is a book about Old Testament false prophets by citeauthor{hossfeld1973} which they
    wrote some decades ago.autocite[]{hossfeld1973}

    There is also an article in an encyclopedia by citeauthor[]{meyer1968} which has only a
    single author.autocite[]{meyer1968} The two author work by citeauthor{hossfeld1973} does
    not need name disambiguation. The single author work by citeauthor{meyer1968} does need
    an initial so that we remember he was not the coauthor of the other
    work.autocites[]{hossfeld1973}{meyer1968}
end{document}

text citation example
footnote example

Desired Output

  1. In the actual document class I use the first names are given in full in their first appearance using this code here. This works fine right now, but may have some conflicts for any potential solutions.
  2. Based on the settings in this MWE, this is the output I want to see:

There is a book about Old Testament false prophets by Hossfeld and Meyer
which they wrote some decades ago.
There is also an article in an encyclopedia by R. Meyer which has only a
single author. The two author work by Hossfeld and Meyer does not need
name disambiguation. The single author work by R. Meyer does need an initial
so that we remember he was not the coauthor of the other work.

With my actual document class that includes full first names, this is how it should look:

There is a book about Old Testament false prophets by Frank Lothar Hossfeld and Ivo Meyer which they wrote some decades ago.
There is also an article in an encyclopedia by Rudolf Meyer which has only a
single author. The two author work by Hossfeld and Meyer does not need
name disambiguation. The single author work by R. Meyer does need an initial
so that we remember he was not the coauthor of the other work.

Questions

  1. Is there an existing option for uniquename or uniquelist that will do this?

  2. Is there a way to to specify in a bib entry what the short name should be?

I looked at the biblatex documentation on Name Disambiguation (4.11.4) but didn’t understand it. biblatex-chicago by default uses uniquename=minfull but that doesn’t disambiguate in this example.

One Answer

There is a sort-of workaround for this that works by suppressing uniquename counter values in the situations where you don't want disambiguation. This can be done in the labelname name format.

The following will only show disambiguation name parts if there is only one author.

documentclass{article}
usepackage[notes, backend=biber,
  uniquename=true,
  noibid
]{biblatex-chicago}

DeclareNameFormat{labelname}{%
  ifnumcomp{value{listtotal}}{>}{1}
    {setcounter{uniquename}{0}}
    {}%
  ifcasevalue{uniquename}%
    usebibmacro{name:family}
      {namepartfamily}
      {namepartgiven}
      {namepartprefix}
      {namepartsuffix}%
  or
    ifuseprefix
      {usebibmacro{name:given-family}
        {namepartfamily}
        {namepartgiveni}
        {namepartprefix}
        {namepartsuffixi}}
      {usebibmacro{name:given-family}
        {namepartfamily}
        {namepartgiveni}
        {namepartprefixi}
        {namepartsuffixi}}%
  or
    usebibmacro{name:given-family}
      {namepartfamily}
      {namepartgiven}
      {namepartprefix}
      {namepartsuffix}%
  fi
  usebibmacro{name:andothers}}

begin{filecontents}{jobname.bib}
@book{hossfeld1973,
  location  = {Fribourg, Switzerland},
  title     = {Prophet gegen Prophet},
  publisher = {Verlag Schweizerisches Katholisches Bibelwerk},
  date      = {1973},
  author    = {Hossfeld, Frank Lothar and Meyer, Ivo},
}
@book{meyer1968,
  location   = {Grand Rapids, MI},
  title      = {Prophecy and Prophets in the Judaism of the Hellenistic-Roman Period},
  shorttitle = {Prophecy and Prophets},
  publisher  = {Eerdmans},
  date       = {1968},
  author     = {Meyer, Rudolf},
}
end{filecontents}
addbibresource{jobname.bib}

begin{document}
    nullvfill % only for the example
    There is a book about Old Testament false prophets
    by citeauthor{hossfeld1973} which they
    wrote some decades ago.autocite{hossfeld1973}

    There is also an article in an encyclopedia
    by citeauthor{meyer1968} which has only a
    single author.autocite{meyer1968}
    The two author work by citeauthor{hossfeld1973}
    does not need name disambiguation.
    The single author work by citeauthor{meyer1968}
    does need an initial so that we remember he was not
    the coauthor of the other work.autocite{hossfeld1973}
    The other work.autocite{meyer1968}
end{document}

There is a book about Old Testament false prophets by Hossfeld and Meyer which they wrote some decades ago. There is also an article in an encyclopedia by R. Meyer which has only a single author. The two author work by Hossfeld and Meyer does not need name disambiguation. The single author work by R. Meyer does need an initial so that we remember he was not the coauthor of the other work. The other work.

Fundamentally, however this can't get rid of the fact that Biber already performed name disambiguation calculations taking into account all names.

I also quite dislike the asymmetry in the resulting output for the Meyers. And it is not quite clear to me what should happen if you cite two works by Hossfeld with different Meyers as coauthors. Incidentally what would be the desired output if the authors in hossfeld1973 had been reversed, i.e. author = {Meyer, Ivo and Hossfeld, Frank Lothar},.


You can restrict disambiguation to first authors (instead of single authors) with

DeclareNameFormat{labelname}{%
  ifnumcomp{value{listcount}}{>}{1}
    {setcounter{uniquename}{0}}
    {}%
  ifcasevalue{uniquename}%
    usebibmacro{name:family}
      {namepartfamily}
      {namepartgiven}
      {namepartprefix}
      {namepartsuffix}%
  or
    ifuseprefix
      {usebibmacro{name:given-family}
        {namepartfamily}
        {namepartgiveni}
        {namepartprefix}
        {namepartsuffixi}}
      {usebibmacro{name:given-family}
        {namepartfamily}
        {namepartgiveni}
        {namepartprefixi}
        {namepartsuffixi}}%
  or
    usebibmacro{name:given-family}
      {namepartfamily}
      {namepartgiven}
      {namepartprefix}
      {namepartsuffix}%
  fi
  usebibmacro{name:andothers}}

biblatex-apa uses

DeclareNameFormat{labelname}{%
  ifboolexpr{test {ifnumcomp{value{listcount}}{>}{1}}
              or
              test {ifuniqueprimaryauthor}}
    {setcounter{uniquename}{0}}
    {}%
  ifcasevalue{uniquename}%
    usebibmacro{name:family}
      {namepartfamily}
      {namepartgiven}
      {namepartprefix}
      {namepartsuffix}%
  or
    ifuseprefix
      {usebibmacro{name:given-family}
        {namepartfamily}
        {namepartgiveni}
        {namepartprefix}
        {namepartsuffixi}}
      {usebibmacro{name:given-family}
        {namepartfamily}
        {namepartgiveni}
        {namepartprefixi}
        {namepartsuffixi}}%
  or
    usebibmacro{name:given-family}
      {namepartfamily}
      {namepartgiven}
      {namepartprefix}
      {namepartsuffix}%
  fi
  usebibmacro{name:andothers}}

for which you additionally need the option uniqueprimaryauthor=true,. (ifuniqueprimaryauthor checks if the first author's family name is unique across all first authors. In this example both Hossfeld and Meyer would satisfy this criterion.)

Answered by moewe on February 17, 2021

Add your own answers!

Ask a Question

Get help from others!

© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP