Условное утверждение для изменяющегося стиля журнала
Я работаю над настройкой стиля цитирования (CSL) для конкретного ежегодного журнала конференции. Существующий стиль цитирования, как правило, правильный, но конференция требует определенного и другого стиля для своего журнала по сравнению со всеми другими журналами. Например, существующий стиль журнала обеспечивает следующее для всех журналов:
Автор Ф., Автор С. и Т. Автор. Название статьи журнала. Отчет о транспортных исследованиях: Журнал Совета по транспортным исследованиям, № 9999, 2013, стр. 107–117.
в то время как конференция требует следующий стиль только для их журнала:
Автор Ф., Автор С. и Т. Автор. Название статьи журнала. В отчете по исследованиям в области транспорта: Журнал Совета по исследованиям в области транспорта, № 9999, Совет по исследованиям в области транспорта при Национальных академиях, Вашингтон, округ Колумбия, 2013 год, стр. 107–117.
Мой главный вопрос: как изменить стиль цитирования для журналов, но только когда заголовок соответствует определенному заголовку журнала?
Общий стиль цитирования для журналов показан ниже:
<else-if type="article-journal article-newspaper" match="any">
<group delimiter=". ">
<text macro="title"/>
<group delimiter=", ">
<text variable="container-title" font-style="italic" form="long"/>
<text variable="volume" prefix="Vol. "/>
<text variable="issue" prefix="No. "/>
<text macro="issued"/>
<text macro="page"/>
</group>
</group>
</else-if>
В настоящее время я работаю над добавлением оператора else-if, который выбирает type="article-journal"
, но также распознает, когда переменная title="specific journal title"
включить изменения в стиле, запрошенном конференцией. Увидеть ниже:
<else-if type="article-journal article-newspaper" match="any">
<choose>
<if match=".[title='specific journal title']">
<!-- SPECIFIC JOURNAL CITATION -->
</if>
<else>
<!-- GENERAL JOURNAL CITATION -->
</else>
</choose>
</else-if>
Я считаю, что этот новый код не работает, потому что используемое соответствие не указано в CSL, но я видел примеры в XML для использования <when>
а также <otherwise>
(которые, по-видимому, не принимаются csl. Как создать форматирование для журнала, если для данной цитаты требуется другой формат в том же "типе"?
2 ответа
Спасибо за добавление некоторых примеров. Судя по вашему примеру с документом "Отчет об исследованиях в области транспорта", он вовсе не похож на журнальную статью, а скорее на главу, отчет или документ конференции. Ссылки на журнальные статьи редко печатают издателя ("Совет по исследованиям в области транспорта при Национальных академиях, Вашингтон, округ Колумбия") или используют "В" перед названием публикации.
Я бы попытался изменить тип элемента ваших документов TRR (например, "глава", "отчет" или "документ-конференция" CSL) и посмотреть, приблизит ли вас один из них к тому, что вам нужно. Текущий стиль в Кстати, репозиторий CSL уже определяет форматы для этих трех типов элементов. И если вы используете Zotero, см. https://aurimasv.github.io/z2csl/typeMap.xml для отображения между типами элементов Zotero и CSL и полями.,
К сожалению, это невозможно. Значение установлено на match
(.[title='specific journal title']
) недопустимо в схеме CSL 1.0.1. Схема не предлагает метод тестирования переменного содержимого, и это сделано специально, чтобы предотвратить сложность, предотвращая такой вид специального кода в коде стиля.