biblatex-apa 中出版日期范围的输出

biblatex-apa 中出版日期范围的输出

请考虑以下事项

\RequirePackage{filecontents}

\begin{filecontents*}{mybib.bib}
@book{test1,
    address = {Edinburgh},
    title = {I and thou},
    publisher = {T. \& {T}. {Clark}},
    author = {Buber, Martin},
    translator = {Smith, Ronald Gregor},
    year = {1937},
    origdate = {1923/1924}
}
@incollection{test2,
    address = {Cambridge, {MA}},
    title = {Deliberation and democratic legitimacy},
    booktitle = {Deliberative democracy: {Essays} on reason and politics},
    publisher = {MIT {Press}},
    author = {Cohen, Joshua},
    editor = {Bohman, James and Rehg, William},
    year = {1997/1998},
    origdate = {1989},
    pages = {67--91}
}
}
\end{filecontents*}

\documentclass[a4paper]{article}


% Set the values for the bibliography
\usepackage[
    style=apa,
    backend=biber,
    isbn=false,
    url=false,
    doi=false,
    eprint=false,
    hyperref=true,
    backref=false,
    firstinits=false,
]{biblatex}

% Recommended by biblatex
\usepackage[utf8]{inputenc}
\usepackage{csquotes}
\usepackage{xpatch}

% Set language
\usepackage[british]{babel}
\DeclareLanguageMapping{british}{british-apa}

\addbibresource{mybib.bib}

\begin{document}

\cite{test1} 

\cite{test2}

\printbibliography
\end{document}

并注意数据范围是如何打印的

在此处输入图片描述

APA 样式中的数据范围(我猜)应像这样打印:Someauthor, 1997-1998。带有日期范围的样式的问题biblatex-apa在于,year字段呈现为1997/1998而不是1997/1998,而的数据范围origdate仅呈现第一年1997

如何调整样式以便将上面的 MWE 输出为

在此处输入图片描述

答案1

例如使用:

@book{test1,
  address = {Edinburgh},
  title = {I and thou},
  publisher = {T. \& {T}. {Clark}},
  author = {Buber, Martin},
  translator = {Smith, Ronald Gregor},
  year = {1937},
  related = {test1orig},
  relatedtype = {reprintfrom}
}

@book{test1orig,
  address = {OrigPlace},
  title = {I and thou},
  publisher = {OrigPublisher},
  author = {Buber, Martin},
  translator = {Smith, Ronald Gregor},
  date = {1923/1924}
}

这样,我得到:

在此处输入图片描述

这是正确的。APA 格式没有将重印年份放进去,但如果你想这样做,你可以修改related:reprintfromapa.bbx 中的宏。

答案2

有一些事情可以解决大部分问题。

babel首先,我建议您重新安排- csquotes-的加载顺序biblatex;也许是这样的:

\usepackage[T1]{fontenc}% see: http://tex.stackexchange.com/q/71517/8528
\usepackage[utf8]{inputenc}
\usepackage[british]{babel}
\usepackage{csquotes}
\usepackage[
style=apa,
backend=biber,
isbn=false,
url=false,
doi=false,
eprint=false,
hyperref=true, % <-- not loaded in original question
backref=false,
firstinits=false,
]{biblatex}

\DeclareLanguageMapping{british}{british-apa}

另一个问题在于.bib条目本身。您有test2

year = {1997/1998},
origdate = {1989},

但你想要:

date = {1997/1998},
origdate = {1989},

对于您的第二次参考,您现在将获得以下引用:

科恩,1989/1997–1998

在你的参考书目中:

Cohen, J. (1997–1998)。协商与民主合法性。J. Bohman & W. Rehg (Eds.),协商民主:理性与政治论文 (第 67-91 页)。马萨诸塞州剑桥:麻省理工学院出版社。(原著出版于 1989 年)

test1我认为,问题在于,APA样式并不关心origendyear,所以它只打印origyear,根据biblatex手册,如果给出了范围,则默认只取第一个日期。

我犹豫着是否要建议修复,因为我不确定这是否是 APA 样式的一般“特性”或者是该样式实现中的一个错误。

相关内容