Skip to content

Instantly share code, notes, and snippets.

Created July 19, 2017 12:40
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save anonymous/d2ea1fb5807856933012c8ce13c98457 to your computer and use it in GitHub Desktop.
Save anonymous/d2ea1fb5807856933012c8ce13c98457 to your computer and use it in GitHub Desktop.
Russian GOST
<?xml version="1.0" encoding="utf-8"?>
<style xmlns="http://purl.org/net/xbiblio/csl" class="in-text" version="1.0">
<info>
<title>Russian GOST R 7.0.5-2008 author-date citations with aplhabetic sorting</title>
<id>http://www.zotero.org/styles/gost-r-7-0-5-2008-author-date-alphab</id>
<link href="http://www.zotero.org/styles/gost-r-7-0-5-2008-author-date-alphab" rel="self"/>
<link href="https://dl.dropboxusercontent.com/u/95616327/Permanent_files/GOST-for-Zotero-Documentation.zip" rel="documentation"/>
<author>
<name>Roman Raspopov</name>
<email>romanraspopov@gmail.com</email>
<uri>http://vk.com/romanraspopov</uri>
</author>
<category citation-format="author-date"/>
<category field="generic-base"/>
<updated>2013-07-29T12:00:00+00:00</updated>
<summary>
Russian GOST-2008 style.
За основу были взяты стили Андрея Четверикова с разными видами сортировки (в порядке появления, в алфавитном порядке и с отображением фамилий вместо номеров ссылок), которые прекрасно работали, но не могли обеспечить многих требований ГОСТ 7.0.5-2008 "Библиографическая ссылка", ГОСТ 7.1-2003 "Библиографическая запись и описание" и ГОСТ 7.82-2001 "Библиографическая запись. Библиографическое описание электронных ресурсов". В данном стиле введен большой перечень усовершенствований, который позволил дополнить функционал стилей А. Четверикова.
Теперь стиль решает следующие задачи в соответствии с требованиями ГОСТов:
- Сортировка библиографии по языку (сначала русскоязычные, затем иностранные), а затем в алфавитном порядке (см. отдельные стили с сортировкой в порядке появления ссылок и в хронологическом порядке).
- Локализация стандартных обозначений ([et al.] / [и др.]; Vol. / Т.; P. / С. и другие), которые зависят от поля "Язык" ("Language"): для русскоязычных пусто, для иностранных "en" (без ковычек).
- Разделение областей описания знаками ". –" (точка и тире).
- Учет количества авторов:
- Для 1-3 авторов в начале описания указывается первый автор, в области сведений об ответственности указываются все авторы;
- Для 4 и более авторов описание начинается с заголовка источника, в области сведений об ответственности указывается первый автор и обозначение [и др.] или [et al.] в зависимости от языка источника.
- Сортировка производится с учетом того, что на первом месте может стоять не фамилия автора, а заглавие источника.
- В программе Zotero используеются следующие виды источников:
- Книга (Book) - для книг, многотомных изданий, отдельных томов;
- Раздел книги (Book Section) - для разделов (частей) книг;
- Диссертация (Thesis) - для диссертаций и авторефератов диссертаций;
- Документ конференции (Conference Paper) - для статей из сборников конференций, трудов и т.п.
- Статья из периодики (Journal Article) - для статей из журналов, периодических изданий;
- Статья из энциклопедии (Encyclopedia Article)
- Газетная статья (Newspaper Article)
- Веб-страница (Webpage) - для описания Электронных ресурсов УДАЛЕННОГО доступа
- Компьютерная программа (Computer Program) - для описания Электронных ресурсов ЛОКАЛЬНОГО доступа.
* - Практически все виды библиографического описания укладываются в эти встроенные типы Zotero.
Примечания:
- Составитель (сост.) в Zotero обозначается как "Редактор серии" (Series Editor).
- В поле Edition (Издание) нужно вводить информацию целиком «как есть», например: «2-е изд.» или «2-е изд. перераб. и доп.» или «2nd edition» – это сделано для возможности корректной обработки иностранных источников.
- Примеры оформлений разных источников и соответствие библиографических терминов и полей Zotero см. в приложении (файл "Приложение - ГОСТ + Zotero.doc").
Так как возможности локализации в текущей версии Zotero (4.0.8) довольно ограничены, иногда библиографическое описание источников оказывается вынужденно стандартизованным (не всегда можно учесть все нюансы оригинального библиографического описания), а также приходится идти на разного рода ухищрения при использовании полей в программе. Однако результат стоит того - в итоге список литературы автоматически формируется, сортируется и форматируется в соответствии с большинством требований ГОСТ.
Выражаю искреннюю благодарность Андрею Петровичу Фоту за его пособие с очень подробным описанием всех нюансов составления библиографических списков (Фот А.П. Оформление библиографических ссылок на использованные источники в научных работах : методические рекомендации соискателям ученых степеней. – Оренбург: ГОУ «ОГУ», 2005. – 24 с.), а также Андрею Четверикову за разработку основы стилей ГОСТ и их поддержку на сайте (http://chetvericov.ru/stil-oformleniya-dlya-mendeley-i-zotero-csl-po-gost-r-705-2008).
Блог для вопросов и предложений: http://romanraspopov-gost.blogspot.ru
Файл документации: https://dl.dropboxusercontent.com/u/95616327/Permanent_files/GOST-for-Zotero-Documentation.zip
</summary>
<rights license="http://creativecommons.org/licenses/by-sa/3.0/">This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 License</rights>
</info>
<!--_______________________________________________________________________________
___________________________ ЛОКАЛИЗАЦИЯ ТЕРМИНОВ ______________________________
_______________________________________________________________________________ -->
<locale xml:lang="en">
<terms>
<term name="et-al"> [et al.]</term>
<term name="and others"></term>
<term name="page" form="short">p.</term>
<term name="number-of-pages" form="short">p.</term>
<term name="number-of-volumes" form="short">vols.</term>
<term name="note" form="long"></term>
<term name="note" form="short"></term>
<term name="collection-editor" form="short">coll.</term>
<term name="editortranslator" form="short">
<single>ed. &amp; trans.</single>
<multiple>eds. &amp; trans.</multiple>
</term>
</terms>
</locale>
<locale xml:lang="ru">
<terms>
<term name="et-al"> [и др.]</term>
<term name="and others"></term>
<term name="page" form="short">с.</term>
<term name="number-of-pages" form="short">с.</term>
<term name="number-of-volumes" form="short">т.</term>
<term name="note" form="long"></term>
<term name="note" form="short"></term>
<term name="collection-editor" form="short">сост.</term>
<term name="collection-number" form="short">вып.</term>
<term name="translator" form="short">
<single>пер.</single>
<multiple>пер.</multiple>
</term>
<term name="editortranslator" form="short">
<single>ред. и пер.</single>
<multiple>ред. и пер.</multiple>
</term>
<!-- SHORT MONTH FORMS -->
<term name="month-01" form="short">янв.</term>
<term name="month-02" form="short">февр.</term>
<term name="month-03" form="short">марта</term>
<term name="month-04" form="short">апр.</term>
<term name="month-05" form="short">мая</term>
<term name="month-06" form="short">июня</term>
<term name="month-07" form="short">июля</term>
<term name="month-08" form="short">авг.</term>
<term name="month-09" form="short">сент.</term>
<term name="month-10" form="short">окт.</term>
<term name="month-11" form="short">нояб.</term>
<term name="month-12" form="short">дек.</term>
</terms>
</locale>
<locale>
<terms>
<term name="page-range-delimiter">-</term> <!-- Если между номерами страниц нужно тире, а не дефис [С. 56-59], то эту строку нужно закомментировать -->
</terms>
</locale>
<macro name="number-of-volumes">
<choose>
<if variable="language">
<text variable="number-of-volumes" prefix="in&#160;"/>
<label variable="number-of-volumes" form="short" prefix="&#160;"/>
</if>
<else>
<text variable="number-of-volumes" prefix="в&#160;"/>
<label variable="number-of-volumes" form="short" prefix="&#160;"/>
</else>
</choose>
</macro>
<macro name="language-sort"> <!-- Макрос сортировки по полю "Language" (сначала русскоязычные источники, затем иностранные) -->
<choose>
<if variable="language">
<text value="B000"/>
</if>
<else>
<text value="A000"/>
</else>
</choose>
</macro>
<!--_______________________________________________________________________________
_____________________________________ АВТОРЫ __________________________________
_______________________________________________________________________________ -->
<macro name="author_short"> <!-- Макрос для ненумерованных ссылок вида [Иванов, 2013] -->
<choose>
<if type="webpage">
<names variable="author">
<name form="short" name-as-sort-order="all" sort-separator="&#160;" delimiter=", " delimiter-precedes-last="always"/>
<substitute>
<text variable="title"/>
<text variable="container-title"/>
</substitute>
</names>
</if>
<else>
<names variable="author">
<name form="short" name-as-sort-order="all" sort-separator="&#160;" delimiter=", " delimiter-precedes-last="always"/>
<substitute>
<text variable="title"/>
</substitute>
</names>
</else>
</choose>
</macro>
<macro name="author-title">
<names variable="author" suffix=". ">
<!-- Добавить запятую между фамилией и инициалами автора: sort-separator=",&#160;", иначе sort-separator="&#160;" -->
<!-- Сделать шрифт фамилий и инициалов авторов наклонным: font-style="italic", иначе font-style="normal" -->
<name et-al-min="2" et-al-use-first="1" suppress-min="4" initialize-with="." font-style="normal" name-as-sort-order="first" sort-separator="&#160;"/>
<et-al term="and others"/>
</names>
<text variable="title"/>
</macro>
<macro name="author-title-medium">
<choose>
<if variable="medium">
<text macro="author-title" suffix=" [Электронный ресурс]"/>
</if>
<else>
<text macro="author-title"/>
</else>
</choose>
</macro>
<macro name="second-position-creators">
<names variable="author collection-editor editor translator" delimiter="; ">
<label form="short" prefix=" " suffix=". " text-case="lowercase" strip-periods="true"/>
<name et-al-min="4" et-al-use-first="1" delimiter=", " initialize-with="."/>
</names>
</macro>
<macro name="second-position-authors-only">
<names variable="author">
<label form="short" prefix=" " suffix=". " text-case="lowercase" strip-periods="true"/>
<name et-al-min="4" et-al-use-first="1" delimiter=", " initialize-with="."/>
</names>
</macro>
<macro name="second-position-creators-no-authors">
<names variable="collection-editor editor translator" delimiter="; ">
<label form="short" prefix=" " suffix=". " text-case="lowercase" strip-periods="true"/>
<name et-al-min="4" et-al-use-first="1" delimiter=", " initialize-with="."/>
</names>
</macro>
<!--_______________________________________________________________________________
_________________________ ВСПОМОГАТЕЛЬНЫЕ МАКРОСЫ _____________________________
_______________________________________________________________________________ -->
<macro name="citation-number">
<text variable="citation-number" suffix=".&#9;"/>
</macro>
<macro name="publisher">
<group prefix=" " delimiter=": " suffix=", ">
<text variable="publisher-place"/>
<text variable="publisher"/>
</group>
<text macro="year-date" suffix="."/>
</macro>
<macro name="day-month">
<date variable="issued">
<date-part name="day" form="numeric" suffix="&#160;"/>
<date-part name="month" form="short"/>
</date>
</macro>
<macro name="year-date">
<date variable="issued">
<date-part name="year"/>
</date>
</macro>
<macro name="page">
<label variable="page" form="short" prefix="" suffix="&#160;" text-case="capitalize-first"/>
<text variable="page"/>
</macro>
<macro name="number-of-pages">
<text variable="number-of-pages"/>
<label variable="number-of-pages" form="short" prefix="&#160;" suffix=""/>
</macro>
<macro name="pages-or-volumes">
<choose>
<if variable="volume">
<text macro="number-of-pages"/>
</if>
<else-if variable="number-of-volumes">
<text macro="volumes"/>
</else-if>
<else>
<text macro="number-of-pages"/>
</else>
</choose>
</macro>
<macro name="volume">
<choose>
<if variable="volume">
<label variable="volume" form="short" prefix="" suffix="&#160;" text-case="capitalize-first"/>
<text variable="volume"/>
</if>
</choose>
</macro>
<macro name="volumes">
<label variable="volume" form="short" suffix="&#160;1-" text-case="capitalize-first"/>
<text variable="number-of-volumes"/>
</macro>
<macro name="collection-number"> <!-- Номер выпуска (Вып. N) -->
<choose>
<if variable="collection-number">
<label variable="collection-number" form="short" prefix="" suffix="&#160;" text-case="capitalize-first"/>
<text variable="collection-number"/>
</if>
</choose>
</macro>
<!--_______________________________________________________________________________
______________________________ ССЫЛКИ В ТЕКСТЕ ________________________________
_______________________________________________________________________________ -->
<!-- Ненумерованные ссылки в тексте вида [Иванов, 2013] или [Иванов, 2013, с. 55]. Сортировка библиографии в алфавитном порядке. -->
<citation et-al-min="4" et-al-use-first="1" disambiguate-add-year-suffix="true" collapse="year" et-al-subsequent-use-first="1" disambiguate-add-names="false" disambiguate-add-givenname="false">
<sort>
<key macro="language-sort"/>
<key macro="author-title"/>
<key variable="issued"/>
</sort>
<!-- Два блока <layout> используются для правильного отображения в ссылке параметра <et al> - на рус. или англ. языке -->
<layout locale="en" prefix="[" suffix="]" delimiter="; " page-range-format="">
<group delimiter=", ">
<text macro="author_short" suffix=""/>
<text macro="year-date"/>
</group>
<choose>
<if variable="locator">
<label variable="locator" form="short" prefix=",&#160;" suffix="&#160;"/>
<text variable="locator"/>
</if>
</choose>
</layout>
<layout prefix="[" suffix="]" delimiter="; " page-range-format="">
<group delimiter=", ">
<text macro="author_short" suffix=""/>
<text macro="year-date"/>
</group>
<choose>
<if variable="locator">
<label variable="locator" form="short" prefix=",&#160;" suffix="&#160;"/>
<text variable="locator"/>
</if>
</choose>
</layout>
</citation>
<!--_______________________________________________________________________________
________________________________ БИБЛИОГРАФИЯ _________________________________
_______________________________________________________________________________ -->
<macro name="bibliography">
<text macro="citation-number"/>
<choose>
<!--_______________________________________________________________________________
_______________ КНИГА (в т.ч. многотомник или отдельный том, а также __________
Электронный ресурс локального доступа (CD-ROM, компьютерная программа и др.))__
_______________________________________________________________________________ -->
<if type="book">
<group delimiter=". – ">
<group delimiter=" / ">
<group delimiter=". ">
<group delimiter=" : ">
<text macro="author-title-medium"/>
<text variable="collection-title"/>
<text macro="number-of-volumes"/>
</group>
<text macro="volume"/>
<text variable="title-short"/>
</group>
<group delimiter=" ">
<text macro="second-position-creators"/>
<text variable="note"/>
</group>
</group>
<text macro="publisher"/>
<text macro="collection-number"/>
<text macro="pages-or-volumes"/>
<text variable="medium"/>
</group>
</if>
<!--_______________________________________________________________________________
_________________________ ДИССЕРТАЦИЯ или АВТОРЕФЕРАТ _________________________
_______________________________________________________________________________ -->
<else-if type="thesis" match="any">
<group delimiter=". – " prefix="">
<group delimiter=" / ">
<group delimiter=" : ">
<text macro="author-title"/>
<text variable="genre"/>
</group>
<text macro="second-position-authors-only"/>
</group>
<text macro="publisher"/>
<text macro="number-of-pages"/>
</group>
</else-if>
<!--_______________________________________________________________________________
___________ РАЗДЕЛ КНИГИ, СТАТЬЯ В СБОРНИКЕ, СТАТЬЯ В ЭНЦИКЛОПЕДИИ ____________
_______________________________________________________________________________ -->
<else-if type="chapter paper-conference entry-encyclopedia" match="any">
<group delimiter=". – ">
<group delimiter=" // ">
<group delimiter=" / ">
<text macro="author-title"/>
<text macro="second-position-authors-only"/>
</group>
<group delimiter=" / ">
<group delimiter=" : ">
<group delimiter=" ">
<text variable="container-title"/>
<text variable="event"/>
</group>
<text variable="collection-title"/>
<text macro="number-of-volumes"/>
</group>
<group delimiter=" ">
<text macro="second-position-creators-no-authors"/>
<text variable="note"/>
</group>
</group>
</group>
<text macro="publisher"/>
<text macro="volume"/>
<text macro="collection-number"/>
<text variable="title-short"/>
<text macro="page"/>
</group>
</else-if>
<!--_______________________________________________________________________________
_________________________ СТАТЬЯ В ПЕРИОДИКЕ, ЖУРНАЛЕ _________________________
_______________________________________________________________________________ -->
<else-if type="article-journal article-magazine" match="any">
<group delimiter=". – ">
<group delimiter=" // ">
<group delimiter=" / ">
<group delimiter=" : ">
<text macro="author-title"/>
<text variable="collection-title"/>
</group>
<text macro="second-position-authors-only"/>
</group>
<text variable="container-title"/>
</group>
<text macro="year-date"/>
<text macro="volume"/>
<text variable="title-short"/>
<text variable="issue" prefix="&#160;"/>
<text macro="page"/>
</group>
</else-if>
<!--_______________________________________________________________________________
______________________________ СТАТЬЯ В ГАЗЕТЕ ________________________________
_______________________________________________________________________________ -->
<else-if type="article-newspaper">
<group delimiter=". – ">
<group delimiter=" // ">
<group delimiter=" / ">
<group delimiter=" : ">
<text macro="author-title"/>
<text variable="section"/>
</group>
<text macro="second-position-authors-only"/>
</group>
<text variable="container-title"/>
</group>
<text macro="year-date"/>
<text macro="day-month"/>
<text macro="page"/>
</group>
</else-if>
<!--_______________________________________________________________________________
___________ ЭЛЕКТРОННЫЙ РЕСУРС УДАЛЕННОГО ДОСТУПА (ВЕБ-СТРАНИЦА)_______________
_______________________________________________________________________________ -->
<else-if type="webpage">
<group delimiter=". – " prefix="">
<group delimiter=" / ">
<group delimiter=" : ">
<text macro="author-title" suffix=" [Электронный ресурс]"/>
<text variable="genre"/>
</group>
<group delimiter=" ">
<text macro="second-position-authors-only"/>
<text variable="note"/>
</group>
</group>
<text variable="URL" prefix="Режим доступа: "/>
</group>
</else-if>
<!--_______________________________________________________________________________
_____________________________ Другие типы источников __________________________
_______________________________________________________________________________ -->
<else>
<group delimiter=". – ">
<group delimiter=" / ">
<group delimiter=". ">
<group delimiter=" : ">
<text macro="author-title"/>
<text variable="collection-title"/>
<text macro="number-of-volumes"/>
</group>
<text macro="volume"/>
<text variable="title-short"/>
</group>
<group delimiter=" ">
<text macro="second-position-creators"/>
<text variable="note"/>
</group>
</group>
<text macro="publisher"/>
<text macro="collection-number"/>
<text macro="pages-or-volumes"/>
</group>
</else>
</choose>
</macro>
<!--_______________________________________________________________________________
_________ Непосредственно БИБЛИОГРАФИЯ с сортировкой и локализацией ___________
_______________________________________________________________________________ -->
<bibliography et-al-min="4" et-al-use-first="1" page-range-format="">
<sort>
<!-- Сортировка по полю "Language" (сначала русскоязычные источники, затем иностранные), потом по алфавиту (ФИО или название), потом по дате издания -->
<key macro="language-sort"/>
<key macro="author-title"/>
<key variable="issued"/>
</sort>
<layout locale="en" suffix=".">
<text macro="bibliography"/>
</layout>
<layout suffix=".">
<text macro="bibliography"/>
</layout>
</bibliography>
</style>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment