![引用(例如)交叉引用的 bib latex 条目中的年份](https://linux22.com/image/371271/%E5%BC%95%E7%94%A8%EF%BC%88%E4%BE%8B%E5%A6%82%EF%BC%89%E4%BA%A4%E5%8F%89%E5%BC%95%E7%94%A8%E7%9A%84%20bib%20latex%20%E6%9D%A1%E7%9B%AE%E4%B8%AD%E7%9A%84%E5%B9%B4%E4%BB%BD.png)
在以下 MWE 中,我想引用与 bib 条目相关的年份Butz:Ur
。但是,这是一个子条目,并且年份(如预期的那样)在父条目中定义。
我正在尝试弄清楚如何设置引用,以便在必要时以菊花链形式返回到父级以获取信息(而不是手动查找父级并更改代码)?
\documentclass{memoir}
\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@mvproceedings{Renger:state,
annote={bibliography verified},
title = {State and Temple Economy in the Ancient Near East},
volumes={2},
langid = {german},
Location = {Leuven},
eventtitle={International conference organized by the Katholieke Universiteit Leuven},
eventdate={1978-04-10/1978-04-14},
Number = {5},
isbn={90-70192-03-9},
Publisher = {Departement Oriëntalistiek},
Series = {Orientalia Lovaniensia Analecta},
editor = {Edward Lipiński},
pagetotal={xv+780},
date={1979}}
@inproceedings{Butz:Ur,
annote={bibliography verified},
crossref={Renger:state},
Author = {Kilian Butz},
Shorttitle = {Ur in altbabylonischer Zeit},
Title = {Ur in altbabylonischer Zeit as Wirtschaftsfaktor},
pages={257--409},
volume={1}}
\end{filecontents}
\usepackage{polyglossia}
\setdefaultlanguage[variant=british]{english}
\setotherlanguage[]{french}
\setotherlanguage[spelling=old]{german}
\usepackage[autostyle=true,english=british,german=quotes]{csquotes}
% BIBLIOGRAPHY SET-UP. Use British English and Chicago style
\usepackage[%
notes,compresspages,
isbn=false,
backref=true,
backrefstyle=two,
dateera=secular,
block=space,
autopunct=true,
language=auto,
autolang=langname,
backend=biber,
urlnotes=false,
hyperref=true
]{biblatex-chicago}
\addbibresource{\jobname.bib}
\begin{document}
\mainmatter
We want the year for Butz: \citeyear{Butz:Ur} which should be the same as \citeyear{Renger:state}.
\end{document}
按照目前写法,尝试从子条目中提取年份失败。相关输出如下:
答案1
由于某种原因,我无法解释biblatex-chicago
明确禁用从类型到所有其他类型的日期部分继承@mv...
(问号不是我的)
\DeclareDataInheritance{mvbook,mvcollection,mvproceedings,mvreference}%
{*}{% ???
\noinherit{year}
\noinherit{month}
\noinherit{day}
\noinherit{endyear}
\noinherit{endmonth}
\noinherit{endday}
\noinherit{origyear}
\noinherit{origmonth}
\noinherit{origday}
\noinherit{origendyear}
\noinherit{origendmonth}
\noinherit{origendday}}
我们可以@mvproceedings
用@inproceedings
\DeclareDataInheritance{mvproceedings}{inproceedings}{
\inherit{year}{year}
\inherit{month}{month}
\inherit{day}{day}
\inherit{endyear}{endyear}
\inherit{endmonth}{endmonth}
\inherit{endday}{endday}
\inherit{origyear}{origyear}
\inherit{origmonth}{origmonth}
\inherit{origday}{origday}
\inherit{origendyear}{origendyear}
\inherit{origendmonth}{origendmonth}
\inherit{origendday}{origendday}}
你也可以写信\DeclareDataInheritance{mvbook,mvcollection,mvproceedings,mvreference}{*}
要求取回所有东西,或者更保守地\DeclareDataInheritance{mvproceedings,mvbook,mvcollection,mvreference}{book,inbook,collection,incollection,inproceedings,reference,inreference}
\documentclass{memoir}
\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@mvproceedings{Renger:state,
annote={bibliography verified},
title = {State and Temple Economy in the Ancient Near East},
volumes={2},
langid = {german},
Location = {Leuven},
eventtitle={International conference organized by the Katholieke Universiteit Leuven},
eventdate={1978-04-10/1978-04-14},
Number = {5},
isbn={90-70192-03-9},
Publisher = {Departement Oriëntalistiek},
Series = {Orientalia Lovaniensia Analecta},
editor = {Edward Lipiński},
pagetotal={xv+780},
date={1979}}
@inproceedings{Butz:Ur,
annote={bibliography verified},
crossref={Renger:state},
Author = {Kilian Butz},
Shorttitle = {Ur in altbabylonischer Zeit},
Title = {Ur in altbabylonischer Zeit as Wirtschaftsfaktor},
pages={257--409},
volume={1}}
\end{filecontents}
\usepackage{polyglossia}
\setdefaultlanguage[variant=british]{english}
\setotherlanguage[]{french}
\setotherlanguage[spelling=old]{german}
\usepackage[autostyle=true,english=british,german=quotes]{csquotes}
% BIBLIOGRAPHY SET-UP. Use British English and Chicago style
\usepackage[%
notes,compresspages,
isbn=false,
backref=true,
backrefstyle=two,
dateera=secular,
block=space,
autopunct=true,
language=auto,
autolang=langname,
backend=biber,
urlnotes=false,
hyperref=true
]{biblatex-chicago}
\addbibresource{\jobname.bib}
\DeclareDataInheritance{mvproceedings}{inproceedings}{
\inherit{year}{year}
\inherit{month}{month}
\inherit{day}{day}
\inherit{endyear}{endyear}
\inherit{endmonth}{endmonth}
\inherit{endday}{endday}
\inherit{origyear}{origyear}
\inherit{origmonth}{origmonth}
\inherit{origday}{origday}
\inherit{origendyear}{origendyear}
\inherit{origendmonth}{origendmonth}
\inherit{origendday}{origendday}}
\begin{document}
\mainmatter
We want the year for Butz: \citeyear{Butz:Ur} which should be the same as \citeyear{Renger:state}.
\end{document}