bibtex 中有一个看似有用的字段,我依稀记得在 1990 年代初期曾用过,后来就没用了。它叫做 crossref。
我收到此错误消息:错误的交叉引用---条目“Tomkins01”引用了条目“Campbell01”,但该条目不存在
对于此代码:
@book{Campbell01,
title={Sceptical essays on human rights},
editor={Campbell, Tom and Ewing, Keith D and Tomkins, Adam},
year={2001},
publisher={Oxford University Press},
address = {Oxford},
month=12
}
@inbook{Tomkins01,
title={Introduction: On being sceptical about human rights},
author={Tomkins, Adam},
crossref = {Campbell01},
pages={1--11},
chapter = 1,
annote = {}
}
@inbook{Bellamy01,
title={Constitutive Citizenship versus Constitutional Rights: Republican Reflections on the {EU} Charter and the Human Rights Act},
author={Tomkins, Adam},
crossref = {Campbell01},
pages={15--40},
chapter = 2,
annote = {}
}
我复制并粘贴了 crossref 以确保它是正确的!我在 overleaf 中使用 natbib。如果我太笨了,请见谅!
答案1
这是 bibtex 的一个限制:它不会回顾,因此交叉引用的条目在数据库文件中的出现时间必须晚于每个交叉引用它的条目(并且交叉引用的条目本身不能交叉引用另一个条目)。
因此您必须将 Campbell01 条目移到其他条目后面。
使用 biblatex + biber 时这不是必需的,因为顺序无关紧要。