为什么我的某些引文没有出现在参考文献列表中?

为什么我的某些引文没有出现在参考文献列表中?

我的一些引文出现在正文中,但不出现在最后的参考文献列表中。也就是说,文本中会显示“blabla (Oksanen, 2016)”,但 Oksanen 的条目不会显示。

我尝试过的事情:

  • 它是 .bib 条目吗?我尝试使用有问题的 bibentries 构建 MWE,但引用按预期工作。
  • 是我引用的方式吗?我使用了\citeyearpar在 tex.stackexchange 上找到的自定义代码片段。然而,在我构建的 MWE 中,相同的命令也会创建我正在寻找的引用,即使我使用普通命令也不会创建引用\parencite
  • 是我编译的方式吗?我不这么认为,因为它在 MWE 中有效。我使用 pdfLaTeX -> BibTeX -> pdfLaTeX -> pdfLaTeX 进行编译

我真的很困惑,尤其是因为引用是在文本中创建的。我甚至使用了 hyperref,但当我单击文本中的引用时,它会跳转到参考列表的空白部分!

这是来自我原始文档的包含完整前言的 MWEB。如果我用style=mla它替换style=authoryear-comp,它就会起作用!

\documentclass[12pt,twoside]{report}
\usepackage[utf8]{inputenc}
\usepackage{graphicx}
\usepackage[a4paper, width=150mm,top=25mm,bottom=25mm,bindingoffset=6mm]{geometry}
\usepackage{caption}
\usepackage{subcaption}
\usepackage{pgffor}
\usepackage{hyperref}
\usepackage{pdflscape}
\usepackage[toc,page]{appendix}
\usepackage{booktabs} 
\usepackage{siunitx}
\usepackage{rotating}
\setlength{\parindent}{0pt}
\usepackage{setspace}
\onehalfspacing
\usepackage[backend=biber,natbib=true, style=mla]{biblatex}

\usepackage{filecontents}

\begin{filecontents}{\jobname.bib}
@Report{Oksanen2016,
  author        = {Oksanen, Heikki},
  title         = {Smoothing Asymmetric Shocks vs. Redistribution in the Euro Area: A Simple Proposal for Dealing with Mistrust in the Euro Area},
  abstract      = {The euro area will not have a centralised budget and smoothing of country-specific asymmetric shocks via private financial markets will develop only slowly. Mis},
  date          = {2016-03-23},
}
@Article{Dolls2016,
  author        = {Dolls, Mathias and Fuest, Clemens and Heinemann, Friedrich and Peichl, Andreas},
  title         = {Reconciling Insurance with Market Discipline: a Blueprint for a European Fiscal Union},
  volume        = {62},
  number        = {2},
  pages         = {210--231},
  issn          = {1610-241X},
  date          = {2016-06-01},
  doi           = {10.1093/cesifo/ifw004},
  file          = {Full Text PDF:C\:\\Users\\felix\\AppData\\Roaming\\Mozilla\\Firefox\\Profiles\\zd4w2j8k.default\\zotero\\storage\\E26WEBI4\\Dolls et al. - 2016 - Reconciling Insurance with Market Discipline a Bl.pdf:application/pdf},
  journaltitle  = {{CESifo} Economic Studies},
  shortjournal  = {{CESifo} Econ Stud},
  shorttitle    = {Reconciling Insurance with Market Discipline},
  url           = {https://academic.oup.com/cesifo/article/62/2/210/1744891/Reconciling-Insurance-with-Market-Discipline-a},
  urldate       = {2017-05-22},
}

\end{filecontents}

\addbibresource{\jobname.bib}

\DeclareCiteCommand{\citeyearpar}
    {}
    {\mkbibparens{\bibhyperref{\printfield{year}}}}
    {, }
    {}

%\addbibresource{\jobname.bib}

\begin{document}
this:\citeyearpar{Dolls2016} and that \citeyearpar{Oksanen2016}


\printbibliography
\end{document} 

答案1

这与您使用的样式有关。biblatex-mla目前不支持所有标准条目类型。在BibLaTex 仅显示书籍参考。就您而言,问题在于@report没有得到适当的支持。

如果您想使用所有标准条目类型,则必须使用不同的样式。

您可以尝试类似

\DeclareBibliographyAlias{report}{book}

或者

\DeclareBibliographyAlias{report}{unpublished}

但这只是为了挽救局面,很可能不会取得预期的效果。

相关内容