使用 biblatex apa 更改参考书目中的“报告”条目

使用 biblatex apa 更改参考书目中的“报告”条目

按照我正在写的文章的风格指南,我需要确保

  1. 报告标题后跟一个句号,报告类型后跟一个逗号、本报告系列编号和句号,但不要将所有这些都放在括号中。
  2. 此后,它必须是地点,后跟冒号和机构,以句号结尾。
  3. 接下来是“Zugriff”(访问)和 accesdate(urldate),格式为 tt.mm.yyyy,后跟逗号和“unter”(at)和 url。

例如

Burmann,C. / Blinda,L. / Nitschke,A. (2003)。以身份为基础的品牌管理概念基础。创新型市场管理教师工作文件,Nr. 1. 不来梅:不来梅大学。 2016 年 8 月 5 日http://www.lim.uni-bremen.de/files/burmann/publikationen/LiM-AP-01-Identitaetsbasiertes-Markenmanagement.pdf

到目前为止我有这个:

Burmann,C. / Blinda,L. / Nitschke,A. (2003)。以身份为基础的品牌管理概念基础(创新品牌管理教师档案 Nr. 1)。不来梅大学。不来梅。 Zugriff 2016 年 8 月 5 日,http://www.lim.uni-bremen.de/files/burmann/publikationen/LiM-AP-01-Identitaetsbasiertes-Markenmanagement.pdf

我可以在 .tex 文件的序言中包含哪些命令来生成这样的参考书目?

梅威瑟:

