I am supposed to cite according to APA 7th reference style.
Dictionary entries: https://apastyle.apa.org/style-grammar-guidelines/references/examples/dictionary-entry-references (Number 1)
Book published with new foreword by another author: https://apastyle.apa.org/style-grammar-guidelines/references/examples/book-references (Number 4)
Necessary preamble:
\usepackage[english]{babel}
\usepackage[style=apa,sortcites=true,sorting=nyt,backend=biber]{biblatex}
\DeclareLanguageMapping{american}{american-apa}
\addbibresource{references.bib}
References.bib
:
Dictionary entry:
@inreference{merriam-webster,
title = {Semantics},
url = {https://www.merriam-webster.com/dictionary/semantics},
booktitle = {Merriam-Webster.com dictionary},
editor = {Merriam-Webster},
urldate = {2022-26-05},
}
The \parencite{merriam-webster}
function gives the correct output for the in-text quotation. The problem is in the bibliography list. I tried to use author={{Merriam-Webster}},
but the In text seemed to disappear for some reason. Therefore the "editor" keyword did work, but now I have (Ed.) after the author which is not technically correct.
Output:
Book published with new foreword by another author entry:
@book{schumpeter_theory_1983,
location = {New Brunswick, N.J},
title = {The theory of economic development: an inquiry into profits, capital, credit, interest, and the business cycle},
isbn = {978-0-87855-698-4},
url = {https://books.google.no/books?id=-OZwWcOGeOwC&printsec=frontcover&hl=no#v=onepage&q&f=false},
pagetotal = {255},
publisher = {Transaction Books},
author = {Schumpeter, Joseph A.},
date = {1983},
}
Output:
While the in-text citation is "(Schumpeter, 1983)". The book was originally published in 1934, but republished in 1983 with a new introduction by another author. This one is the hardest to manipulate to fit APA7 style as referred to above.
How can i manipulate the entries in order to confirm with the APA7 standards?
UPDATE:
I managed to add origyear = {1934}
for the book bibliography entry, by adding the following code
\renewbibmacro*{date}{%
\iffieldundef{origyear}{%
}{%
\setunit*{\addspace}%
\printtext[brackets]{\printorigdate}%
}%
}
The in-text citation now seems to be correct, but not sure how to add the author of the introduction section. I tried introduction = {Elliot, John E.}
but it would not show up in the bibliography list.
Best Answer
biblatex-apa
comes with an extensive example.bib
filebiblatex-apa-test-references.bib
that contains all entries from the printed APA manual (at least as far as I know). So if you know the relevant APA rule, you are very likely to find all you need in there.For the
@inreference
you were almost there. You need to useauthor
instead ofeditor
, though. It is not clear to me why this did not work for you in your first attempt, but I can assure you that with a current version ofbiblatex-apa
(2021/12/24 v9.15) andbiblatex
(2022/02/02 v3.17) the code below produces the output shown. Note that there was a typo in theurldate
:2022-26-05
is not a valid date inYYYY-MM-DD
format. You wanturldate = {2022-05-26},
.For the
@book
you can useorigdate
to give the original year of publication. You use thebiblatex-apa
-specific fieldwith
for the with-authors.There is no need to redefine any bibmacros. Additionally, you do not need the
biblatex
optionssortcites=true,sorting=nyt,
(sortcites
is enabled by default if you usestyle=apa,
andsorting=nyt,
switches from APA specific sorting to generic name-year-title sorting).\DeclareLanguageMapping{american}{american-apa}
has also not been needed for a few years.