12

I'm using biblatex. I want to store an entry in my .bib file that has the following semantics:

  • It refers to a book as a whole
  • The book contains articles from different authors
  • The book itself has no author
  • For citing, the editor is named
  • It has to be distinguishable when citing, since the editor is stated with an added '(Hg.)' (That's German abbrevation for 'Herausgeber' which would be editor) instead of the author.

How do I do this?

4
  • 4
    If there's an editor field but no author field for an entry of type @book, BibTeX and biblatex will happily use the information in the editor field for citations. To cite individual chapters in the book (possibly authored by persons other than the editor), you should entries of type @inbook, possibly using the crossref field to point to the entry of type @book; this will save you from having to repeat fields such as year, publisher, and so on.
    – Mico
    Sep 2, 2013 at 9:50
  • Incollection?.. Sep 2, 2013 at 10:49
  • @Mico I am getting a "missing author" warning in Overleaf for a book with an editor field but no author. What gives? Mar 30, 2022 at 13:27
  • 1
    @Mico I was (unwittingly) using a flawed .bst file which checked all fields for author and issued warnings everywhere. Thanks for yout input. Mar 31, 2022 at 9:25

2 Answers 2

16

The @collection entry seems to be exactly what you want.

The biblatex documentation says:

A single-volume collection with multiple, self-contained contributions by distinct authors which have their own title. The work as a whole has no overall author but it will usually have an editor.

@book is not the most appropriate choice here because biblatex expects a @book to have an author.

The entries within that work can then be of type @incollection crossrefing back to the @collection.

The language file needs slight patching so we have Hg. and not Hrsg.. The format of the editor string can be changed from "Name, ed." to "Name (ed.)" with two more lines.

\documentclass[ngerman, a4paper]{article}
\usepackage[utf8]{inputenc}% everyone loves UTF-8
\usepackage[T1]{fontenc}
\usepackage{babel}
\usepackage{csquotes}
\usepackage[style=authortitle, backend=biber]{biblatex}
\addbibresource{\jobname.bib}

\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@incollection{WaContCont,
  author      = {Anna Wärnsby},
  title       = {On Controllability as a Contextual Variable},
  crossref    = {StEngMod},
  pages       = {69-98},
}

@collection{StEngMod,
  editor      = {Tsangalidis, Anastasios and Facchinetti, Roberta},
  title       = {Studies on English Modality},
  date        = {2009},
  location    = {Bern},
  publisher   = {Lang},
}
\end{filecontents}

% this is our language file with the new abbreviations for editor
\begin{filecontents}{ngerman-ed.lbx}
  \ProvidesFile{ngerman-ed.lbx}
  \InheritBibliographyExtras{ngerman}% extras are inherited from ngerman ...
  \DeclareBibliographyStrings{%
    inherit          = {ngerman},% .... as well as all the keys
    editor           = {{Herausgeber}{Hg\adddot}},
    editors          = {{Herausgeber}{Hg\adddot}},
  }
\end{filecontents}

\DeclareLanguageMapping{ngerman}{ngerman-ed}% use the new abbreviations

% editor string in parentheses
\DeclareFieldFormat{editortype}{\mkbibparens{#1}}% so editor is set in parentheses
% do not set the parentheses off with a comma
\DeclareDelimFormat{editortypedelim}{\addspace}

\begin{document}
  The \verb|@collection| is \cite{StEngMod}, whereas \cite{WaContCont} is \verb|@incollection|.
  \printbibliography
\end{document}

example citations and bibliography from MWE above

6

bibtex as well as biblatex take the editor field if there is no author field given. With the @inbook and @book entry types you can easily distinguish between single chapters or essays within the book and the book itself.

Also the crossref mechanism of biblatex makes it very easy to reference from the @inbook to the @book entry. Therefore you don't have to enter all the book's information again for every @inbook entry which also reduces redundancy.

Compare the example below:

\begin{filecontents}{\jobname.bib}
@book{test,
editor= {Some Name},
title = {Random Title},
year = {2013},
}

@inbook{test2,
author= {Another Name},
title = {Some Essay},
crossref = {test}
}
\end{filecontents}

\documentclass{article}
\usepackage{biblatex}
\usepackage[ngerman]{babel}

\addbibresource{\jobname.bib}

\begin{document}
\nocite{*}
\printbibliography
\end{document}

enter image description here

4
  • Thanks for your excellent answer. Unfortunately I can only select one as the accepted one and the other was a bit better IMHO.
    – Scolytus
    Sep 2, 2013 at 15:39
  • @Scolytus No worries, I can deal with that ;-) Sep 2, 2013 at 18:29
  • +1 because your answer shows a minimal, easy-to-understand configuration, but I would definitely agree with @moewe in that these entries should be a @(in)collection and not a @(in)book if the subportion has a distinct author. I might even suggest changing your answer because this change wouldn’t add any complexity.
    – doncherry
    Sep 18, 2013 at 9:34
  • @doncherry Reconsidering my answer I would agree with you. @(in)collection would be the better option. Sep 18, 2013 at 10:55

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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