7

I'm trying to cite a paper that I found in the Collected Works of an author. I cannot access the original, so a stand-alone bibliography entry not mentioning the Collected Works would be inaccurate.

My main issue is that the year of the publication of the paper and the year of the publication of the book are not being clearly distinguished.

Below an example, where a hypothetical article ("Some Paper"), originally published in 1900 by Albert Einstein (in e.g. "Journal of Physics"), is included in a book ("Collected Works Vol. 1: The Early Years") edited by John Doe.

It would also be nice to be able to include additional information about the original publication—publisher, editors, journal ("Journal of Physics"), etc., rather than just the year—of the article found in the Collected Works.

\documentclass{article}

\usepackage[backend=biber, style=alphabetic]{biblatex}

\begin{filecontents}{references.bib}
@inbook{einstein1900,
    author = {Albert {Einstein}},
    title = {{Some Paper}},
    year = {1900},
    pages = {30 -- 40},
    crossref = {einstein2000collectedworks}}
@book{einstein2000collectedworks,
    author = {Albert {Einstein}},
    editor = {John {Doe}},
    title = {{Collected Works}},
    volume = {1},
    subtitle = {{The Early Years}},
    year = {2010},
    publisher = {Publisher}}
\end{filecontents}
\addbibresource{references.bib}

\begin{document}

\cite{einstein1900} appears in \cite{einstein2000collectedworks}.

\printbibliography
\end{document}

output

7

You can use the related field and refer to the original paper

\documentclass{article}

\usepackage[backend=biber, style=alphabetic]{biblatex}

\begin{filecontents}{\jobname.bib}
@inbook{einstein1900,
  author      = {Albert Einstein},
  title       = {Some Paper},
  pages       = {30 -- 40},
  crossref    = {einstein2000collectedworks},
  related     = {einstein1900orig},
  relatedtype = {reprintof},
}
@book{einstein2000collectedworks,
  author    = {Albert Einstein},
  editor    = {John Doe},
  title     = {Collected Works},
  volume    = {1},
  subtitle  = {The Early Years},
  year      = {2010},
  publisher = {Publisher},
}
@article{einstein1900orig,
  author      = {Albert Einstein},
  title       = {Some Paper},
  year        = {1900},
  journal     = {Journal},
  volume      = {34},
  number      = {2},
  pages       = {45-62},
}
\end{filecontents}
\addbibresource{\jobname.bib}

\begin{document}

\autocite{einstein1900} appears in \autocite{einstein2000collectedworks}.

\printbibliography
\end{document}

Albert Einstein. “Some Paper”. In: Collected Works. The Early Years. Ed. by John Doe. Vol. 1. Publisher, 2010, pp. 30–40. Repr. of “Some Paper”. In: Journal 34.2 (1900), pp. 45–62.


If you want to base the label on the original publication date you need to pass the origdate to the entry and modify the label template

\documentclass{article}

\usepackage[backend=biber, style=alphabetic]{biblatex}

\DeclareLabelalphaTemplate{
  \labelelement{
    \field[final]{shorthand}
    \field{label}
    \field[strwidth=3,strside=left,ifnames=1]{labelname}
    \field[strwidth=1,strside=left]{labelname}
  }
  \labelelement{
    \field[strwidth=2,strside=right]{origyear}
    \field[strwidth=2,strside=right]{year}
  }
}

\begin{filecontents}{\jobname.bib}
@inbook{einstein1900,
  author      = {Albert Einstein},
  title       = {Some Paper},
  pages       = {30 -- 40},
  crossref    = {einstein2000collectedworks},
  origdate    = {1900},
  related     = {einstein1900orig},
  relatedtype = {reprintof},
}
@book{einstein2000collectedworks,
  author    = {Albert Einstein},
  editor    = {John Doe},
  title     = {Collected Works},
  volume    = {1},
  subtitle  = {The Early Years},
  year      = {2010},
  publisher = {Publisher},
}
@article{einstein1900orig,
  author      = {Albert Einstein},
  title       = {Some Paper},
  year        = {1900},
  journal     = {Journal},
  volume      = {34},
  number      = {2},
  pages       = {45-62},
}
\end{filecontents}
\addbibresource{\jobname.bib}

\begin{document}

\autocite{einstein1900} appears in \autocite{einstein2000collectedworks}.

\printbibliography
\end{document}
2
  • That's perfect, thank you so much! One small question though; is it possible to modify the citation labels so that [Ein10b] becomes [Ein00], i.e. references the original year of publication? – steve Apr 11 at 16:50
  • @steve That's also possible (see edit), but unfortunately requires some duplication of data. – moewe Apr 11 at 16:53
5

If there's only one reference to the collected-works piece, I think you're better off using the @incollection entry type for the main entry. That way, you can reduce, ever so slightly, the amount of clutter in the body of the document, since you'll be generating just one citation call-out. If you feel it's helpful for your readers, your provide a note field to mention where and when the piece was published originally.

enter image description here

\documentclass{article}

\begin{filecontents}[overwrite]{references.bib}
@incollection{einstein1900,
    author    = {Albert {Einstein}},
    title     = {{Some Paper}},
    origyear  = {1900},
    pages     = {30--40},
    editor    = {John {Doe}},
    booktitle = {{Collected Works}},
    booksubtitle = {{The Early Years}},
    volume    = {1},
    year      = {2010},
    publisher = {Publisher},
    address   = {Some Place},
    note      = {(Originally published in 1905 in \emph{Annalen der Physik})},
}
\end{filecontents}

\usepackage[style=alphabetic]{biblatex} % 'backend=biber' is the default
\addbibresource{references.bib}

\begin{document}
\cite{einstein1900} showed that \dots
\printbibliography
\end{document}
3

Use the note field:

@inbook{einstein1900,
...
note = {Reprint of \emph{Journal of Physics} \textbf{45} (1900) 23--56.},
...
1
  • 1
    For this to work you need to know the citation style in advance though... aside from that a simple solution, thank you! – steve Apr 11 at 15:49

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.