开斋节

开斋节

我想知道如何正确使用在线期刊(例如 PLoS Computational Biology)上发表的文章所提供的页面字段。

尽管在线期刊上发表的文章没有实际的页码,但期刊本身和 Google Scholar 都提供了一个pages包含诸如e1000112(PLoS) 和20122863(Proceedings of the Royal Society) 等值的字段。

除了语义之外,使用该pages字段不会带来任何问题,但第二个值不以字母开头这一事实意味着打印的引用显示p. 20122863是错误的,因为该数字不是实际的页码。

此外,在我看来,该pages领域不应该用于此目的,所以我试图寻找替代方案,并发现eid [来源]

开斋节

电子识别码适用于印刷版的电子期刊。此编号取代页码,用于在印刷版中查找文章。有时也称为引文编号。

但我不确定这是否合适,因为其中提到了印刷卷,而且我确信并不是每本在线期刊最终都会出版印刷卷。

问题:

natbib对于与+bibtexbiblatex+兼容的在线期刊提供的页面字段,我应该使用哪个字段biber

答案1

总结:通用的解决方案几乎是不可能的,biblatex提供bookpagination(和pagination字段)并且良好编码的风格将利用这些,所以这bookpagination = {none}似乎是一个很好的方法biblatex

详细答案

一个适用于两者的解决方案natbib几乎biblatex是不可能的(有人可能会说几乎不可能),原因很简单,它不是natbib决定biblatex打印什么以及书目是什么样子的,而是书目样式(\bibliographystyle在“BibTeX 包”中,因为没有更好的名字[.bst样式];,stylebibstyle[biblatex样式.bbx]);所以一个通用的解决方案必须与全部如今可用的款式(.bst以及.bbx)——款式相当多。

虽然大多数样式都遵循通用语义和最佳实践,但我们不能确定所有样式都会pages以某种方式显示字段(好吧,我们可以非常确定字段,pages因为它是如此重要和标准,但字段eid完全是另一回事)。

大多数“奇特”字段(如等eideprint注定不受多种样式的支持 - 甚至更基本的(可以说非常不奇特 - 至少按照现代标准)URL 字段也缺少某些样式,仅仅是因为它们是在 URI 出现之前完成的,而 URI 于 1994 年标准化(RFC1738),例如:ieeetr.bst自 1988 年以来似乎一直如此(除了许可证的澄清)。

话虽如此,该pages领域可能是您获得广泛适用的解决方案的最佳选择,而且从语义上看,它似乎并不太遥远。

但即使对该字段的处理pages在参考书目样式中也不是标准化或规范化的:某些.bst样式会检查该pages字段是否包含多页,以决定是否打印“p.”或“pp。”(plain.bstieeetr.bst),但德语中无需这么做,因为在两种情况下缩写都是“S.”,因此natdin.bst并不关心检查“多个页面”,但如果存在 URL,则其行为会有所不同。

biblatex提供了许多开箱即用的功能,因此几乎所有风格都会使用它们(这也是因为很多风格biblatex都编码得很好),我还没有遇到过尝试自己实现这些检查的风格。

biblatex将检查pages字段是否实际包含“页面范围”,页面范围由识别为数字的字符(参见\DeclareNumChars)和识别为范围分隔符/指示符的字符(参见\DeclareRangeChars)以及某些其他命令(参见\DeclareRangeCommands\DeclarePageCommands)组成。如果pages字段仅包含在此处声明的字符和命令,则通过测试\ifpages。如果pages字段通过\ifpages测试并使用打印\mkpageprefix,则将添加页面前缀“p。”/“pp。”如果没有,则字段pages按原样打印,不带前缀。事实上,我们可以控制添加到字段的前缀,pages如§2.3.10 中所述分页,第 35 页,biblatex文档,我们甚至可以定义自己的前缀(如下图所示)引用演示文稿中的特定幻灯片)。

甚至可以根据每个条目设置“分页方案”,使用pagination(控制文内引用如何格式化(postnote如果它通过\ifpages))和bookpagination(控制pagespagetotal字段)。

因此,您可以对这些特殊pages字段执行的操作是添加bookpagination = {none}到相应的条目(或希望出现抛出 false 的字符\ifpagesePLoS 条目中就是这样做的)。

例如bookpagination = {none}

@article{Clune22032013,
  author   = {Clune, Jeff and Mouret, Jean-Baptiste and Lipson, Hod}, 
  title    = {The Evolutionary Origins of Modularity},
  volume   = {280}, 
  number   = {1755},
  pages    = {20122863},
  bookpagination = {none},
  date     = {2013}, 
  doi      = {10.1098/rspb.2012.2863},
  eprint   = {http://rspb.royalsocietypublishing.org/content/280/1755/20122863.full.pdf+html}, 
  journal  = {Proceedings of the Royal Society B: Biological Sciences} 
}

数学家协会

\documentclass{article}
\usepackage[style=authoryear, backend=biber]{biblatex}
\usepackage{filecontents}
\usepackage{hyperref}

\begin{filecontents*}{\jobname.bib}
@article{Clune22032013,
  author   = {Clune, Jeff and Mouret, Jean-Baptiste and Lipson, Hod}, 
  title    = {The Evolutionary Origins of Modularity},
  volume   = {280}, 
  number   = {1755},
  pages    = {20122863},
  bookpagination = {none},
  date     = {2013}, 
  doi      = {10.1098/rspb.2012.2863}, 
  eprint   = {http://rspb.royalsocietypublishing.org/content/280/1755/20122863.full.pdf+html}, 
  journal  = {Proceedings of the Royal Society B: Biological Sciences} 
}
\end{filecontents*}
\addbibresource{\jobname.bib}

\begin{document}
  \cite[3]{Clune22032013}  

  \printbibliography
\end{document}

产量,请注意,对于文内引用,页面前缀是启用的(也是默认的page),而期刊页面的前缀是禁用的。

在此处输入图片描述

相关内容