Take the 2-minute tour ×
TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. It's 100% free, no registration required.

Consider two MWEs (minimum working examples):

\RequirePackage{filecontents}
\begin{filecontents}{\jobname.bib}
@article{Delbaen1998,
year={1998},
title={Title3},
author={Delbaen, F.},
}
@article{Delbaen1994,
year={1994},
title={Title2},
author={Delbaen, Freddy},
}
@article{Delbaen1993,
year={1993},
title={Title1},
author={Delbaen, Freddy},
}
\end{filecontents}

\documentclass{article}
\usepackage[latin9]{inputenc}
\usepackage[style=authoryear
,uniquename=init
,firstinits=true
,backend=biber]{biblatex}
\bibliography{\jobname}

\begin{document}

\cite{Delbaen1993,Delbaen1994,Delbaen1998}

\printbibliography
\end{document}

MWE1

and

\RequirePackage{filecontents}
\begin{filecontents}{\jobname.bib}
@article{Delbaen1998,
year={1998},
title={Title3},
author={Delbaen, Freddy},  % <----- THIS IS THE ONLY DIFFERENCE !
}
@article{Delbaen1994,
year={1994},
title={Title2},
author={Delbaen, Freddy},
}
@article{Delbaen1993,
year={1993},
title={Title1},
author={Delbaen, Freddy},
}
\end{filecontents}

\documentclass{article}
\usepackage[latin9]{inputenc}
\usepackage[style=authoryear
,uniquename=init
,firstinits=true
,backend=biber]{biblatex}
\bibliography{\jobname}

\begin{document}

\cite{Delbaen1993,Delbaen1994,Delbaen1998}

\printbibliography
\end{document}

MWE2

The effect of the option uniquename=init is that a name with the same initials uniquely identifies a citation. The optionfirstinits=true makes the bibliography display only initials.

Somehow I think, that these two names (Freddy Delbaen and F. Delbaen) should also be considered to be "the same" in the bibliogrpahy. This would mean, that sorting and dashes in the first MWE should be as in the second example.

How can I achieve this, without manually editing my bibtex database?

(Do you think this should be expected behavior?)

share|improve this question
    
Welcome to TeX.SX! –  Adam Liter Feb 25 at 3:05

1 Answer 1

I think there are good reasons for this behaviour. Imagine you were citing works by Frank Delbaen, Freddy Delbaen, and Frannie Delbaen. It is good that they get sorted separately, and it could not be clear to biber who yet a fourth "F. Delbaen" actually is (one of those three, or someone else?). With long enough bibliography and using only first initials, some level of ambiguity may be unavoidable, either on the output side or on the (computer-generated) input side...

If you don't want to 'fix' your bibliography database, you could use \DeclareSourceMap to do the replacement for you. Something like:

\DeclareSourcemap{
  \maps[datatype=bibtex]{
    \map[overwrite=true]{
      \step[fieldsource=author,
        match=\regexp{Delbaen,\s+F\.},
      replace=\regexp{Delbaen,\x20Freddy}]
    }
  }
}

should do the trick. It searches for 'Delbaen,<+1 or more spaces>F.' and replaces it with 'Delbaen, Freddy' (with exactly one space).

share|improve this answer
    
Note also that there is a lengthy discussion in § 4.11.4 of the biblatex manual, which, if nothing else, shows how complicated good name disambiguation can be. –  jon Feb 25 at 3:46
    
Thanks @jon. This is exactly, what I wanted to avoid, as I need to do this with every author. I think, there should be an option to treat names depending on their initials only and thus sort and use dash accordingly. Why would I want uniquename=init for my citations and then not treat it this way in the Bibliography? (esp. as many only Bibtex sources only include the initials.). PS: If I were citing works of Frank and Freddy Delbaen, uniquename=init would make no sense. –  user4514 Feb 25 at 16:04
    
@user4514 -- The way I read the uniquename counter description is that biblatex 'gives up' when things are too impossibly ambiguous for it to cope: The counter is set to 0 if the last name is unique, 1 if adding the first name will make it unique, 2 if the full name will make it unique. But if init (or variants) are given as the option, the counter is limited to 0 and 1 and if adding initials is not enough to disambiguate, it is set to 0. There may be a way to fix it, but I don't know where to find the details of how biblatex uses biber-generated \name and \labelname. –  jon Feb 25 at 17:41
    
In other words: 'F. Delbaen' and 'Freddy Delbaen' are treated as different authors by default, and I think that is the correct behaviour. (I'm also in favour of maintaining 'correct' databases by default, even though that comes at the cost of manual intervention. But I realize that sometimes output is automatically generated and manual intervention becomes problematic.) Anyway, maybe you should consider a feature request. I guess you want to tell biblatex to treat "different" people as the same person even if it looks like they are different people in the .bib file. –  jon Feb 25 at 17:50

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.