\documentclass[a4paper,12pt,toc=listof]{scrartcl} 
\linespread{1.25}
\usepackage[T1]{fontenc} 
\usepackage[utf8]{inputenc}
\usepackage{setspace}
\usepackage[english,ngerman]{babel}
\usepackage[babel,german=quotes,german=guillemets]{csquotes}
\usepackage[left=3.5cm, right=2cm, bottom=3.5cm]{geometry}
\usepackage[
style=apa,
sorting=nyt,
sortcites=true,
maxbibnames=99,
maxcitenames=2,
backend=biber,
bibliography=totoc,
isbn=false,
doi=true]{biblatex}
\DeclareLanguageMapping{german}{german-apa}
\DeclareFieldFormat{apacase}{#1}
\DefineBibliographyStrings{ngerman}{ 
   andothers = {{et\,al\adddot}},             
}

\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@report{Burmann.etal_2003,
  location = {{Bremen}},
  title = {Konzeptionelle {{Grundlagen}} des identit{\"a}tsbasierten {{Markenmanagements}}},
  url = {http://www.lim.uni-bremen.de/files/burmann/publikationen/LiM-AP-01-Identitaetsbasiertes-Markenmanagement.pdf},
  number = {1},
  institution = {{Universit{\"a}t Bremen}},
  type = {Arbeitspapiere des {{Lehrstuhls}} f{\"u}r innovatives {{Markenmanagement}}},
  author = {Burmann, Christoph and Blinda, Lars and Nitschke, Axel},
  editorb = {Burmann, Christoph},
  editorbtype = {redactor},
  urldate = {2016-08-05},
  date = {2003}
}
\end{filecontents}
\addbibresource{\jobname.bib}

\renewcommand*{\nameyeardelim}{\addspace}

\renewcommand*{\multinamedelim}[0]{\,/\,} 
\renewcommand*{\finalnamedelim}[0]{\,/\,}
\AtBeginBibliography{%
  \renewcommand*{\multinamedelim}[0]{\,/\,} 
  \renewcommand*{\finalnamedelim}[0]{\,/\,}
}

\setcounter{biburlnumpenalty}{100}  % allow breaks at numbers

\DeclareFieldFormat{number}{\bibstring{number}~#1}

% name sort always last, first
\AtBeginBibliography{%
    \DeclareNameAlias{editor}{last-first}
}

\renewbibmacro*{addinfo}{%
  \ifthenelse{\iffieldundef{edition}\AND%
              \iffieldundef{chapter}\AND%
              \iffieldundef{volumes}\AND%
              \iffieldundef{pages}\AND%
              \(\iffieldundef{volume}\OR\boolean{bbx:volseen}\)}
  {}
  {\printtext{\bibopenparen}%
   \printfield{edition}%
   \setunit*{\addcomma\addspace}%
   \printfield{chapter}%
   \setunit*{\addcomma\addspace}%
   \notbool{bbx:volseen}%
     {\iffieldundef{volume}{}{\global\booltrue{bbx:volseen}}%
      \printfield{volume}%
      \iffieldundef{part}{}{\printfield{part}}}{}%
   \setunit*{\addcomma\addspace}%
   \printfield{volumes}%
   \setunit*{\addcomma\addspace}%
   \printfield{pages}%
   \setunit{}%
   \printtext{\bibcloseparen}%
   \newunit}}

\renewbibmacro*{maintitle+title}{%
  \iffieldsequal{maintitle}{title}
    {\clearfield{maintitle}%
     \clearfield{mainsubtitle}%
     \clearfield{maintitleaddon}}
    {\iffieldundef{maintitle}
      {}
      {\usebibmacro{maintitle}%
       \newunit\newblock
       \iffieldundef{volume}
         {}
         {\setunit{\global\booltrue{bbx:volseen}}%
          \printfield{volume}%
          \printfield{part}%
          \setunit{\adddot\space}}}}%
  \usebibmacro{title}%
  \newunit}

\renewbibmacro*{maintitle+booktitle}{%
  \ifthenelse{\iffieldundef{maintitle}\AND\iffieldundef{booktitle}}
    {}
    {\usebibmacro{in}%
     \iffieldundef{maintitle}
      {}
      {\usebibmacro{maintitle}%
       \newunit\newblock
       \iffieldundef{volume}
         {}
         {\setunit{\addspace\global\booltrue{bbx:volseen}}%
          \printfield{volume}%
          \printfield{part}%
          \setunit{\adddot\addspace}}}%
    \usebibmacro{booktitle}}}

\renewbibmacro*{series+number}{%
  \printfield{series}%
  \setunit{\addcomma\space}%
  \printfield{number}%
  \newunit}

\usepackage{xpatch}

\xpatchbibdriver{book}
  {\printfield{series}}
  {\usebibmacro{series+number}}
  {}{}
\xpatchbibdriver{inbook}
  {\printfield{series}}
  {\usebibmacro{series+number}}
  {}{}
\xpatchbibdriver{incollection}
  {\printfield{series}}
  {\usebibmacro{series+number}}
  {}{}

\xpatchbibdriver{collection}
  {\printfield{number}}
  {}
  {}{}
\xpatchbibdriver{collection}
  {\printfield{series}}
  {\usebibmacro{series+number}}
  {}{}

\begin{document}

That's important stuff (\cite{Burmann.etal_2003}).

\printbibliography

\end{document}

答案1

与往常一样:如果您进行修改,biblatex-apa您可能会失去 APA 合规性。

biblatex-apa使用一些技巧来在括号中打印报告编号,我们可以使用更传统的方法,但可以重新利用其中一个宏。

\DeclareFieldFormat[report]{number}{\bibcpstring{number}~\apanum{#1}}
\renewbibmacro*{apa:reportnum}{%
  \newunit\newblock
  \printfield{type}%
  \setunit*{\addcomma\space}%
  \printfield{number}}

然后只需打印和institution。我认为效仿location的例子很有用standard.bbx

\xpatchbibdriver{report}
  {\printlist{institution}}
  {}
  {}{}
\newbibmacro*{location+institution}{%
  \printlist[default][1-1]{location}%
  \setunit*{\addcolon\space}%
  \printlist{institution}%
  \newunit}
\xpatchbibdriver{report}
  {\usebibmacro{location+publisher}}
  {\usebibmacro{location+institution}}
  {}{}

通过在加载包时urldate=short传递选项我们得到不同的日期格式。biblatex

平均能量损失

\documentclass[a4paper,12pt,toc=listof]{scrartcl} 
\usepackage[T1]{fontenc} 
\usepackage[utf8]{inputenc}
\usepackage[english,ngerman]{babel}
\usepackage[babel,german=quotes,german=guillemets]{csquotes}
\usepackage[
style=apa,
sorting=nyt,
sortcites=true,
maxbibnames=99,
maxcitenames=2,
backend=biber,
bibliography=totoc,
isbn=false,
doi=true,
urldate=short]{biblatex}
\DeclareLanguageMapping{german}{german-apa}
\DeclareFieldFormat{apacase}{#1}
\DefineBibliographyStrings{ngerman}{% 
   andothers = {{et\,al\adddot}},             
}

\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@report{Burmann.etal_2003,
  location    = {Bremen},
  title       = {Konzeptionelle Grundlagen des identit{\"a}tsbasierten Markenmanagements},
  url         = {http://www.lim.uni-bremen.de/files/burmann/publikationen/LiM-AP-01-Identitaetsbasiertes-Markenmanagement.pdf},
  number      = {1},
  institution = {Universit{\"a}t Bremen},
  type        = {Arbeitspapiere des Lehrstuhls f{\"u}r innovatives Markenmanagement},
  author      = {Burmann, Christoph and Blinda, Lars and Nitschke, Axel},
  editorb     = {Burmann, Christoph},
  editorbtype = {redactor},
  urldate     = {2016-08-05},
  date        = {2003},
}
\end{filecontents}
\addbibresource{\jobname.bib}

\renewcommand*{\nameyeardelim}{\addspace}

\renewcommand*{\multinamedelim}{\,/\,} 
\renewcommand*{\finalnamedelim}{\,/\,}
\AtBeginBibliography{%
  \renewcommand*{\multinamedelim}{\,/\,}%
  \renewcommand*{\finalnamedelim}{\,/\,}%
}

\setcounter{biburlnumpenalty}{100}  % allow breaks at numbers

\DeclareFieldFormat{number}{\bibstring{number}~#1}

% name sort always last, first
\AtBeginBibliography{%
    \DeclareNameAlias{editor}{last-first}
}

\renewbibmacro*{addinfo}{%
  \ifthenelse{\iffieldundef{edition}\AND%
              \iffieldundef{chapter}\AND%
              \iffieldundef{volumes}\AND%
              \iffieldundef{pages}\AND%
              \(\iffieldundef{volume}\OR\boolean{bbx:volseen}\)}
  {}
  {\printtext{\bibopenparen}%
   \printfield{edition}%
   \setunit*{\addcomma\addspace}%
   \printfield{chapter}%
   \setunit*{\addcomma\addspace}%
   \notbool{bbx:volseen}%
     {\iffieldundef{volume}{}{\global\booltrue{bbx:volseen}}%
      \printfield{volume}%
      \iffieldundef{part}{}{\printfield{part}}}{}%
   \setunit*{\addcomma\addspace}%
   \printfield{volumes}%
   \setunit*{\addcomma\addspace}%
   \printfield{pages}%
   \setunit{}%
   \printtext{\bibcloseparen}%
   \newunit}}

\renewbibmacro*{maintitle+title}{%
  \iffieldsequal{maintitle}{title}
    {\clearfield{maintitle}%
     \clearfield{mainsubtitle}%
     \clearfield{maintitleaddon}}
    {\iffieldundef{maintitle}
      {}
      {\usebibmacro{maintitle}%
       \newunit\newblock
       \iffieldundef{volume}
         {}
         {\setunit{\global\booltrue{bbx:volseen}}%
          \printfield{volume}%
          \printfield{part}%
          \setunit{\adddot\space}}}}%
  \usebibmacro{title}%
  \newunit}

\renewbibmacro*{maintitle+booktitle}{%
  \ifthenelse{\iffieldundef{maintitle}\AND\iffieldundef{booktitle}}
    {}
    {\usebibmacro{in}%
     \iffieldundef{maintitle}
      {}
      {\usebibmacro{maintitle}%
       \newunit\newblock
       \iffieldundef{volume}
         {}
         {\setunit{\addspace\global\booltrue{bbx:volseen}}%
          \printfield{volume}%
          \printfield{part}%
          \setunit{\adddot\addspace}}}%
    \usebibmacro{booktitle}}}

\renewbibmacro*{series+number}{%
  \printfield{series}%
  \setunit{\addcomma\space}%
  \printfield{number}%
  \newunit}

\usepackage{xpatch}

\xpatchbibdriver{book}
  {\printfield{series}}
  {\usebibmacro{series+number}}
  {}{}
\xpatchbibdriver{inbook}
  {\printfield{series}}
  {\usebibmacro{series+number}}
  {}{}
\xpatchbibdriver{incollection}
  {\printfield{series}}
  {\usebibmacro{series+number}}
  {}{}

\xpatchbibdriver{collection}
  {\printfield{number}}
  {}
  {}{}
\xpatchbibdriver{collection}
  {\printfield{series}}
  {\usebibmacro{series+number}}
  {}{}

\DeclareFieldFormat[report]{number}{\bibcpstring{number}~\apanum{#1}}
\renewbibmacro*{apa:reportnum}{%
  \newunit\newblock
  \printfield{type}%
  \setunit*{\addcomma\space}%
  \printfield{number}}

\xpatchbibdriver{report}
  {\printlist{institution}}
  {}
  {}{}
\newbibmacro*{location+institution}{%
  \printlist[default][1-1]{location}%
  \setunit*{\addcolon\space}%
  \printlist{institution}%
  \newunit}
\xpatchbibdriver{report}
  {\usebibmacro{location+publisher}}
  {\usebibmacro{location+institution}}
  {}{}

\begin{document}
That's important stuff \parencite{Burmann.etal_2003}.

\printbibliography
\end{document}

给出

Burmann,C. / Blinda,L. / Nitschke,A. (2003)。概念性的基础身份识别市场管理基础。创新型市场管理教师工作文件,Nr. 1. 不来梅:不来梅大学。 2016 年 8 月 5 日http://www.lim.uni-bremen.de/files/burmann/publikationen/LiM-AP-01-Identitaetsbasiertes-Markenmanagement.pdf

相关内容