书目:设置和调用“电子”类别的正确方法是什么

书目:设置和调用“电子”类别的正确方法是什么

简短问题:

在上下文中设置和调用书目机制的正确方法是什么,例如使用类别电子的

长问题:

查看上下文文档和源代码,它表明对于电子类别我们有:

  • 必填字段:标题
  • 可选字段:地址、作者、出版方式、月份、注释、组织、网址、年份、doi

例如,考虑以下代码:

\startbuffer[example]
@ELECTRONIC {example,
    title = "One title",
    url = "http://www.example.org",
}
\stopbuffer

\usebtxdefinitions[aps]

\definebtxdataset[basic]
\usebtxdataset[basic][example.buffer]
\definebtxrendering
    [basic]
    [aps]
    [dataset=basic]

\setupbtx[dataset=basic]
\nocite[example]

\starttext
\placelistofpublications[basic]
\stoptext

渲染时,它会产生以下可怕的输出:

上述代码的输出

因此,对我来说,这是一个错误的输出,因为只应呈现标题和网址。那么我的问题是,如何正确使用此类别,我遗漏了什么?

附言:

如果我添加此代码:

\startsetups btx:aps:list:electronic
    \btxdoif {author} {
        \texdefinition{btx:aps:author}
    }
    \texdefinition{btx:aps:title}
    \texdefinition{btx:aps:organization-if-not-author}
    \btxdoif {howpublished} {
        \texdefinition{btx:aps:doi-url} {\btxspace\btxflush{howpublished}}
    }
    \btxdoif {year} {
        \btxleftparenthesis
        \texdefinition{btx:aps:year}
        \btxrightparenthesis
    }
    \texdefinition{btx:aps:note}
\stopsetups

我得到了正确的输出:

正确的输出

但我觉得我需要改变这样的定义,这似乎不正确

相关内容