问题描述
我正在尝试将可通过 Zotero 获得的“自然”样式转换为带注释的样式,该样式通过引用“额外”字段来获取注释(类似于 APA 第 7 版注释)。
我不熟悉 csl 中的编码,所以我发现多亏了谷歌,我所要做的就是添加该行
<text variable="note" display="block"/>
</layout>
之前
(在此处找到此信息:https://forums.zotero.org/discussion/19552/annotated-bibliography-in-mla-or-chicago-style)
我这样做了,现在在 Zotero 的样式编辑器中生成样式时出现以下错误:
生成引文和参考书目时出错: citeproc-js 错误:级别不匹配错误:想要 bib_first 但找到 bib_other
我已经使用 csl 样式和区域设置编辑器 (https://validator.citationstyles.org/) 检查了我的代码,它没有给我任何错误。谷歌搜索此错误消息并没有给出任何好的结果。一旦它工作,我试图在 Microsoft Word 中使用这种样式。
这是代码的最后几行(如果删除了 <text variable="note" display="block"/>
行,则错误消失了):
<text macro="editor"/>
<text macro="volume"/>
<text variable="page"/>
<text macro="issuance"/>
<text macro="access"/>
</group>
<text variable="note" display="block"/>
</layout>
</bibliography>
</style>
如果有人能帮忙解决这个问题,我将不胜感激。谢谢!
解决方法
好的,我现在可以通过替换我添加的行来解决这个问题
<text variable="note" prefix=""/>
不再有错误消息,引文看起来很棒!我会留下这个问题,以防有人正在或将要遇到同样的问题。
,我尚未对此进行测试,但我认为问题在于您仅在 display="block"
下的单个元素上使用了 <layout/>
。根据 https://docs.citationstyles.org/en/1.0.1/specification.html#display,“显示属性 ... 可用于将各个书目条目组织成一个或多个文本块。如果使用,所有呈现元素都应在显示属性的控制之下。强>"
如果您希望注释出现在新行上,我会尝试在参考书目部分引入一个新的 <group display="block">...</group>
,它包含 <layout/>
的原始内容,然后是 <text variable="note" display="block"/>
.