citeproc 0.4 → 0.4.0.1
raw patch · 19 files changed
+3917/−3801 lines, 19 filesPVP ok
version bump matches the API change (PVP)
API changes (from Hackage documentation)
Files
- CHANGELOG.md +8/−0
- citeproc.cabal +4/−4
- src/Citeproc/Eval.hs +4/−7
- src/Citeproc/Locale.hs +1/−1
- test/extra/issue19.txt +0/−244
- test/extra/issue22.txt +0/−540
- test/extra/issue27.txt +0/−690
- test/extra/issue37.txt +0/−56
- test/extra/issue38.txt +0/−721
- test/extra/issue61.txt +0/−66
- test/extra/issue_19.txt +244/−0
- test/extra/issue_22.txt +540/−0
- test/extra/issue_27.txt +690/−0
- test/extra/issue_37.txt +56/−0
- test/extra/issue_38.txt +721/−0
- test/extra/issue_61.txt +66/−0
- test/extra/issue_74.txt +111/−0
- test/extra/issue_pandoc6813.txt +1472/−0
- test/extra/pandoc6813.txt +0/−1472
CHANGELOG.md view
@@ -1,5 +1,13 @@ # citeproc changelog +## 0.4.0.1++ * Fix bug introduced by the fix to #61 (#74).+ In certain circumstances, we could get doubled "et al.".+ * Depend on unicode-collation unconditionally (#71). It is necessary+ even when text-icu is used, because of Text.Collate.Lang.+ * Rename tests in extra/ so they fall into categories.+ ## 0.4 * We now use Lang from unicode-collation rather than defining our own.
citeproc.cabal view
@@ -1,6 +1,6 @@ cabal-version: 2.2 name: citeproc-version: 0.4+version: 0.4.0.1 synopsis: Generates citations and bibliography from CSL styles. description: citeproc parses CSL style files and uses them to generate a list of formatted citations and bibliography@@ -27,7 +27,8 @@ test/overrides/*.txt tested-with: GHC == 8.0.2, GHC == 8.2.2, GHC == 8.4.4, GHC == 8.6.5,- GHC == 8.8.3, GHC == 8.10.1+ GHC == 8.8.3, GHC == 8.10.1,+ GHC == 9.0.1 source-repository head type: git@@ -77,11 +78,10 @@ , filepath , file-embed , pandoc-types >= 1.22 && < 1.23+ , unicode-collation >= 0.1.3 && < 0.2 -- , pretty-show if flag(icu) build-depends: text-icu- else- build-depends: unicode-collation >= 0.1.3 && < 0.2 ghc-options: -Wall -Wincomplete-record-updates
src/Citeproc/Eval.hs view
@@ -1987,12 +1987,16 @@ lookupTerm emptyTerm { termName = "and" , termForm = Long } Nothing -> return Nothing+ let finalNameIsOthers = (lastMay names >>= nameLiteral) == Just "others"+ -- bibtex conversions often have this, and we want to render it "et al" let etAlUseLast = nameEtAlUseLast nameFormat let etAlThreshold = case etAlMin of Just x | numnames >= x -> case (disamb >>= disambEtAlNames, etAlUseFirst) of (Just n, Just m) -> Just (max m n) (_, y) -> y+ | numnames < x+ , finalNameIsOthers -> Just (numnames - 1) _ -> Nothing let beforeLastDelim = case mbAndTerm of@@ -2052,16 +2056,9 @@ | otherwise -> Formatted mempty{ formatPrefix = Just beforeEtAl } . (:[]) <$> lookupTerm' emptyTerm{ termName = "et-al" }- let finalNameIsOthers = (lastMay names >>= nameLiteral) == Just "others"- -- bibtex conversions often have this, and we want to render it "et al" let addNameAndDelim name idx | etAlThreshold == Just 0 = NullOutput | idx == 1 = name- | idx == numnames- , finalNameIsOthers =- if inSortKey- then NullOutput- else etAl | idx == numnames , etAlUseLast , maybe False (idx - 1 >=) etAlThreshold
src/Citeproc/Locale.hs view
@@ -77,7 +77,7 @@ ("zh", Just "CN") ] --- | Retrieves the "primary dialect" corresponding to a langage,+-- | Retrieves the "primary dialect" corresponding to a language, -- e.g. "lt-LT" for "lt". getPrimaryDialect :: Lang -> Maybe Lang getPrimaryDialect lang =
− test/extra/issue19.txt
@@ -1,244 +0,0 @@->>===== MODE =====>>-bibliography-<<===== MODE =====<<----->>===== RESULT =====>>-<div class="csl-bib-body">- <div class="csl-entry">Díaz-León, E. (2013). What Is Social Construction? Eur J Philos 1–16.</div>- <div class="csl-entry">Díaz-León, E. (2015). In Defence of Historical Constructivism about Races. Ergo, an Open Access Journal of Philosophy <i>2</i>.</div>- <div class="csl-entry">Díaz-León, E. (2016). <i>Wo> as a Politically Significant Term: A Solution to the Puzzle. Hypatia 245–258.</div>-</div>-<<===== RESULT =====<<--->>===== CSL =====>>-<?xml version="1.0" encoding="utf-8"?>-<style xmlns="http://purl.org/net/xbiblio/csl" version="1.0" class="in-text" default-locale="en-US" demote-non-dropping-particle="sort-only" page-range-format="expanded">- <info>- <title>Cell</title>- <id>http://www.zotero.org/styles/cell</id>- <link href="http://www.zotero.org/styles/cell" rel="self"/>- <link href="http://www.cell.com/authors" rel="documentation"/>- <author>- <name>Adam Mark</name>- <email>a.mark@uoguelph.ca</email>- </author>- <contributor>- <name>Julian Onions</name>- <email>julian.onions@gmail.com</email>- </contributor>- <contributor>- <name>Aurimas Vinckevicius</name>- <email>aurimas.dev@gmail.com</email>- </contributor>- <category citation-format="author-date"/>- <category field="biology"/>- <issn>0092-8674</issn>- <eissn>1097-4172</eissn>- <summary>The Cell journal style. Original by Julian Onions.</summary>- <updated>2013-01-26T22:06:38+00:00</updated>- <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>- <macro name="author-short">- <names variable="author">- <name form="short" and="text"/>- </names>- </macro>- <macro name="author-count">- <names variable="author">- <name form="count"/>- </names>- </macro>- <macro name="author">- <names variable="author">- <name name-as-sort-order="all" initialize-with="." and="text" delimiter-precedes-last="always"/>- </names>- </macro>- <macro name="issued">- <date variable="issued">- <date-part name="year"/>- </date>- </macro>- <macro name="publisher">- <group prefix="(" delimiter=": " suffix=")">- <text variable="publisher-place"/>- <text variable="publisher"/>- </group>- </macro>- <macro name="editor">- <names variable="editor">- <name initialize-with="." and="text" delimiter-precedes-last="always"/>- <label form="short" prefix=", "/>- </names>- </macro>- <citation et-al-min="3" et-al-use-first="1" disambiguate-add-year-suffix="true" collapse="year">- <sort>- <key macro="author-short" names-min="1" names-use-first="1"/>- <key macro="author-count" names-min="3" names-use-first="3"/>- <key macro="author" names-min="3" names-use-first="1"/>- <key macro="issued"/>- <key variable="title"/>- </sort>- <layout prefix="(" suffix=")" delimiter="; ">- <group delimiter=", ">- <text macro="author-short"/>- <text macro="issued"/>- </group>- </layout>- </citation>- <bibliography et-al-min="11" et-al-use-first="10">- <sort>- <key macro="author-short" names-min="1" names-use-first="1"/>- <key macro="author-count" names-min="3" names-use-first="3"/>- <key macro="author" names-min="3" names-use-first="1"/>- <key macro="issued"/>- </sort>- <layout suffix=".">- <group delimiter=" ">- <text macro="author"/>- <text macro="issued" prefix="(" suffix=")."/>- <choose>- <if type="article article-magazine article-newspaper article-journal review" match="any">- <text variable="title" suffix="."/>- <text variable="container-title" form="short" text-case="title"/>- <group delimiter=", ">- <text variable="volume" font-style="italic"/>- <text variable="page"/>- </group>- </if>- <else-if type="chapter paper-conference" match="any">- <text variable="title" suffix="."/>- <text variable="container-title" prefix="In " suffix="," text-case="title"/>- <text macro="editor"/>- <text macro="publisher" suffix=","/>- <label variable="page" form="short"/>- <text variable="page"/>- </else-if>- <else-if type="thesis">- <text variable="title" suffix="."/>- <text variable="genre" suffix="."/>- <text variable="publisher"/>- </else-if>- <else>- <text variable="title"/>- <text macro="publisher"/>- </else>- </choose>- </group>- </layout>- </bibliography>-</style>-<<===== CSL =====<<----->>===== INPUT =====>>-[- {- "id": "diaz2013",- "type": "article-journal",- "title": "What Is Social Construction?",- "container-title": "European Journal of Philosophy",- "page": "1-16",- "URL": "http://onlinelibrary.wiley.com/doi/10.1111/ejop.12033/abstract",- "DOI": "10.1111/ejop.12033",- "ISSN": "1468-0378",- "language": "en",- "author": [- {- "family": "Díaz-León",- "given": "Esa"- }- ],- "issued": {- "date-parts": [- [- 2013,- 5,- 1- ]- ]- },- "accessed": {- "date-parts": [- [- 2015,- 11,- 14- ]- ]- },- "container-title-short": "Eur J Philos"- },- {- "id": "diaz2015",- "type": "article-journal",- "title": "In Defence of Historical Constructivism about Races",- "container-title": "Ergo, an Open Access Journal of Philosophy",- "volume": "2",- "URL": "http://hdl.handle.net/2027/spo.12405314.0002.021",- "DOI": "10.3998/ergo.12405314.0002.021",- "ISSN": "2330-4014",- "author": [- {- "family": "Díaz-León",- "given": "Esa"- }- ],- "issued": {- "date-parts": [- [- 2015- ]- ]- }- },- {- "id": "diaz2016",- "type": "article-journal",- "title": "<i>Wo> as a Politically Significant Term: A Solution to the Puzzle",- "container-title": "Hypatia",- "page": "245-258",- "URL": "http://onlinelibrary.wiley.com.uaccess.univie.ac.at/doi/10.1111/hypa.12234/abstract",- "DOI": "10.1111/hypa.12234",- "ISSN": "1527-2001",- "title-short": "<i>Woman</i> as a Politically Significant Term",- "language": "en",- "author": [- {- "family": "Díaz-León",- "given": "Esa"- }- ],- "issued": {- "date-parts": [- [- 2016,- 2,- 1- ]- ]- },- "accessed": {- "date-parts": [- [- 2016,- 2,- 18- ]- ]- },- "container-title-short": "Hypatia"- }-]-<<===== INPUT =====<<--->>===== VERSION =====>>-1.0-<<===== VERSION =====<<-
− test/extra/issue22.txt
@@ -1,540 +0,0 @@->>===== MODE =====>>-citation-<<===== MODE =====<<-->>===== RESULT =====>>-<sup>1</sup>-<<===== RESULT =====<<-->>===== CSL =====>>-<?xml version="1.0" encoding="utf-8"?>-<style xmlns="http://purl.org/net/xbiblio/csl" class="in-text" version="1.0" demote-non-dropping-particle="sort-only" page-range-format="minimal">- <info>- <title>Vancouver (superscript)</title>- <id>http://www.zotero.org/styles/vancouver-superscript</id>- <link href="http://www.zotero.org/styles/vancouver-superscript" rel="self"/>- <link href="http://www.nlm.nih.gov/bsd/uniform_requirements.html" rel="documentation"/>- <author>- <name>Michael Berkowitz</name>- <email>mberkowi@gmu.edu</email>- </author>- <contributor>- <name>Sean Takats</name>- <email>stakats@gmu.edu</email>- </contributor>- <contributor>- <name>Sebastian Karcher</name>- </contributor>- <category citation-format="numeric"/>- <category field="medicine"/>- <summary>Vancouver style as outlined by International Committee of Medical Journal Editors Uniform Requirements for Manuscripts Submitted to Biomedical Journals: Sample References</summary>- <updated>2012-09-27T22:06:38+00:00</updated>- <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">- <date form="text" delimiter=" ">- <date-part name="year"/>- <date-part name="month" form="short" strip-periods="true"/>- <date-part name="day"/>- </date>- <terms>- <term name="collection-editor" form="long">- <single>editor</single>- <multiple>editors</multiple>- </term>- <term name="presented at">presented at</term>- <term name="available at">available from</term>- <term name="section" form="short">sect.</term>- </terms>- </locale>- <locale xml:lang="fr">- <date form="text" delimiter=" ">- <date-part name="day"/>- <date-part name="month" form="short" strip-periods="true"/>- <date-part name="year"/>- </date>- </locale>- <macro name="author">- <names variable="author">- <name sort-separator=" " initialize-with="" name-as-sort-order="all" delimiter=", " delimiter-precedes-last="always"/>- <label form="long" prefix=", "/>- <substitute>- <names variable="editor"/>- </substitute>- </names>- </macro>- <macro name="editor">- <names variable="editor" suffix=".">- <name sort-separator=" " initialize-with="" name-as-sort-order="all" delimiter=", " delimiter-precedes-last="always"/>- <label form="long" prefix=", "/>- </names>- </macro>- <macro name="chapter-marker">- <choose>- <if type="chapter paper-conference entry-dictionary entry-encyclopedia" match="any">- <text term="in" text-case="capitalize-first"/>- </if>- </choose>- </macro>- <macro name="publisher">- <choose>- <!--discard publisher info for articles-->- <if type="article-journal article-magazine article-newspaper" match="none">- <group delimiter=": " suffix=";">- <choose>- <if type="thesis">- <text variable="publisher-place" prefix="[" suffix="]"/>- </if>- <else-if type="speech"/>- <else>- <text variable="publisher-place"/>- </else>- </choose>- <text variable="publisher"/>- </group>- </if>- </choose>- </macro>- <macro name="access">- <choose>- <if variable="URL">- <group delimiter=": ">- <text term="available at" text-case="capitalize-first"/>- <text variable="URL"/>- </group>- </if>- </choose>- </macro>- <macro name="accessed-date">- <choose>- <if variable="URL">- <group prefix="[" suffix="]" delimiter=" ">- <text term="cited" text-case="lowercase"/>- <date variable="accessed" form="text"/>- </group>- </if>- </choose>- </macro>- <macro name="container-title">- <choose>- <if type="article-journal article-magazine chapter paper-conference article-newspaper review review-book entry-dictionary entry-encyclopedia" match="any">- <group suffix="." delimiter=" ">- <choose>- <if type="article-journal review review-book" match="any">- <text variable="container-title" form="short" strip-periods="true"/>- </if>- <else>- <text variable="container-title" strip-periods="true"/>- </else>- </choose>- <choose>- <if variable="URL">- <text term="internet" prefix="[" suffix="]" text-case="capitalize-first"/>- </if>- </choose>- </group>- <text macro="edition" prefix=" "/>- </if>- <!--add event-name and event-place once they become available-->- <else-if type="bill legislation" match="any">- <group delimiter=", ">- <group delimiter=". ">- <text variable="container-title"/>- <group delimiter=" ">- <text term="section" form="short" text-case="capitalize-first"/>- <text variable="section"/>- </group>- </group>- <text variable="number"/>- </group>- </else-if>- <else-if type="speech">- <group delimiter=": " suffix=";">- <group delimiter=" ">- <text variable="genre" text-case="capitalize-first"/>- <text term="presented at"/>- </group>- <text variable="event"/>- </group>- </else-if>- <else>- <group delimiter=", " suffix=".">- <choose>- <if variable="collection-title" match="none">- <group delimiter=" ">- <label variable="volume" form="short" text-case="capitalize-first"/>- <text variable="volume"/>- </group>- </if>- </choose>- <text variable="container-title"/>- </group>- </else>- </choose>- </macro>- <macro name="title">- <text variable="title"/>- <choose>- <if type="article-journal article-magazine chapter paper-conference article-newspaper review review-book entry-dictionary entry-encyclopedia" match="none">- <choose>- <if variable="URL">- <text term="internet" prefix=" [" suffix="]" text-case="capitalize-first"/>- </if>- </choose>- <text macro="edition" prefix=". "/>- </if>- </choose>- <choose>- <if type="thesis">- <text variable="genre" prefix=" [" suffix="]"/>- </if>- </choose>- </macro>- <macro name="edition">- <choose>- <if is-numeric="edition">- <group delimiter=" ">- <number variable="edition" form="ordinal"/>- <text term="edition" form="short"/>- </group>- </if>- <else>- <text variable="edition" suffix="."/>- </else>- </choose>- </macro>- <macro name="date">- <choose>- <if type="article-journal article-magazine article-newspaper review review-book" match="any">- <group suffix=";" delimiter=" ">- <date variable="issued" form="text"/>- <text macro="accessed-date"/>- </group>- </if>- <else-if type="bill legislation" match="any">- <group delimiter=", ">- <date variable="issued" delimiter=" ">- <date-part name="month" form="short" strip-periods="true"/>- <date-part name="day"/>- </date>- <date variable="issued">- <date-part name="year"/>- </date>- </group>- </else-if>- <else-if type="report">- <date variable="issued" delimiter=" ">- <date-part name="year"/>- <date-part name="month" form="short" strip-periods="true"/>- </date>- <text macro="accessed-date" prefix=" "/>- </else-if>- <else-if type="patent">- <group suffix=".">- <group delimiter=", ">- <text variable="number"/>- <date variable="issued">- <date-part name="year"/>- </date>- </group>- <text macro="accessed-date" prefix=" "/>- </group>- </else-if>- <else-if type="speech">- <group delimiter="; ">- <group delimiter=" ">- <date variable="issued" delimiter=" ">- <date-part name="year"/>- <date-part name="month" form="short" strip-periods="true"/>- <date-part name="day"/>- </date>- <text macro="accessed-date"/>- </group>- <text variable="event-place"/>- </group>- </else-if>- <else>- <group suffix=".">- <date variable="issued">- <date-part name="year"/>- </date>- <text macro="accessed-date" prefix=" "/>- </group>- </else>- </choose>- </macro>- <macro name="pages">- <choose>- <if type="article-journal article-magazine article-newspaper review review-book" match="any">- <text variable="page" prefix=":"/>- </if>- <else-if type="book" match="any">- <text variable="number-of-pages" prefix=" "/>- <choose>- <if is-numeric="number-of-pages">- <label variable="number-of-pages" form="short" prefix=" " plural="never"/>- </if>- </choose>- </else-if>- <else>- <group prefix=" " delimiter=" ">- <label variable="page" form="short" plural="never"/>- <text variable="page"/>- </group>- </else>- </choose>- </macro>- <macro name="journal-location">- <choose>- <if type="article-journal article-magazine review review-book" match="any">- <text variable="volume"/>- <text variable="issue" prefix="(" suffix=")"/>- </if>- </choose>- </macro>- <macro name="collection-details">- <choose>- <if type="article-journal article-magazine article-newspaper review review-book" match="none">- <choose>- <if variable="collection-title">- <group delimiter=" " prefix="(" suffix=")">- <names variable="collection-editor" suffix=".">- <name sort-separator=" " initialize-with="" name-as-sort-order="all" delimiter=", " delimiter-precedes-last="always"/>- <label form="long" prefix=", "/>- </names>- <group delimiter="; ">- <text variable="collection-title"/>- <group delimiter=" ">- <label variable="volume" form="short"/>- <text variable="volume"/>- </group>- </group>- </group>- </if>- </choose>- </if>- </choose>- </macro>- <macro name="report-details">- <choose>- <if type="report">- <text variable="number" prefix="Report No.: "/>- </if>- </choose>- </macro>- <citation collapse="citation-number">- <sort>- <key variable="citation-number"/>- </sort>- <layout delimiter="," vertical-align="sup">- <text variable="citation-number"/>- </layout>- </citation>- <bibliography et-al-min="7" et-al-use-first="6" second-field-align="flush">- <layout>- <text variable="citation-number" suffix=". "/>- <group delimiter=". " suffix=". ">- <text macro="author"/>- <text macro="title"/>- </group>- <group delimiter=" " suffix=". ">- <group delimiter=": ">- <text macro="chapter-marker"/>- <group delimiter=" ">- <text macro="editor"/>- <text macro="container-title"/>- </group>- </group>- <text macro="publisher"/>- <group>- <text macro="date"/>- <text macro="journal-location"/>- <text macro="pages"/>- </group>- </group>- <text macro="collection-details" suffix=". "/>- <text macro="report-details" suffix=". "/>- <text macro="access"/>- </layout>- </bibliography>-</style>-<<===== CSL =====<<-->>===== INPUT =====>>-[- {- "URL": "https://global.ihs.com/doc_detail.cfm?&rid=TIA&item_s_key=00125234&item_key_date=870024&input_doc_number=232&input_doc_title=&org_code=TIA",- "author": [- {- "literal": "Telecommunications Industry Association"- }- ],- "edition": "Revision F",- "id": "tia232",- "issued": {- "date-parts": [- [- 1997,- 10- ]- ]- },- "language": "en",- "number-of-pages": "54",- "publisher": "Telecommunications Industry Association",- "title": "TIA-232 Interface Between Data Terminal Equipment and Data Circuit- Terminating Equipment Employing Serial Binary Data Interchange",- "title-short": "TIA-232-F",- "type": "book"- },- {- "URL": "https://www.iso.org/obp/ui/#iso:std:iso-iec:11172:-1:ed-1:v1:en",- "author": [- {- "literal": "ISO/IEC Joint Technical Committee 1"- }- ],- "id": "iso/iec11172-1",- "issued": {- "date-parts": [- [- 1993,- 8- ]- ]- },- "language": "en",- "number-of-pages": "6",- "publisher": "International Organization for Standardization",- "title": "ISO/IEC 11172-1 Information technology — Coding of moving pictures and associated audio for digital storage media at up to about 1,5 Mbit/s — Part 1: Systems",- "title-short": "ISO/IEC 11172-1:1993(E)",- "type": "book"- },- {- "URL": "https://www.iso.org/obp/ui/#iso:std:iso-iec:11172:-2:ed-1:v1:en",- "author": [- {- "literal": "ISO/IEC Joint Technical Committee 1"- }- ],- "id": "iso/iec11172-2",- "issued": {- "date-parts": [- [- 1993,- 8- ]- ]- },- "language": "en",- "number-of-pages": "112",- "publisher": "International Organization for Standardization",- "title": "ISO/IEC 11172-2 Information technology — Coding of moving pictures and associated audio for digital storage media at up to about 1,5 Mbit/s — Part 2: Video",- "title-short": "ISO/IEC 11172-2:1993(E)",- "type": "book"- },- {- "URL": "https://www.iso.org/obp/ui/#iso:std:iso-iec:11172:-3:ed-1:v1:en",- "author": [- {- "literal": "ISO/IEC Joint Technical Committee 1"- }- ],- "id": "iso/iec11172-3",- "issued": {- "date-parts": [- [- 1993,- 8- ]- ]- },- "language": "en",- "number-of-pages": "150",- "publisher": "International Organization for Standardization",- "title": "ISO/IEC 11172-3 Information technology — Coding of moving pictures and associated audio for digital storage media at up to about 1,5 Mbit/s — Part 3: Audio",- "title-short": "ISO/IEC 11172-3:1993(E)",- "type": "book"- },- {- "URL": "https://www.iso.org/standard/75928.html",- "author": [- {- "literal": "ISO/IEC Joint Technical Committee 1"- }- ],- "edition": "7",- "id": "iso/iec13818-1",- "issued": {- "date-parts": [- [- 2019,- 7- ]- ]- },- "language": "en",- "number-of-pages": "288",- "publisher": "International Organization for Standardization",- "title": "ISO/IEC 13818-1 Information technology — Generic coding of moving pictures and associated audio information — Part 1: Systems",- "title-short": "ISO/IEC 13818-1:2019(E)",- "type": "book"- },- {- "URL": "https://gwg.nga.mil/misb/docs/standards/ST1602.1.pdf",- "author": [- {- "literal": "Motion Imagery Standards Board"- }- ],- "edition": "1",- "id": "misbst1602",- "issued": {- "date-parts": [- [- 2018,- 11- ]- ]- },- "language": "en",- "number-of-pages": "19",- "publisher": "Motion Imagery Standards Board",- "title": "MISB ST 1602 Composite Imaging Local Set",- "title-short": "MISB ST 1602",- "type": "book"- },- {- "URL": "https://www.gwg.nga.mil/misb/docs/standards/ST0603.5.pdf",- "author": [- {- "literal": "Motion Imagery Standards Board"- }- ],- "edition": "5",- "id": "msibst0603",- "issued": {- "date-parts": [- [- 2017,- 10- ]- ]- },- "language": "en",- "number-of-pages": "8",- "title": "MISB ST 0603 MISP Time System and Timestamps",- "title-short": "MISB ST 0603",- "type": "book"- }-]-<<===== INPUT =====<<--->>===== CITATION-ITEMS =====>>-[[{"id":"misbst1602"}]]-<<===== CITATION-ITEMS =====<<-->>===== VERSION =====>>-1.0-<<===== VERSION =====<<-
− test/extra/issue27.txt
@@ -1,690 +0,0 @@->>===== MODE =====>>-bibliography-<<===== MODE =====<<----->>===== RESULT =====>>-<div class="csl-bib-body">- <div class="csl-entry">Doe, John. n.d. <i>Fruits (Apples, Pears, Oranges) and Veggies</i>.</div>-</div>-<<===== RESULT =====<<--->>===== CSL =====>>--<?xml version="1.0" encoding="utf-8"?>-<style xmlns="http://purl.org/net/xbiblio/csl" class="in-text" version="1.0" demote-non-dropping-particle="display-and-sort" page-range-format="chicago">- <info>- <title>Chicago Manual of Style 17th edition (author-date)</title>- <id>http://www.zotero.org/styles/chicago-author-date</id>- <link href="http://www.zotero.org/styles/chicago-author-date" rel="self"/>- <link href="http://www.chicagomanualofstyle.org/tools_citationguide.html" rel="documentation"/>- <author>- <name>Julian Onions</name>- <email>julian.onions@gmail.com</email>- </author>- <contributor>- <name>Sebastian Karcher</name>- </contributor>- <contributor>- <name>Richard Karnesky</name>- <email>karnesky+zotero@gmail.com</email>- <uri>http://arc.nucapt.northwestern.edu/Richard_Karnesky</uri>- </contributor>- <contributor>- <name>Andrew Dunning</name>- <email>andrew.dunning@utoronto.ca</email>- <uri>https://orcid.org/0000-0003-0464-5036</uri>- </contributor>- <contributor>- <name>Matthew Roth</name>- <email>matthew.g.roth@yale.edu</email>- <uri> https://orcid.org/0000-0001-7902-6331</uri>- </contributor>- <category citation-format="author-date"/>- <category field="generic-base"/>- <summary>The author-date variant of the Chicago style</summary>- <updated>2018-01-24T12:00:00+00:00</updated>- <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="editor" form="verb-short">ed.</term>- <term name="container-author" form="verb">by</term>- <term name="translator" form="verb-short">trans.</term>- <term name="editortranslator" form="verb">edited and translated by</term>- <term name="translator" form="short">trans.</term>- </terms>- </locale>- <macro name="secondary-contributors">- <choose>- <if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="none">- <group delimiter=". ">- <names variable="editor translator" delimiter=". ">- <label form="verb" text-case="capitalize-first" suffix=" "/>- <name and="text" delimiter=", "/>- </names>- <names variable="director" delimiter=". ">- <label form="verb" text-case="capitalize-first" suffix=" "/>- <name and="text" delimiter=", "/>- </names>- </group>- </if>- </choose>- </macro>- <macro name="container-contributors">- <choose>- <if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="any">- <group prefix=", " delimiter=", ">- <names variable="container-author" delimiter=", ">- <label form="verb" suffix=" "/>- <name and="text" delimiter=", "/>- </names>- <names variable="editor translator" delimiter=", ">- <label form="verb" suffix=" "/>- <name and="text" delimiter=", "/>- </names>- </group>- </if>- </choose>- </macro>- <macro name="editor">- <names variable="editor">- <name name-as-sort-order="first" and="text" sort-separator=", " delimiter=", " delimiter-precedes-last="always"/>- <label form="short" prefix=", "/>- </names>- </macro>- <macro name="translator">- <names variable="translator">- <name name-as-sort-order="first" and="text" sort-separator=", " delimiter=", " delimiter-precedes-last="always"/>- <label form="short" prefix=", "/>- </names>- </macro>- <macro name="recipient">- <choose>- <if type="personal_communication">- <choose>- <if variable="genre">- <text variable="genre" text-case="capitalize-first"/>- </if>- <else>- <text term="letter" text-case="capitalize-first"/>- </else>- </choose>- </if>- </choose>- <names variable="recipient" delimiter=", ">- <label form="verb" prefix=" " text-case="lowercase" suffix=" "/>- <name and="text" delimiter=", "/>- </names>- </macro>- <macro name="substitute-title">- <choose>- <if type="article-magazine article-newspaper review review-book" match="any">- <text macro="container-title"/>- </if>- </choose>- </macro>- <macro name="contributors">- <group delimiter=". ">- <names variable="author">- <name and="text" name-as-sort-order="first" sort-separator=", " delimiter=", " delimiter-precedes-last="always"/>- <label form="short" prefix=", "/>- <substitute>- <names variable="editor"/>- <names variable="translator"/>- <names variable="director"/>- <text macro="substitute-title"/>- <text macro="title"/>- </substitute>- </names>- <text macro="recipient"/>- </group>- </macro>- <macro name="contributors-short">- <names variable="author">- <name form="short" and="text" delimiter=", " initialize-with=". "/>- <substitute>- <names variable="editor"/>- <names variable="translator"/>- <names variable="director"/>- <text macro="substitute-title"/>- <text macro="title"/>- </substitute>- </names>- </macro>- <macro name="interviewer">- <names variable="interviewer" delimiter=", ">- <label form="verb" prefix=" " text-case="capitalize-first" suffix=" "/>- <name and="text" delimiter=", "/>- </names>- </macro>- <macro name="archive">- <group delimiter=". ">- <text variable="archive_location" text-case="capitalize-first"/>- <text variable="archive"/>- <text variable="archive-place"/>- </group>- </macro>- <macro name="access">- <group delimiter=". ">- <choose>- <if type="graphic report" match="any">- <text macro="archive"/>- </if>- <else-if type="article-journal bill book chapter legal_case legislation motion_picture paper-conference" match="none">- <text macro="archive"/>- </else-if>- </choose>- <choose>- <if type="webpage post-weblog" match="any">- <date variable="issued" form="text"/>- </if>- </choose>- <choose>- <if variable="issued" match="none">- <group delimiter=" ">- <text term="accessed" text-case="capitalize-first"/>- <date variable="accessed" form="text"/>- </group>- </if>- </choose>- <choose>- <if type="legal_case" match="none">- <choose>- <if variable="DOI">- <text variable="DOI" prefix="https://doi.org/"/>- </if>- <else>- <text variable="URL"/>- </else>- </choose>- </if>- </choose>- </group>- </macro>- <macro name="title">- <choose>- <if variable="title" match="none">- <choose>- <if type="personal_communication" match="none">- <text variable="genre" text-case="capitalize-first"/>- </if>- </choose>- </if>- <else-if type="bill book graphic legislation motion_picture song" match="any">- <text variable="title" text-case="title" font-style="italic"/>- <group prefix=" (" suffix=")" delimiter=" ">- <text term="version"/>- <text variable="version"/>- </group>- </else-if>- <else-if variable="reviewed-author">- <choose>- <if variable="reviewed-title">- <group delimiter=". ">- <text variable="title" text-case="title" quotes="true"/>- <group delimiter=", ">- <text variable="reviewed-title" text-case="title" font-style="italic" prefix="Review of "/>- <names variable="reviewed-author">- <label form="verb-short" text-case="lowercase" suffix=" "/>- <name and="text" delimiter=", "/>- </names>- </group>- </group>- </if>- <else>- <group delimiter=", ">- <text variable="title" text-case="title" font-style="italic" prefix="Review of "/>- <names variable="reviewed-author">- <label form="verb-short" text-case="lowercase" suffix=" "/>- <name and="text" delimiter=", "/>- </names>- </group>- </else>- </choose>- </else-if>- <else-if type="legal_case interview patent" match="any">- <text variable="title"/>- </else-if>- <else>- <text variable="title" text-case="title" quotes="true"/>- </else>- </choose>- </macro>- <macro name="edition">- <choose>- <if type="bill book graphic legal_case legislation motion_picture report song" match="any">- <choose>- <if is-numeric="edition">- <group delimiter=" " prefix=". ">- <number variable="edition" form="ordinal"/>- <text term="edition" form="short" strip-periods="true"/>- </group>- </if>- <else>- <text variable="edition" text-case="capitalize-first" prefix=". "/>- </else>- </choose>- </if>- <else-if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="any">- <choose>- <if is-numeric="edition">- <group delimiter=" " prefix=", ">- <number variable="edition" form="ordinal"/>- <text term="edition" form="short"/>- </group>- </if>- <else>- <text variable="edition" prefix=", "/>- </else>- </choose>- </else-if>- </choose>- </macro>- <macro name="locators">- <choose>- <if type="article-journal">- <choose>- <if variable="volume">- <text variable="volume" prefix=" "/>- <group prefix=" (" suffix=")">- <choose>- <if variable="issue">- <text variable="issue"/>- </if>- <else>- <date variable="issued">- <date-part name="month"/>- </date>- </else>- </choose>- </group>- </if>- <else-if variable="issue">- <group delimiter=" " prefix=", ">- <text term="issue" form="short"/>- <text variable="issue"/>- <date variable="issued" prefix="(" suffix=")">- <date-part name="month"/>- </date>- </group>- </else-if>- <else>- <date variable="issued" prefix=", ">- <date-part name="month"/>- </date>- </else>- </choose>- </if>- <else-if type="legal_case">- <text variable="volume" prefix=", "/>- <text variable="container-title" prefix=" "/>- <text variable="page" prefix=" "/>- </else-if>- <else-if type="bill book graphic legal_case legislation motion_picture report song" match="any">- <group prefix=". " delimiter=". ">- <group>- <text term="volume" form="short" text-case="capitalize-first" suffix=" "/>- <number variable="volume" form="numeric"/>- </group>- <group>- <number variable="number-of-volumes" form="numeric"/>- <text term="volume" form="short" prefix=" " plural="true"/>- </group>- </group>- </else-if>- <else-if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="any">- <choose>- <if variable="page" match="none">- <group prefix=". ">- <text term="volume" form="short" text-case="capitalize-first" suffix=" "/>- <number variable="volume" form="numeric"/>- </group>- </if>- </choose>- </else-if>- </choose>- </macro>- <macro name="locators-chapter">- <choose>- <if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="any">- <choose>- <if variable="page">- <group prefix=", ">- <text variable="volume" suffix=":"/>- <text variable="page"/>- </group>- </if>- </choose>- </if>- </choose>- </macro>- <macro name="locators-article">- <choose>- <if type="article-newspaper">- <group prefix=", " delimiter=", ">- <group delimiter=" ">- <text variable="edition"/>- <text term="edition"/>- </group>- <group>- <text term="section" form="short" suffix=" "/>- <text variable="section"/>- </group>- </group>- </if>- <else-if type="article-journal">- <choose>- <if variable="volume issue" match="any">- <text variable="page" prefix=": "/>- </if>- <else>- <text variable="page" prefix=", "/>- </else>- </choose>- </else-if>- </choose>- </macro>- <macro name="point-locators">- <choose>- <if variable="locator">- <choose>- <if locator="page" match="none">- <choose>- <if type="bill book graphic legal_case legislation motion_picture report song" match="any">- <choose>- <if variable="volume">- <group>- <text term="volume" form="short" suffix=" "/>- <number variable="volume" form="numeric"/>- <label variable="locator" form="short" prefix=", " suffix=" "/>- </group>- </if>- <else>- <label variable="locator" form="short" suffix=" "/>- </else>- </choose>- </if>- <else>- <label variable="locator" form="short" suffix=" "/>- </else>- </choose>- </if>- <else-if type="bill book graphic legal_case legislation motion_picture report song" match="any">- <number variable="volume" form="numeric" suffix=":"/>- </else-if>- </choose>- <text variable="locator"/>- </if>- </choose>- </macro>- <macro name="container-prefix">- <text term="in" text-case="capitalize-first"/>- </macro>- <macro name="container-title">- <choose>- <if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="any">- <text macro="container-prefix" suffix=" "/>- </if>- </choose>- <choose>- <if type="webpage">- <text variable="container-title" text-case="title"/>- </if>- <else-if type="legal_case" match="none">- <group delimiter=" ">- <text variable="container-title" text-case="title" font-style="italic"/>- <choose>- <if type="post-weblog">- <text value="(blog)"/>- </if>- </choose>- </group>- </else-if>- </choose>- </macro>- <macro name="publisher">- <group delimiter=": ">- <text variable="publisher-place"/>- <text variable="publisher"/>- </group>- </macro>- <macro name="date">- <choose>- <if variable="issued">- <group delimiter=" ">- <date variable="original-date" form="text" date-parts="year" prefix="(" suffix=")"/>- <date variable="issued">- <date-part name="year"/>- </date>- </group>- </if>- <else-if variable="status">- <text variable="status" text-case="capitalize-first"/>- </else-if>- <else>- <text term="no date" form="short"/>- </else>- </choose>- </macro>- <macro name="date-in-text">- <choose>- <if variable="issued">- <group delimiter=" ">- <date variable="original-date" form="text" date-parts="year" prefix="[" suffix="]"/>- <date variable="issued">- <date-part name="year"/>- </date>- </group>- </if>- <else-if variable="status">- <text variable="status"/>- </else-if>- <else>- <text term="no date" form="short"/>- </else>- </choose>- </macro>- <macro name="day-month">- <date variable="issued">- <date-part name="month"/>- <date-part name="day" prefix=" "/>- </date>- </macro>- <macro name="collection-title">- <choose>- <if match="none" type="article-journal">- <choose>- <if match="none" is-numeric="collection-number">- <group delimiter=", ">- <text variable="collection-title" text-case="title"/>- <text variable="collection-number"/>- </group>- </if>- <else>- <group delimiter=" ">- <text variable="collection-title" text-case="title"/>- <text variable="collection-number"/>- </group>- </else>- </choose>- </if>- </choose>- </macro>- <macro name="collection-title-journal">- <choose>- <if type="article-journal">- <group delimiter=" ">- <text variable="collection-title"/>- <text variable="collection-number"/>- </group>- </if>- </choose>- </macro>- <macro name="event">- <group>- <text term="presented at" suffix=" "/>- <text variable="event"/>- </group>- </macro>- <macro name="description">- <choose>- <if type="interview">- <group delimiter=". ">- <text macro="interviewer"/>- <text variable="medium" text-case="capitalize-first"/>- </group>- </if>- <else-if type="patent">- <group delimiter=" " prefix=". ">- <text variable="authority"/>- <text variable="number"/>- </group>- </else-if>- <else>- <text variable="medium" text-case="capitalize-first" prefix=". "/>- </else>- </choose>- <choose>- <if variable="title" match="none"/>- <else-if type="thesis personal_communication speech" match="any"/>- <else>- <group delimiter=" " prefix=". ">- <text variable="genre" text-case="capitalize-first"/>- <choose>- <if type="report">- <text variable="number"/>- </if>- </choose>- </group>- </else>- </choose>- </macro>- <macro name="issue">- <choose>- <if type="legal_case">- <text variable="authority" prefix=". "/>- </if>- <else-if type="speech">- <group prefix=". " delimiter=", ">- <group delimiter=" ">- <text variable="genre" text-case="capitalize-first"/>- <text macro="event"/>- </group>- <text variable="event-place"/>- <text macro="day-month"/>- </group>- </else-if>- <else-if type="article-newspaper article-magazine personal_communication" match="any">- <date variable="issued" form="text" prefix=", "/>- </else-if>- <else-if type="patent">- <group delimiter=", " prefix=", ">- <group delimiter=" ">- <!--Needs Localization-->- <text value="filed"/>- <date variable="submitted" form="text"/>- </group>- <group delimiter=" ">- <choose>- <if variable="issued submitted" match="all">- <text term="and"/>- </if>- </choose>- <!--Needs Localization-->- <text value="issued"/>- <date variable="issued" form="text"/>- </group>- </group>- </else-if>- <else-if type="article-journal" match="any"/>- <else>- <group prefix=". " delimiter=", ">- <choose>- <if type="thesis">- <text variable="genre" text-case="capitalize-first"/>- </if>- </choose>- <text macro="publisher"/>- </group>- </else>- </choose>- </macro>- <citation et-al-min="4" et-al-use-first="1" disambiguate-add-year-suffix="true" disambiguate-add-names="true" disambiguate-add-givenname="true" givenname-disambiguation-rule="primary-name" collapse="year" after-collapse-delimiter="; ">- <layout prefix="(" suffix=")" delimiter="; ">- <group delimiter=", ">- <choose>- <if variable="issued accessed" match="any">- <group delimiter=" ">- <text macro="contributors-short"/>- <text macro="date-in-text"/>- </group>- </if>- <!---comma before forthcoming and n.d.-->- <else>- <group delimiter=", ">- <text macro="contributors-short"/>- <text macro="date-in-text"/>- </group>- </else>- </choose>- <text macro="point-locators"/>- </group>- </layout>- </citation>- <bibliography hanging-indent="true" et-al-min="11" et-al-use-first="7" subsequent-author-substitute="———" entry-spacing="0">- <sort>- <key macro="contributors"/>- <key variable="issued"/>- <key variable="title"/>- </sort>- <layout suffix=".">- <group delimiter=". ">- <text macro="contributors"/>- <text macro="date"/>- <text macro="title"/>- </group>- <text macro="description"/>- <text macro="secondary-contributors" prefix=". "/>- <text macro="container-title" prefix=". "/>- <text macro="container-contributors"/>- <text macro="edition"/>- <text macro="locators-chapter"/>- <text macro="collection-title-journal" prefix=", " suffix=", "/>- <text macro="locators"/>- <text macro="collection-title" prefix=". "/>- <text macro="issue"/>- <text macro="locators-article"/>- <text macro="access" prefix=". "/>- </layout>- </bibliography>-</style>-<<===== CSL =====<<----->>===== INPUT =====>>-[- {- "author": [- {- "family": "Doe",- "given": "John"- }- ],- "id": "doeA",- "title": "Fruits (apples, pears, oranges) and veggies",- "type": "book"- }-]-<<===== INPUT =====<<--->>===== VERSION =====>>-1.0-<<===== VERSION =====<<-
− test/extra/issue37.txt
@@ -1,56 +0,0 @@->>===== MODE =====>>-citation-<<===== MODE =====<<-->>===== RESULT =====>>-J. Doe-<<===== RESULT =====<<-->>===== CSL =====>>-<?xml version="1.0" encoding="utf-8"?>-<style xmlns="http://purl.org/net/xbiblio/csl" class="in-text" version="1.0.1" name-form="long" initialize-with=". "> <!-- with a non-breakable space after the dot in initialize-with value -->- <citation>- <layout>- <names variable="author">- <name>- <name-part name="given" form="short"/>- </name>- </names>- </layout>- </citation>- <bibliography/>-</style>-<<===== CSL =====<<-->>==== CITATION-ITEMS ====>>-[- [- {- "id": "doeA"- }- ]-]-<<==== CITATION-ITEMS ====<<--->>===== INPUT =====>>-[- {- "author": [- {- "family": "Doe",- "given": "John"- }- ],- "id": "doeA",- "title": "Fruits",- "type": "book"- }-]-<<===== INPUT =====<<--->>===== VERSION =====>>-1.0-<<===== VERSION =====<<-
− test/extra/issue38.txt
@@ -1,721 +0,0 @@->>===== MODE =====>>-citation-<<===== MODE =====<<----->>===== RESULT =====>>-(Díaz-León 2016; 2015, 333)-(Díaz-León 2016, 333; 2015)-<<===== RESULT =====<<--->>===== CSL =====>>--<?xml version="1.0" encoding="utf-8"?>-<style xmlns="http://purl.org/net/xbiblio/csl" class="in-text" version="1.0" demote-non-dropping-particle="display-and-sort" page-range-format="chicago">- <info>- <title>Chicago Manual of Style 17th edition (author-date)</title>- <id>http://www.zotero.org/styles/chicago-author-date</id>- <link href="http://www.zotero.org/styles/chicago-author-date" rel="self"/>- <link href="http://www.chicagomanualofstyle.org/tools_citationguide.html" rel="documentation"/>- <author>- <name>Julian Onions</name>- <email>julian.onions@gmail.com</email>- </author>- <contributor>- <name>Sebastian Karcher</name>- </contributor>- <contributor>- <name>Richard Karnesky</name>- <email>karnesky+zotero@gmail.com</email>- <uri>http://arc.nucapt.northwestern.edu/Richard_Karnesky</uri>- </contributor>- <contributor>- <name>Andrew Dunning</name>- <email>andrew.dunning@utoronto.ca</email>- <uri>https://orcid.org/0000-0003-0464-5036</uri>- </contributor>- <contributor>- <name>Matthew Roth</name>- <email>matthew.g.roth@yale.edu</email>- <uri> https://orcid.org/0000-0001-7902-6331</uri>- </contributor>- <category citation-format="author-date"/>- <category field="generic-base"/>- <summary>The author-date variant of the Chicago style</summary>- <updated>2018-01-24T12:00:00+00:00</updated>- <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="editor" form="verb-short">ed.</term>- <term name="container-author" form="verb">by</term>- <term name="translator" form="verb-short">trans.</term>- <term name="editortranslator" form="verb">edited and translated by</term>- <term name="translator" form="short">trans.</term>- </terms>- </locale>- <macro name="secondary-contributors">- <choose>- <if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="none">- <group delimiter=". ">- <names variable="editor translator" delimiter=". ">- <label form="verb" text-case="capitalize-first" suffix=" "/>- <name and="text" delimiter=", "/>- </names>- <names variable="director" delimiter=". ">- <label form="verb" text-case="capitalize-first" suffix=" "/>- <name and="text" delimiter=", "/>- </names>- </group>- </if>- </choose>- </macro>- <macro name="container-contributors">- <choose>- <if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="any">- <group prefix=", " delimiter=", ">- <names variable="container-author" delimiter=", ">- <label form="verb" suffix=" "/>- <name and="text" delimiter=", "/>- </names>- <names variable="editor translator" delimiter=", ">- <label form="verb" suffix=" "/>- <name and="text" delimiter=", "/>- </names>- </group>- </if>- </choose>- </macro>- <macro name="editor">- <names variable="editor">- <name name-as-sort-order="first" and="text" sort-separator=", " delimiter=", " delimiter-precedes-last="always"/>- <label form="short" prefix=", "/>- </names>- </macro>- <macro name="translator">- <names variable="translator">- <name name-as-sort-order="first" and="text" sort-separator=", " delimiter=", " delimiter-precedes-last="always"/>- <label form="short" prefix=", "/>- </names>- </macro>- <macro name="recipient">- <choose>- <if type="personal_communication">- <choose>- <if variable="genre">- <text variable="genre" text-case="capitalize-first"/>- </if>- <else>- <text term="letter" text-case="capitalize-first"/>- </else>- </choose>- </if>- </choose>- <names variable="recipient" delimiter=", ">- <label form="verb" prefix=" " text-case="lowercase" suffix=" "/>- <name and="text" delimiter=", "/>- </names>- </macro>- <macro name="substitute-title">- <choose>- <if type="article-magazine article-newspaper review review-book" match="any">- <text macro="container-title"/>- </if>- </choose>- </macro>- <macro name="contributors">- <group delimiter=". ">- <names variable="author">- <name and="text" name-as-sort-order="first" sort-separator=", " delimiter=", " delimiter-precedes-last="always"/>- <label form="short" prefix=", "/>- <substitute>- <names variable="editor"/>- <names variable="translator"/>- <names variable="director"/>- <text macro="substitute-title"/>- <text macro="title"/>- </substitute>- </names>- <text macro="recipient"/>- </group>- </macro>- <macro name="contributors-short">- <names variable="author">- <name form="short" and="text" delimiter=", " initialize-with=". "/>- <substitute>- <names variable="editor"/>- <names variable="translator"/>- <names variable="director"/>- <text macro="substitute-title"/>- <text macro="title"/>- </substitute>- </names>- </macro>- <macro name="interviewer">- <names variable="interviewer" delimiter=", ">- <label form="verb" prefix=" " text-case="capitalize-first" suffix=" "/>- <name and="text" delimiter=", "/>- </names>- </macro>- <macro name="archive">- <group delimiter=". ">- <text variable="archive_location" text-case="capitalize-first"/>- <text variable="archive"/>- <text variable="archive-place"/>- </group>- </macro>- <macro name="access">- <group delimiter=". ">- <choose>- <if type="graphic report" match="any">- <text macro="archive"/>- </if>- <else-if type="article-journal bill book chapter legal_case legislation motion_picture paper-conference" match="none">- <text macro="archive"/>- </else-if>- </choose>- <choose>- <if type="webpage post-weblog" match="any">- <date variable="issued" form="text"/>- </if>- </choose>- <choose>- <if variable="issued" match="none">- <group delimiter=" ">- <text term="accessed" text-case="capitalize-first"/>- <date variable="accessed" form="text"/>- </group>- </if>- </choose>- <choose>- <if type="legal_case" match="none">- <choose>- <if variable="DOI">- <text variable="DOI" prefix="https://doi.org/"/>- </if>- <else>- <text variable="URL"/>- </else>- </choose>- </if>- </choose>- </group>- </macro>- <macro name="title">- <choose>- <if variable="title" match="none">- <choose>- <if type="personal_communication" match="none">- <text variable="genre" text-case="capitalize-first"/>- </if>- </choose>- </if>- <else-if type="bill book graphic legislation motion_picture song" match="any">- <text variable="title" text-case="title" font-style="italic"/>- <group prefix=" (" suffix=")" delimiter=" ">- <text term="version"/>- <text variable="version"/>- </group>- </else-if>- <else-if variable="reviewed-author">- <choose>- <if variable="reviewed-title">- <group delimiter=". ">- <text variable="title" text-case="title" quotes="true"/>- <group delimiter=", ">- <text variable="reviewed-title" text-case="title" font-style="italic" prefix="Review of "/>- <names variable="reviewed-author">- <label form="verb-short" text-case="lowercase" suffix=" "/>- <name and="text" delimiter=", "/>- </names>- </group>- </group>- </if>- <else>- <group delimiter=", ">- <text variable="title" text-case="title" font-style="italic" prefix="Review of "/>- <names variable="reviewed-author">- <label form="verb-short" text-case="lowercase" suffix=" "/>- <name and="text" delimiter=", "/>- </names>- </group>- </else>- </choose>- </else-if>- <else-if type="legal_case interview patent" match="any">- <text variable="title"/>- </else-if>- <else>- <text variable="title" text-case="title" quotes="true"/>- </else>- </choose>- </macro>- <macro name="edition">- <choose>- <if type="bill book graphic legal_case legislation motion_picture report song" match="any">- <choose>- <if is-numeric="edition">- <group delimiter=" " prefix=". ">- <number variable="edition" form="ordinal"/>- <text term="edition" form="short" strip-periods="true"/>- </group>- </if>- <else>- <text variable="edition" text-case="capitalize-first" prefix=". "/>- </else>- </choose>- </if>- <else-if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="any">- <choose>- <if is-numeric="edition">- <group delimiter=" " prefix=", ">- <number variable="edition" form="ordinal"/>- <text term="edition" form="short"/>- </group>- </if>- <else>- <text variable="edition" prefix=", "/>- </else>- </choose>- </else-if>- </choose>- </macro>- <macro name="locators">- <choose>- <if type="article-journal">- <choose>- <if variable="volume">- <text variable="volume" prefix=" "/>- <group prefix=" (" suffix=")">- <choose>- <if variable="issue">- <text variable="issue"/>- </if>- <else>- <date variable="issued">- <date-part name="month"/>- </date>- </else>- </choose>- </group>- </if>- <else-if variable="issue">- <group delimiter=" " prefix=", ">- <text term="issue" form="short"/>- <text variable="issue"/>- <date variable="issued" prefix="(" suffix=")">- <date-part name="month"/>- </date>- </group>- </else-if>- <else>- <date variable="issued" prefix=", ">- <date-part name="month"/>- </date>- </else>- </choose>- </if>- <else-if type="legal_case">- <text variable="volume" prefix=", "/>- <text variable="container-title" prefix=" "/>- <text variable="page" prefix=" "/>- </else-if>- <else-if type="bill book graphic legal_case legislation motion_picture report song" match="any">- <group prefix=". " delimiter=". ">- <group>- <text term="volume" form="short" text-case="capitalize-first" suffix=" "/>- <number variable="volume" form="numeric"/>- </group>- <group>- <number variable="number-of-volumes" form="numeric"/>- <text term="volume" form="short" prefix=" " plural="true"/>- </group>- </group>- </else-if>- <else-if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="any">- <choose>- <if variable="page" match="none">- <group prefix=". ">- <text term="volume" form="short" text-case="capitalize-first" suffix=" "/>- <number variable="volume" form="numeric"/>- </group>- </if>- </choose>- </else-if>- </choose>- </macro>- <macro name="locators-chapter">- <choose>- <if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="any">- <choose>- <if variable="page">- <group prefix=", ">- <text variable="volume" suffix=":"/>- <text variable="page"/>- </group>- </if>- </choose>- </if>- </choose>- </macro>- <macro name="locators-article">- <choose>- <if type="article-newspaper">- <group prefix=", " delimiter=", ">- <group delimiter=" ">- <text variable="edition"/>- <text term="edition"/>- </group>- <group>- <text term="section" form="short" suffix=" "/>- <text variable="section"/>- </group>- </group>- </if>- <else-if type="article-journal">- <choose>- <if variable="volume issue" match="any">- <text variable="page" prefix=": "/>- </if>- <else>- <text variable="page" prefix=", "/>- </else>- </choose>- </else-if>- </choose>- </macro>- <macro name="point-locators">- <choose>- <if variable="locator">- <choose>- <if locator="page" match="none">- <choose>- <if type="bill book graphic legal_case legislation motion_picture report song" match="any">- <choose>- <if variable="volume">- <group>- <text term="volume" form="short" suffix=" "/>- <number variable="volume" form="numeric"/>- <label variable="locator" form="short" prefix=", " suffix=" "/>- </group>- </if>- <else>- <label variable="locator" form="short" suffix=" "/>- </else>- </choose>- </if>- <else>- <label variable="locator" form="short" suffix=" "/>- </else>- </choose>- </if>- <else-if type="bill book graphic legal_case legislation motion_picture report song" match="any">- <number variable="volume" form="numeric" suffix=":"/>- </else-if>- </choose>- <text variable="locator"/>- </if>- </choose>- </macro>- <macro name="container-prefix">- <text term="in" text-case="capitalize-first"/>- </macro>- <macro name="container-title">- <choose>- <if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="any">- <text macro="container-prefix" suffix=" "/>- </if>- </choose>- <choose>- <if type="webpage">- <text variable="container-title" text-case="title"/>- </if>- <else-if type="legal_case" match="none">- <group delimiter=" ">- <text variable="container-title" text-case="title" font-style="italic"/>- <choose>- <if type="post-weblog">- <text value="(blog)"/>- </if>- </choose>- </group>- </else-if>- </choose>- </macro>- <macro name="publisher">- <group delimiter=": ">- <text variable="publisher-place"/>- <text variable="publisher"/>- </group>- </macro>- <macro name="date">- <choose>- <if variable="issued">- <group delimiter=" ">- <date variable="original-date" form="text" date-parts="year" prefix="(" suffix=")"/>- <date variable="issued">- <date-part name="year"/>- </date>- </group>- </if>- <else-if variable="status">- <text variable="status" text-case="capitalize-first"/>- </else-if>- <else>- <text term="no date" form="short"/>- </else>- </choose>- </macro>- <macro name="date-in-text">- <choose>- <if variable="issued">- <group delimiter=" ">- <date variable="original-date" form="text" date-parts="year" prefix="[" suffix="]"/>- <date variable="issued">- <date-part name="year"/>- </date>- </group>- </if>- <else-if variable="status">- <text variable="status"/>- </else-if>- <else>- <text term="no date" form="short"/>- </else>- </choose>- </macro>- <macro name="day-month">- <date variable="issued">- <date-part name="month"/>- <date-part name="day" prefix=" "/>- </date>- </macro>- <macro name="collection-title">- <choose>- <if match="none" type="article-journal">- <choose>- <if match="none" is-numeric="collection-number">- <group delimiter=", ">- <text variable="collection-title" text-case="title"/>- <text variable="collection-number"/>- </group>- </if>- <else>- <group delimiter=" ">- <text variable="collection-title" text-case="title"/>- <text variable="collection-number"/>- </group>- </else>- </choose>- </if>- </choose>- </macro>- <macro name="collection-title-journal">- <choose>- <if type="article-journal">- <group delimiter=" ">- <text variable="collection-title"/>- <text variable="collection-number"/>- </group>- </if>- </choose>- </macro>- <macro name="event">- <group>- <text term="presented at" suffix=" "/>- <text variable="event"/>- </group>- </macro>- <macro name="description">- <choose>- <if type="interview">- <group delimiter=". ">- <text macro="interviewer"/>- <text variable="medium" text-case="capitalize-first"/>- </group>- </if>- <else-if type="patent">- <group delimiter=" " prefix=". ">- <text variable="authority"/>- <text variable="number"/>- </group>- </else-if>- <else>- <text variable="medium" text-case="capitalize-first" prefix=". "/>- </else>- </choose>- <choose>- <if variable="title" match="none"/>- <else-if type="thesis personal_communication speech" match="any"/>- <else>- <group delimiter=" " prefix=". ">- <text variable="genre" text-case="capitalize-first"/>- <choose>- <if type="report">- <text variable="number"/>- </if>- </choose>- </group>- </else>- </choose>- </macro>- <macro name="issue">- <choose>- <if type="legal_case">- <text variable="authority" prefix=". "/>- </if>- <else-if type="speech">- <group prefix=". " delimiter=", ">- <group delimiter=" ">- <text variable="genre" text-case="capitalize-first"/>- <text macro="event"/>- </group>- <text variable="event-place"/>- <text macro="day-month"/>- </group>- </else-if>- <else-if type="article-newspaper article-magazine personal_communication" match="any">- <date variable="issued" form="text" prefix=", "/>- </else-if>- <else-if type="patent">- <group delimiter=", " prefix=", ">- <group delimiter=" ">- <!--Needs Localization-->- <text value="filed"/>- <date variable="submitted" form="text"/>- </group>- <group delimiter=" ">- <choose>- <if variable="issued submitted" match="all">- <text term="and"/>- </if>- </choose>- <!--Needs Localization-->- <text value="issued"/>- <date variable="issued" form="text"/>- </group>- </group>- </else-if>- <else-if type="article-journal" match="any"/>- <else>- <group prefix=". " delimiter=", ">- <choose>- <if type="thesis">- <text variable="genre" text-case="capitalize-first"/>- </if>- </choose>- <text macro="publisher"/>- </group>- </else>- </choose>- </macro>- <citation et-al-min="4" et-al-use-first="1" disambiguate-add-year-suffix="true" disambiguate-add-names="true" disambiguate-add-givenname="true" givenname-disambiguation-rule="primary-name" collapse="year" after-collapse-delimiter="; ">- <layout prefix="(" suffix=")" delimiter="; ">- <group delimiter=", ">- <choose>- <if variable="issued accessed" match="any">- <group delimiter=" ">- <text macro="contributors-short"/>- <text macro="date-in-text"/>- </group>- </if>- <!---comma before forthcoming and n.d.-->- <else>- <group delimiter=", ">- <text macro="contributors-short"/>- <text macro="date-in-text"/>- </group>- </else>- </choose>- <text macro="point-locators"/>- </group>- </layout>- </citation>- <bibliography/>-</style>-<<===== CSL =====<<--->>===== CITATION-ITEMS =====>>-[ [ {"id":"diaz2016"},-{"id":"diaz2015","locator":"333","label":"page"} ],- [ {"id":"diaz2016","locator":"333","label":"page"},- {"id":"diaz2015"} ]-]-<<===== CITATION-ITEMS =====<<---->>===== INPUT =====>>-[- {- "id": "diaz2015",- "type": "article-journal",- "title": "In Defence of Historical Constructivism about Races",- "container-title": "Ergo, an Open Access Journal of Philosophy",- "volume": "2",- "URL": "http://hdl.handle.net/2027/spo.12405314.0002.021",- "DOI": "10.3998/ergo.12405314.0002.021",- "ISSN": "2330-4014",- "author": [- {- "family": "Díaz-León",- "given": "Esa"- }- ],- "issued": {- "date-parts": [- [- 2015- ]- ]- }- },- {- "id": "diaz2016",- "type": "article-journal",- "title": "<i>Woman</i> as a Politically Significant Term: A Solution to the Puzzle",- "container-title": "Hypatia",- "page": "245-258",- "URL": "http://onlinelibrary.wiley.com.uaccess.univie.ac.at/doi/10.1111/hypa.12234/abstract",- "DOI": "10.1111/hypa.12234",- "ISSN": "1527-2001",- "title-short": "<i>Woman</i> as a Politically Significant Term",- "language": "en",- "author": [- {- "family": "Díaz-León",- "given": "Esa"- }- ],- "issued": {- "date-parts": [- [- 2016,- 2,- 1- ]- ]- },- "accessed": {- "date-parts": [- [- 2016,- 2,- 18- ]- ]- },- "container-title-short": "Hypatia"- }-]-<<===== INPUT =====<<--->>===== VERSION =====>>-1.0-<<===== VERSION =====<<-
− test/extra/issue61.txt
@@ -1,66 +0,0 @@-Special treatment for literal "others" when it occurs as-the last name in the list, using localized et al.-->>===== MODE =====>>-bibliography-<<===== MODE =====<<--->>===== RESULT =====>>-<div class="csl-bib-body">- <div class="csl-entry">John Doe et al.</div>-</div>-<<===== RESULT =====<<--->>===== CSL =====>>-<style - xmlns="http://purl.org/net/xbiblio/csl"- class="note"- version="1.0">- <info>- <id />- <title />- <updated>2009-08-10T04:49:00+09:00</updated>- </info>- <citation>- <layout>- <text value="Oops"/>- </layout>- </citation>- <bibliography>- <layout>- <group delimiter=", ">- <names variable="author">- <name et-al-min="5" et-al-use-first="5"/>- </names>- </group>- </layout>- </bibliography>-</style>-<<===== CSL =====<<--->>===== INPUT =====>>-[- {- "author": [- {- "family": "Doe",- "given": "John"- },- {- "literal": "others"- }- ],- "id": "ITEM-1",- "type": "book"- }-]-<<===== INPUT =====<<--->>===== VERSION =====>>-1.0-<<===== VERSION =====<<-
+ test/extra/issue_19.txt view
@@ -0,0 +1,244 @@+>>===== MODE =====>>+bibliography+<<===== MODE =====<<+++++>>===== RESULT =====>>+<div class="csl-bib-body">+ <div class="csl-entry">Díaz-León, E. (2013). What Is Social Construction? Eur J Philos 1–16.</div>+ <div class="csl-entry">Díaz-León, E. (2015). In Defence of Historical Constructivism about Races. Ergo, an Open Access Journal of Philosophy <i>2</i>.</div>+ <div class="csl-entry">Díaz-León, E. (2016). <i>Wo> as a Politically Significant Term: A Solution to the Puzzle. Hypatia 245–258.</div>+</div>+<<===== RESULT =====<<+++>>===== CSL =====>>+<?xml version="1.0" encoding="utf-8"?>+<style xmlns="http://purl.org/net/xbiblio/csl" version="1.0" class="in-text" default-locale="en-US" demote-non-dropping-particle="sort-only" page-range-format="expanded">+ <info>+ <title>Cell</title>+ <id>http://www.zotero.org/styles/cell</id>+ <link href="http://www.zotero.org/styles/cell" rel="self"/>+ <link href="http://www.cell.com/authors" rel="documentation"/>+ <author>+ <name>Adam Mark</name>+ <email>a.mark@uoguelph.ca</email>+ </author>+ <contributor>+ <name>Julian Onions</name>+ <email>julian.onions@gmail.com</email>+ </contributor>+ <contributor>+ <name>Aurimas Vinckevicius</name>+ <email>aurimas.dev@gmail.com</email>+ </contributor>+ <category citation-format="author-date"/>+ <category field="biology"/>+ <issn>0092-8674</issn>+ <eissn>1097-4172</eissn>+ <summary>The Cell journal style. Original by Julian Onions.</summary>+ <updated>2013-01-26T22:06:38+00:00</updated>+ <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>+ <macro name="author-short">+ <names variable="author">+ <name form="short" and="text"/>+ </names>+ </macro>+ <macro name="author-count">+ <names variable="author">+ <name form="count"/>+ </names>+ </macro>+ <macro name="author">+ <names variable="author">+ <name name-as-sort-order="all" initialize-with="." and="text" delimiter-precedes-last="always"/>+ </names>+ </macro>+ <macro name="issued">+ <date variable="issued">+ <date-part name="year"/>+ </date>+ </macro>+ <macro name="publisher">+ <group prefix="(" delimiter=": " suffix=")">+ <text variable="publisher-place"/>+ <text variable="publisher"/>+ </group>+ </macro>+ <macro name="editor">+ <names variable="editor">+ <name initialize-with="." and="text" delimiter-precedes-last="always"/>+ <label form="short" prefix=", "/>+ </names>+ </macro>+ <citation et-al-min="3" et-al-use-first="1" disambiguate-add-year-suffix="true" collapse="year">+ <sort>+ <key macro="author-short" names-min="1" names-use-first="1"/>+ <key macro="author-count" names-min="3" names-use-first="3"/>+ <key macro="author" names-min="3" names-use-first="1"/>+ <key macro="issued"/>+ <key variable="title"/>+ </sort>+ <layout prefix="(" suffix=")" delimiter="; ">+ <group delimiter=", ">+ <text macro="author-short"/>+ <text macro="issued"/>+ </group>+ </layout>+ </citation>+ <bibliography et-al-min="11" et-al-use-first="10">+ <sort>+ <key macro="author-short" names-min="1" names-use-first="1"/>+ <key macro="author-count" names-min="3" names-use-first="3"/>+ <key macro="author" names-min="3" names-use-first="1"/>+ <key macro="issued"/>+ </sort>+ <layout suffix=".">+ <group delimiter=" ">+ <text macro="author"/>+ <text macro="issued" prefix="(" suffix=")."/>+ <choose>+ <if type="article article-magazine article-newspaper article-journal review" match="any">+ <text variable="title" suffix="."/>+ <text variable="container-title" form="short" text-case="title"/>+ <group delimiter=", ">+ <text variable="volume" font-style="italic"/>+ <text variable="page"/>+ </group>+ </if>+ <else-if type="chapter paper-conference" match="any">+ <text variable="title" suffix="."/>+ <text variable="container-title" prefix="In " suffix="," text-case="title"/>+ <text macro="editor"/>+ <text macro="publisher" suffix=","/>+ <label variable="page" form="short"/>+ <text variable="page"/>+ </else-if>+ <else-if type="thesis">+ <text variable="title" suffix="."/>+ <text variable="genre" suffix="."/>+ <text variable="publisher"/>+ </else-if>+ <else>+ <text variable="title"/>+ <text macro="publisher"/>+ </else>+ </choose>+ </group>+ </layout>+ </bibliography>+</style>+<<===== CSL =====<<+++++>>===== INPUT =====>>+[+ {+ "id": "diaz2013",+ "type": "article-journal",+ "title": "What Is Social Construction?",+ "container-title": "European Journal of Philosophy",+ "page": "1-16",+ "URL": "http://onlinelibrary.wiley.com/doi/10.1111/ejop.12033/abstract",+ "DOI": "10.1111/ejop.12033",+ "ISSN": "1468-0378",+ "language": "en",+ "author": [+ {+ "family": "Díaz-León",+ "given": "Esa"+ }+ ],+ "issued": {+ "date-parts": [+ [+ 2013,+ 5,+ 1+ ]+ ]+ },+ "accessed": {+ "date-parts": [+ [+ 2015,+ 11,+ 14+ ]+ ]+ },+ "container-title-short": "Eur J Philos"+ },+ {+ "id": "diaz2015",+ "type": "article-journal",+ "title": "In Defence of Historical Constructivism about Races",+ "container-title": "Ergo, an Open Access Journal of Philosophy",+ "volume": "2",+ "URL": "http://hdl.handle.net/2027/spo.12405314.0002.021",+ "DOI": "10.3998/ergo.12405314.0002.021",+ "ISSN": "2330-4014",+ "author": [+ {+ "family": "Díaz-León",+ "given": "Esa"+ }+ ],+ "issued": {+ "date-parts": [+ [+ 2015+ ]+ ]+ }+ },+ {+ "id": "diaz2016",+ "type": "article-journal",+ "title": "<i>Wo> as a Politically Significant Term: A Solution to the Puzzle",+ "container-title": "Hypatia",+ "page": "245-258",+ "URL": "http://onlinelibrary.wiley.com.uaccess.univie.ac.at/doi/10.1111/hypa.12234/abstract",+ "DOI": "10.1111/hypa.12234",+ "ISSN": "1527-2001",+ "title-short": "<i>Woman</i> as a Politically Significant Term",+ "language": "en",+ "author": [+ {+ "family": "Díaz-León",+ "given": "Esa"+ }+ ],+ "issued": {+ "date-parts": [+ [+ 2016,+ 2,+ 1+ ]+ ]+ },+ "accessed": {+ "date-parts": [+ [+ 2016,+ 2,+ 18+ ]+ ]+ },+ "container-title-short": "Hypatia"+ }+]+<<===== INPUT =====<<+++>>===== VERSION =====>>+1.0+<<===== VERSION =====<<+
+ test/extra/issue_22.txt view
@@ -0,0 +1,540 @@+>>===== MODE =====>>+citation+<<===== MODE =====<<++>>===== RESULT =====>>+<sup>1</sup>+<<===== RESULT =====<<++>>===== CSL =====>>+<?xml version="1.0" encoding="utf-8"?>+<style xmlns="http://purl.org/net/xbiblio/csl" class="in-text" version="1.0" demote-non-dropping-particle="sort-only" page-range-format="minimal">+ <info>+ <title>Vancouver (superscript)</title>+ <id>http://www.zotero.org/styles/vancouver-superscript</id>+ <link href="http://www.zotero.org/styles/vancouver-superscript" rel="self"/>+ <link href="http://www.nlm.nih.gov/bsd/uniform_requirements.html" rel="documentation"/>+ <author>+ <name>Michael Berkowitz</name>+ <email>mberkowi@gmu.edu</email>+ </author>+ <contributor>+ <name>Sean Takats</name>+ <email>stakats@gmu.edu</email>+ </contributor>+ <contributor>+ <name>Sebastian Karcher</name>+ </contributor>+ <category citation-format="numeric"/>+ <category field="medicine"/>+ <summary>Vancouver style as outlined by International Committee of Medical Journal Editors Uniform Requirements for Manuscripts Submitted to Biomedical Journals: Sample References</summary>+ <updated>2012-09-27T22:06:38+00:00</updated>+ <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">+ <date form="text" delimiter=" ">+ <date-part name="year"/>+ <date-part name="month" form="short" strip-periods="true"/>+ <date-part name="day"/>+ </date>+ <terms>+ <term name="collection-editor" form="long">+ <single>editor</single>+ <multiple>editors</multiple>+ </term>+ <term name="presented at">presented at</term>+ <term name="available at">available from</term>+ <term name="section" form="short">sect.</term>+ </terms>+ </locale>+ <locale xml:lang="fr">+ <date form="text" delimiter=" ">+ <date-part name="day"/>+ <date-part name="month" form="short" strip-periods="true"/>+ <date-part name="year"/>+ </date>+ </locale>+ <macro name="author">+ <names variable="author">+ <name sort-separator=" " initialize-with="" name-as-sort-order="all" delimiter=", " delimiter-precedes-last="always"/>+ <label form="long" prefix=", "/>+ <substitute>+ <names variable="editor"/>+ </substitute>+ </names>+ </macro>+ <macro name="editor">+ <names variable="editor" suffix=".">+ <name sort-separator=" " initialize-with="" name-as-sort-order="all" delimiter=", " delimiter-precedes-last="always"/>+ <label form="long" prefix=", "/>+ </names>+ </macro>+ <macro name="chapter-marker">+ <choose>+ <if type="chapter paper-conference entry-dictionary entry-encyclopedia" match="any">+ <text term="in" text-case="capitalize-first"/>+ </if>+ </choose>+ </macro>+ <macro name="publisher">+ <choose>+ <!--discard publisher info for articles-->+ <if type="article-journal article-magazine article-newspaper" match="none">+ <group delimiter=": " suffix=";">+ <choose>+ <if type="thesis">+ <text variable="publisher-place" prefix="[" suffix="]"/>+ </if>+ <else-if type="speech"/>+ <else>+ <text variable="publisher-place"/>+ </else>+ </choose>+ <text variable="publisher"/>+ </group>+ </if>+ </choose>+ </macro>+ <macro name="access">+ <choose>+ <if variable="URL">+ <group delimiter=": ">+ <text term="available at" text-case="capitalize-first"/>+ <text variable="URL"/>+ </group>+ </if>+ </choose>+ </macro>+ <macro name="accessed-date">+ <choose>+ <if variable="URL">+ <group prefix="[" suffix="]" delimiter=" ">+ <text term="cited" text-case="lowercase"/>+ <date variable="accessed" form="text"/>+ </group>+ </if>+ </choose>+ </macro>+ <macro name="container-title">+ <choose>+ <if type="article-journal article-magazine chapter paper-conference article-newspaper review review-book entry-dictionary entry-encyclopedia" match="any">+ <group suffix="." delimiter=" ">+ <choose>+ <if type="article-journal review review-book" match="any">+ <text variable="container-title" form="short" strip-periods="true"/>+ </if>+ <else>+ <text variable="container-title" strip-periods="true"/>+ </else>+ </choose>+ <choose>+ <if variable="URL">+ <text term="internet" prefix="[" suffix="]" text-case="capitalize-first"/>+ </if>+ </choose>+ </group>+ <text macro="edition" prefix=" "/>+ </if>+ <!--add event-name and event-place once they become available-->+ <else-if type="bill legislation" match="any">+ <group delimiter=", ">+ <group delimiter=". ">+ <text variable="container-title"/>+ <group delimiter=" ">+ <text term="section" form="short" text-case="capitalize-first"/>+ <text variable="section"/>+ </group>+ </group>+ <text variable="number"/>+ </group>+ </else-if>+ <else-if type="speech">+ <group delimiter=": " suffix=";">+ <group delimiter=" ">+ <text variable="genre" text-case="capitalize-first"/>+ <text term="presented at"/>+ </group>+ <text variable="event"/>+ </group>+ </else-if>+ <else>+ <group delimiter=", " suffix=".">+ <choose>+ <if variable="collection-title" match="none">+ <group delimiter=" ">+ <label variable="volume" form="short" text-case="capitalize-first"/>+ <text variable="volume"/>+ </group>+ </if>+ </choose>+ <text variable="container-title"/>+ </group>+ </else>+ </choose>+ </macro>+ <macro name="title">+ <text variable="title"/>+ <choose>+ <if type="article-journal article-magazine chapter paper-conference article-newspaper review review-book entry-dictionary entry-encyclopedia" match="none">+ <choose>+ <if variable="URL">+ <text term="internet" prefix=" [" suffix="]" text-case="capitalize-first"/>+ </if>+ </choose>+ <text macro="edition" prefix=". "/>+ </if>+ </choose>+ <choose>+ <if type="thesis">+ <text variable="genre" prefix=" [" suffix="]"/>+ </if>+ </choose>+ </macro>+ <macro name="edition">+ <choose>+ <if is-numeric="edition">+ <group delimiter=" ">+ <number variable="edition" form="ordinal"/>+ <text term="edition" form="short"/>+ </group>+ </if>+ <else>+ <text variable="edition" suffix="."/>+ </else>+ </choose>+ </macro>+ <macro name="date">+ <choose>+ <if type="article-journal article-magazine article-newspaper review review-book" match="any">+ <group suffix=";" delimiter=" ">+ <date variable="issued" form="text"/>+ <text macro="accessed-date"/>+ </group>+ </if>+ <else-if type="bill legislation" match="any">+ <group delimiter=", ">+ <date variable="issued" delimiter=" ">+ <date-part name="month" form="short" strip-periods="true"/>+ <date-part name="day"/>+ </date>+ <date variable="issued">+ <date-part name="year"/>+ </date>+ </group>+ </else-if>+ <else-if type="report">+ <date variable="issued" delimiter=" ">+ <date-part name="year"/>+ <date-part name="month" form="short" strip-periods="true"/>+ </date>+ <text macro="accessed-date" prefix=" "/>+ </else-if>+ <else-if type="patent">+ <group suffix=".">+ <group delimiter=", ">+ <text variable="number"/>+ <date variable="issued">+ <date-part name="year"/>+ </date>+ </group>+ <text macro="accessed-date" prefix=" "/>+ </group>+ </else-if>+ <else-if type="speech">+ <group delimiter="; ">+ <group delimiter=" ">+ <date variable="issued" delimiter=" ">+ <date-part name="year"/>+ <date-part name="month" form="short" strip-periods="true"/>+ <date-part name="day"/>+ </date>+ <text macro="accessed-date"/>+ </group>+ <text variable="event-place"/>+ </group>+ </else-if>+ <else>+ <group suffix=".">+ <date variable="issued">+ <date-part name="year"/>+ </date>+ <text macro="accessed-date" prefix=" "/>+ </group>+ </else>+ </choose>+ </macro>+ <macro name="pages">+ <choose>+ <if type="article-journal article-magazine article-newspaper review review-book" match="any">+ <text variable="page" prefix=":"/>+ </if>+ <else-if type="book" match="any">+ <text variable="number-of-pages" prefix=" "/>+ <choose>+ <if is-numeric="number-of-pages">+ <label variable="number-of-pages" form="short" prefix=" " plural="never"/>+ </if>+ </choose>+ </else-if>+ <else>+ <group prefix=" " delimiter=" ">+ <label variable="page" form="short" plural="never"/>+ <text variable="page"/>+ </group>+ </else>+ </choose>+ </macro>+ <macro name="journal-location">+ <choose>+ <if type="article-journal article-magazine review review-book" match="any">+ <text variable="volume"/>+ <text variable="issue" prefix="(" suffix=")"/>+ </if>+ </choose>+ </macro>+ <macro name="collection-details">+ <choose>+ <if type="article-journal article-magazine article-newspaper review review-book" match="none">+ <choose>+ <if variable="collection-title">+ <group delimiter=" " prefix="(" suffix=")">+ <names variable="collection-editor" suffix=".">+ <name sort-separator=" " initialize-with="" name-as-sort-order="all" delimiter=", " delimiter-precedes-last="always"/>+ <label form="long" prefix=", "/>+ </names>+ <group delimiter="; ">+ <text variable="collection-title"/>+ <group delimiter=" ">+ <label variable="volume" form="short"/>+ <text variable="volume"/>+ </group>+ </group>+ </group>+ </if>+ </choose>+ </if>+ </choose>+ </macro>+ <macro name="report-details">+ <choose>+ <if type="report">+ <text variable="number" prefix="Report No.: "/>+ </if>+ </choose>+ </macro>+ <citation collapse="citation-number">+ <sort>+ <key variable="citation-number"/>+ </sort>+ <layout delimiter="," vertical-align="sup">+ <text variable="citation-number"/>+ </layout>+ </citation>+ <bibliography et-al-min="7" et-al-use-first="6" second-field-align="flush">+ <layout>+ <text variable="citation-number" suffix=". "/>+ <group delimiter=". " suffix=". ">+ <text macro="author"/>+ <text macro="title"/>+ </group>+ <group delimiter=" " suffix=". ">+ <group delimiter=": ">+ <text macro="chapter-marker"/>+ <group delimiter=" ">+ <text macro="editor"/>+ <text macro="container-title"/>+ </group>+ </group>+ <text macro="publisher"/>+ <group>+ <text macro="date"/>+ <text macro="journal-location"/>+ <text macro="pages"/>+ </group>+ </group>+ <text macro="collection-details" suffix=". "/>+ <text macro="report-details" suffix=". "/>+ <text macro="access"/>+ </layout>+ </bibliography>+</style>+<<===== CSL =====<<++>>===== INPUT =====>>+[+ {+ "URL": "https://global.ihs.com/doc_detail.cfm?&rid=TIA&item_s_key=00125234&item_key_date=870024&input_doc_number=232&input_doc_title=&org_code=TIA",+ "author": [+ {+ "literal": "Telecommunications Industry Association"+ }+ ],+ "edition": "Revision F",+ "id": "tia232",+ "issued": {+ "date-parts": [+ [+ 1997,+ 10+ ]+ ]+ },+ "language": "en",+ "number-of-pages": "54",+ "publisher": "Telecommunications Industry Association",+ "title": "TIA-232 Interface Between Data Terminal Equipment and Data Circuit- Terminating Equipment Employing Serial Binary Data Interchange",+ "title-short": "TIA-232-F",+ "type": "book"+ },+ {+ "URL": "https://www.iso.org/obp/ui/#iso:std:iso-iec:11172:-1:ed-1:v1:en",+ "author": [+ {+ "literal": "ISO/IEC Joint Technical Committee 1"+ }+ ],+ "id": "iso/iec11172-1",+ "issued": {+ "date-parts": [+ [+ 1993,+ 8+ ]+ ]+ },+ "language": "en",+ "number-of-pages": "6",+ "publisher": "International Organization for Standardization",+ "title": "ISO/IEC 11172-1 Information technology — Coding of moving pictures and associated audio for digital storage media at up to about 1,5 Mbit/s — Part 1: Systems",+ "title-short": "ISO/IEC 11172-1:1993(E)",+ "type": "book"+ },+ {+ "URL": "https://www.iso.org/obp/ui/#iso:std:iso-iec:11172:-2:ed-1:v1:en",+ "author": [+ {+ "literal": "ISO/IEC Joint Technical Committee 1"+ }+ ],+ "id": "iso/iec11172-2",+ "issued": {+ "date-parts": [+ [+ 1993,+ 8+ ]+ ]+ },+ "language": "en",+ "number-of-pages": "112",+ "publisher": "International Organization for Standardization",+ "title": "ISO/IEC 11172-2 Information technology — Coding of moving pictures and associated audio for digital storage media at up to about 1,5 Mbit/s — Part 2: Video",+ "title-short": "ISO/IEC 11172-2:1993(E)",+ "type": "book"+ },+ {+ "URL": "https://www.iso.org/obp/ui/#iso:std:iso-iec:11172:-3:ed-1:v1:en",+ "author": [+ {+ "literal": "ISO/IEC Joint Technical Committee 1"+ }+ ],+ "id": "iso/iec11172-3",+ "issued": {+ "date-parts": [+ [+ 1993,+ 8+ ]+ ]+ },+ "language": "en",+ "number-of-pages": "150",+ "publisher": "International Organization for Standardization",+ "title": "ISO/IEC 11172-3 Information technology — Coding of moving pictures and associated audio for digital storage media at up to about 1,5 Mbit/s — Part 3: Audio",+ "title-short": "ISO/IEC 11172-3:1993(E)",+ "type": "book"+ },+ {+ "URL": "https://www.iso.org/standard/75928.html",+ "author": [+ {+ "literal": "ISO/IEC Joint Technical Committee 1"+ }+ ],+ "edition": "7",+ "id": "iso/iec13818-1",+ "issued": {+ "date-parts": [+ [+ 2019,+ 7+ ]+ ]+ },+ "language": "en",+ "number-of-pages": "288",+ "publisher": "International Organization for Standardization",+ "title": "ISO/IEC 13818-1 Information technology — Generic coding of moving pictures and associated audio information — Part 1: Systems",+ "title-short": "ISO/IEC 13818-1:2019(E)",+ "type": "book"+ },+ {+ "URL": "https://gwg.nga.mil/misb/docs/standards/ST1602.1.pdf",+ "author": [+ {+ "literal": "Motion Imagery Standards Board"+ }+ ],+ "edition": "1",+ "id": "misbst1602",+ "issued": {+ "date-parts": [+ [+ 2018,+ 11+ ]+ ]+ },+ "language": "en",+ "number-of-pages": "19",+ "publisher": "Motion Imagery Standards Board",+ "title": "MISB ST 1602 Composite Imaging Local Set",+ "title-short": "MISB ST 1602",+ "type": "book"+ },+ {+ "URL": "https://www.gwg.nga.mil/misb/docs/standards/ST0603.5.pdf",+ "author": [+ {+ "literal": "Motion Imagery Standards Board"+ }+ ],+ "edition": "5",+ "id": "msibst0603",+ "issued": {+ "date-parts": [+ [+ 2017,+ 10+ ]+ ]+ },+ "language": "en",+ "number-of-pages": "8",+ "title": "MISB ST 0603 MISP Time System and Timestamps",+ "title-short": "MISB ST 0603",+ "type": "book"+ }+]+<<===== INPUT =====<<+++>>===== CITATION-ITEMS =====>>+[[{"id":"misbst1602"}]]+<<===== CITATION-ITEMS =====<<++>>===== VERSION =====>>+1.0+<<===== VERSION =====<<+
+ test/extra/issue_27.txt view
@@ -0,0 +1,690 @@+>>===== MODE =====>>+bibliography+<<===== MODE =====<<+++++>>===== RESULT =====>>+<div class="csl-bib-body">+ <div class="csl-entry">Doe, John. n.d. <i>Fruits (Apples, Pears, Oranges) and Veggies</i>.</div>+</div>+<<===== RESULT =====<<+++>>===== CSL =====>>++<?xml version="1.0" encoding="utf-8"?>+<style xmlns="http://purl.org/net/xbiblio/csl" class="in-text" version="1.0" demote-non-dropping-particle="display-and-sort" page-range-format="chicago">+ <info>+ <title>Chicago Manual of Style 17th edition (author-date)</title>+ <id>http://www.zotero.org/styles/chicago-author-date</id>+ <link href="http://www.zotero.org/styles/chicago-author-date" rel="self"/>+ <link href="http://www.chicagomanualofstyle.org/tools_citationguide.html" rel="documentation"/>+ <author>+ <name>Julian Onions</name>+ <email>julian.onions@gmail.com</email>+ </author>+ <contributor>+ <name>Sebastian Karcher</name>+ </contributor>+ <contributor>+ <name>Richard Karnesky</name>+ <email>karnesky+zotero@gmail.com</email>+ <uri>http://arc.nucapt.northwestern.edu/Richard_Karnesky</uri>+ </contributor>+ <contributor>+ <name>Andrew Dunning</name>+ <email>andrew.dunning@utoronto.ca</email>+ <uri>https://orcid.org/0000-0003-0464-5036</uri>+ </contributor>+ <contributor>+ <name>Matthew Roth</name>+ <email>matthew.g.roth@yale.edu</email>+ <uri> https://orcid.org/0000-0001-7902-6331</uri>+ </contributor>+ <category citation-format="author-date"/>+ <category field="generic-base"/>+ <summary>The author-date variant of the Chicago style</summary>+ <updated>2018-01-24T12:00:00+00:00</updated>+ <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="editor" form="verb-short">ed.</term>+ <term name="container-author" form="verb">by</term>+ <term name="translator" form="verb-short">trans.</term>+ <term name="editortranslator" form="verb">edited and translated by</term>+ <term name="translator" form="short">trans.</term>+ </terms>+ </locale>+ <macro name="secondary-contributors">+ <choose>+ <if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="none">+ <group delimiter=". ">+ <names variable="editor translator" delimiter=". ">+ <label form="verb" text-case="capitalize-first" suffix=" "/>+ <name and="text" delimiter=", "/>+ </names>+ <names variable="director" delimiter=". ">+ <label form="verb" text-case="capitalize-first" suffix=" "/>+ <name and="text" delimiter=", "/>+ </names>+ </group>+ </if>+ </choose>+ </macro>+ <macro name="container-contributors">+ <choose>+ <if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="any">+ <group prefix=", " delimiter=", ">+ <names variable="container-author" delimiter=", ">+ <label form="verb" suffix=" "/>+ <name and="text" delimiter=", "/>+ </names>+ <names variable="editor translator" delimiter=", ">+ <label form="verb" suffix=" "/>+ <name and="text" delimiter=", "/>+ </names>+ </group>+ </if>+ </choose>+ </macro>+ <macro name="editor">+ <names variable="editor">+ <name name-as-sort-order="first" and="text" sort-separator=", " delimiter=", " delimiter-precedes-last="always"/>+ <label form="short" prefix=", "/>+ </names>+ </macro>+ <macro name="translator">+ <names variable="translator">+ <name name-as-sort-order="first" and="text" sort-separator=", " delimiter=", " delimiter-precedes-last="always"/>+ <label form="short" prefix=", "/>+ </names>+ </macro>+ <macro name="recipient">+ <choose>+ <if type="personal_communication">+ <choose>+ <if variable="genre">+ <text variable="genre" text-case="capitalize-first"/>+ </if>+ <else>+ <text term="letter" text-case="capitalize-first"/>+ </else>+ </choose>+ </if>+ </choose>+ <names variable="recipient" delimiter=", ">+ <label form="verb" prefix=" " text-case="lowercase" suffix=" "/>+ <name and="text" delimiter=", "/>+ </names>+ </macro>+ <macro name="substitute-title">+ <choose>+ <if type="article-magazine article-newspaper review review-book" match="any">+ <text macro="container-title"/>+ </if>+ </choose>+ </macro>+ <macro name="contributors">+ <group delimiter=". ">+ <names variable="author">+ <name and="text" name-as-sort-order="first" sort-separator=", " delimiter=", " delimiter-precedes-last="always"/>+ <label form="short" prefix=", "/>+ <substitute>+ <names variable="editor"/>+ <names variable="translator"/>+ <names variable="director"/>+ <text macro="substitute-title"/>+ <text macro="title"/>+ </substitute>+ </names>+ <text macro="recipient"/>+ </group>+ </macro>+ <macro name="contributors-short">+ <names variable="author">+ <name form="short" and="text" delimiter=", " initialize-with=". "/>+ <substitute>+ <names variable="editor"/>+ <names variable="translator"/>+ <names variable="director"/>+ <text macro="substitute-title"/>+ <text macro="title"/>+ </substitute>+ </names>+ </macro>+ <macro name="interviewer">+ <names variable="interviewer" delimiter=", ">+ <label form="verb" prefix=" " text-case="capitalize-first" suffix=" "/>+ <name and="text" delimiter=", "/>+ </names>+ </macro>+ <macro name="archive">+ <group delimiter=". ">+ <text variable="archive_location" text-case="capitalize-first"/>+ <text variable="archive"/>+ <text variable="archive-place"/>+ </group>+ </macro>+ <macro name="access">+ <group delimiter=". ">+ <choose>+ <if type="graphic report" match="any">+ <text macro="archive"/>+ </if>+ <else-if type="article-journal bill book chapter legal_case legislation motion_picture paper-conference" match="none">+ <text macro="archive"/>+ </else-if>+ </choose>+ <choose>+ <if type="webpage post-weblog" match="any">+ <date variable="issued" form="text"/>+ </if>+ </choose>+ <choose>+ <if variable="issued" match="none">+ <group delimiter=" ">+ <text term="accessed" text-case="capitalize-first"/>+ <date variable="accessed" form="text"/>+ </group>+ </if>+ </choose>+ <choose>+ <if type="legal_case" match="none">+ <choose>+ <if variable="DOI">+ <text variable="DOI" prefix="https://doi.org/"/>+ </if>+ <else>+ <text variable="URL"/>+ </else>+ </choose>+ </if>+ </choose>+ </group>+ </macro>+ <macro name="title">+ <choose>+ <if variable="title" match="none">+ <choose>+ <if type="personal_communication" match="none">+ <text variable="genre" text-case="capitalize-first"/>+ </if>+ </choose>+ </if>+ <else-if type="bill book graphic legislation motion_picture song" match="any">+ <text variable="title" text-case="title" font-style="italic"/>+ <group prefix=" (" suffix=")" delimiter=" ">+ <text term="version"/>+ <text variable="version"/>+ </group>+ </else-if>+ <else-if variable="reviewed-author">+ <choose>+ <if variable="reviewed-title">+ <group delimiter=". ">+ <text variable="title" text-case="title" quotes="true"/>+ <group delimiter=", ">+ <text variable="reviewed-title" text-case="title" font-style="italic" prefix="Review of "/>+ <names variable="reviewed-author">+ <label form="verb-short" text-case="lowercase" suffix=" "/>+ <name and="text" delimiter=", "/>+ </names>+ </group>+ </group>+ </if>+ <else>+ <group delimiter=", ">+ <text variable="title" text-case="title" font-style="italic" prefix="Review of "/>+ <names variable="reviewed-author">+ <label form="verb-short" text-case="lowercase" suffix=" "/>+ <name and="text" delimiter=", "/>+ </names>+ </group>+ </else>+ </choose>+ </else-if>+ <else-if type="legal_case interview patent" match="any">+ <text variable="title"/>+ </else-if>+ <else>+ <text variable="title" text-case="title" quotes="true"/>+ </else>+ </choose>+ </macro>+ <macro name="edition">+ <choose>+ <if type="bill book graphic legal_case legislation motion_picture report song" match="any">+ <choose>+ <if is-numeric="edition">+ <group delimiter=" " prefix=". ">+ <number variable="edition" form="ordinal"/>+ <text term="edition" form="short" strip-periods="true"/>+ </group>+ </if>+ <else>+ <text variable="edition" text-case="capitalize-first" prefix=". "/>+ </else>+ </choose>+ </if>+ <else-if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="any">+ <choose>+ <if is-numeric="edition">+ <group delimiter=" " prefix=", ">+ <number variable="edition" form="ordinal"/>+ <text term="edition" form="short"/>+ </group>+ </if>+ <else>+ <text variable="edition" prefix=", "/>+ </else>+ </choose>+ </else-if>+ </choose>+ </macro>+ <macro name="locators">+ <choose>+ <if type="article-journal">+ <choose>+ <if variable="volume">+ <text variable="volume" prefix=" "/>+ <group prefix=" (" suffix=")">+ <choose>+ <if variable="issue">+ <text variable="issue"/>+ </if>+ <else>+ <date variable="issued">+ <date-part name="month"/>+ </date>+ </else>+ </choose>+ </group>+ </if>+ <else-if variable="issue">+ <group delimiter=" " prefix=", ">+ <text term="issue" form="short"/>+ <text variable="issue"/>+ <date variable="issued" prefix="(" suffix=")">+ <date-part name="month"/>+ </date>+ </group>+ </else-if>+ <else>+ <date variable="issued" prefix=", ">+ <date-part name="month"/>+ </date>+ </else>+ </choose>+ </if>+ <else-if type="legal_case">+ <text variable="volume" prefix=", "/>+ <text variable="container-title" prefix=" "/>+ <text variable="page" prefix=" "/>+ </else-if>+ <else-if type="bill book graphic legal_case legislation motion_picture report song" match="any">+ <group prefix=". " delimiter=". ">+ <group>+ <text term="volume" form="short" text-case="capitalize-first" suffix=" "/>+ <number variable="volume" form="numeric"/>+ </group>+ <group>+ <number variable="number-of-volumes" form="numeric"/>+ <text term="volume" form="short" prefix=" " plural="true"/>+ </group>+ </group>+ </else-if>+ <else-if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="any">+ <choose>+ <if variable="page" match="none">+ <group prefix=". ">+ <text term="volume" form="short" text-case="capitalize-first" suffix=" "/>+ <number variable="volume" form="numeric"/>+ </group>+ </if>+ </choose>+ </else-if>+ </choose>+ </macro>+ <macro name="locators-chapter">+ <choose>+ <if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="any">+ <choose>+ <if variable="page">+ <group prefix=", ">+ <text variable="volume" suffix=":"/>+ <text variable="page"/>+ </group>+ </if>+ </choose>+ </if>+ </choose>+ </macro>+ <macro name="locators-article">+ <choose>+ <if type="article-newspaper">+ <group prefix=", " delimiter=", ">+ <group delimiter=" ">+ <text variable="edition"/>+ <text term="edition"/>+ </group>+ <group>+ <text term="section" form="short" suffix=" "/>+ <text variable="section"/>+ </group>+ </group>+ </if>+ <else-if type="article-journal">+ <choose>+ <if variable="volume issue" match="any">+ <text variable="page" prefix=": "/>+ </if>+ <else>+ <text variable="page" prefix=", "/>+ </else>+ </choose>+ </else-if>+ </choose>+ </macro>+ <macro name="point-locators">+ <choose>+ <if variable="locator">+ <choose>+ <if locator="page" match="none">+ <choose>+ <if type="bill book graphic legal_case legislation motion_picture report song" match="any">+ <choose>+ <if variable="volume">+ <group>+ <text term="volume" form="short" suffix=" "/>+ <number variable="volume" form="numeric"/>+ <label variable="locator" form="short" prefix=", " suffix=" "/>+ </group>+ </if>+ <else>+ <label variable="locator" form="short" suffix=" "/>+ </else>+ </choose>+ </if>+ <else>+ <label variable="locator" form="short" suffix=" "/>+ </else>+ </choose>+ </if>+ <else-if type="bill book graphic legal_case legislation motion_picture report song" match="any">+ <number variable="volume" form="numeric" suffix=":"/>+ </else-if>+ </choose>+ <text variable="locator"/>+ </if>+ </choose>+ </macro>+ <macro name="container-prefix">+ <text term="in" text-case="capitalize-first"/>+ </macro>+ <macro name="container-title">+ <choose>+ <if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="any">+ <text macro="container-prefix" suffix=" "/>+ </if>+ </choose>+ <choose>+ <if type="webpage">+ <text variable="container-title" text-case="title"/>+ </if>+ <else-if type="legal_case" match="none">+ <group delimiter=" ">+ <text variable="container-title" text-case="title" font-style="italic"/>+ <choose>+ <if type="post-weblog">+ <text value="(blog)"/>+ </if>+ </choose>+ </group>+ </else-if>+ </choose>+ </macro>+ <macro name="publisher">+ <group delimiter=": ">+ <text variable="publisher-place"/>+ <text variable="publisher"/>+ </group>+ </macro>+ <macro name="date">+ <choose>+ <if variable="issued">+ <group delimiter=" ">+ <date variable="original-date" form="text" date-parts="year" prefix="(" suffix=")"/>+ <date variable="issued">+ <date-part name="year"/>+ </date>+ </group>+ </if>+ <else-if variable="status">+ <text variable="status" text-case="capitalize-first"/>+ </else-if>+ <else>+ <text term="no date" form="short"/>+ </else>+ </choose>+ </macro>+ <macro name="date-in-text">+ <choose>+ <if variable="issued">+ <group delimiter=" ">+ <date variable="original-date" form="text" date-parts="year" prefix="[" suffix="]"/>+ <date variable="issued">+ <date-part name="year"/>+ </date>+ </group>+ </if>+ <else-if variable="status">+ <text variable="status"/>+ </else-if>+ <else>+ <text term="no date" form="short"/>+ </else>+ </choose>+ </macro>+ <macro name="day-month">+ <date variable="issued">+ <date-part name="month"/>+ <date-part name="day" prefix=" "/>+ </date>+ </macro>+ <macro name="collection-title">+ <choose>+ <if match="none" type="article-journal">+ <choose>+ <if match="none" is-numeric="collection-number">+ <group delimiter=", ">+ <text variable="collection-title" text-case="title"/>+ <text variable="collection-number"/>+ </group>+ </if>+ <else>+ <group delimiter=" ">+ <text variable="collection-title" text-case="title"/>+ <text variable="collection-number"/>+ </group>+ </else>+ </choose>+ </if>+ </choose>+ </macro>+ <macro name="collection-title-journal">+ <choose>+ <if type="article-journal">+ <group delimiter=" ">+ <text variable="collection-title"/>+ <text variable="collection-number"/>+ </group>+ </if>+ </choose>+ </macro>+ <macro name="event">+ <group>+ <text term="presented at" suffix=" "/>+ <text variable="event"/>+ </group>+ </macro>+ <macro name="description">+ <choose>+ <if type="interview">+ <group delimiter=". ">+ <text macro="interviewer"/>+ <text variable="medium" text-case="capitalize-first"/>+ </group>+ </if>+ <else-if type="patent">+ <group delimiter=" " prefix=". ">+ <text variable="authority"/>+ <text variable="number"/>+ </group>+ </else-if>+ <else>+ <text variable="medium" text-case="capitalize-first" prefix=". "/>+ </else>+ </choose>+ <choose>+ <if variable="title" match="none"/>+ <else-if type="thesis personal_communication speech" match="any"/>+ <else>+ <group delimiter=" " prefix=". ">+ <text variable="genre" text-case="capitalize-first"/>+ <choose>+ <if type="report">+ <text variable="number"/>+ </if>+ </choose>+ </group>+ </else>+ </choose>+ </macro>+ <macro name="issue">+ <choose>+ <if type="legal_case">+ <text variable="authority" prefix=". "/>+ </if>+ <else-if type="speech">+ <group prefix=". " delimiter=", ">+ <group delimiter=" ">+ <text variable="genre" text-case="capitalize-first"/>+ <text macro="event"/>+ </group>+ <text variable="event-place"/>+ <text macro="day-month"/>+ </group>+ </else-if>+ <else-if type="article-newspaper article-magazine personal_communication" match="any">+ <date variable="issued" form="text" prefix=", "/>+ </else-if>+ <else-if type="patent">+ <group delimiter=", " prefix=", ">+ <group delimiter=" ">+ <!--Needs Localization-->+ <text value="filed"/>+ <date variable="submitted" form="text"/>+ </group>+ <group delimiter=" ">+ <choose>+ <if variable="issued submitted" match="all">+ <text term="and"/>+ </if>+ </choose>+ <!--Needs Localization-->+ <text value="issued"/>+ <date variable="issued" form="text"/>+ </group>+ </group>+ </else-if>+ <else-if type="article-journal" match="any"/>+ <else>+ <group prefix=". " delimiter=", ">+ <choose>+ <if type="thesis">+ <text variable="genre" text-case="capitalize-first"/>+ </if>+ </choose>+ <text macro="publisher"/>+ </group>+ </else>+ </choose>+ </macro>+ <citation et-al-min="4" et-al-use-first="1" disambiguate-add-year-suffix="true" disambiguate-add-names="true" disambiguate-add-givenname="true" givenname-disambiguation-rule="primary-name" collapse="year" after-collapse-delimiter="; ">+ <layout prefix="(" suffix=")" delimiter="; ">+ <group delimiter=", ">+ <choose>+ <if variable="issued accessed" match="any">+ <group delimiter=" ">+ <text macro="contributors-short"/>+ <text macro="date-in-text"/>+ </group>+ </if>+ <!---comma before forthcoming and n.d.-->+ <else>+ <group delimiter=", ">+ <text macro="contributors-short"/>+ <text macro="date-in-text"/>+ </group>+ </else>+ </choose>+ <text macro="point-locators"/>+ </group>+ </layout>+ </citation>+ <bibliography hanging-indent="true" et-al-min="11" et-al-use-first="7" subsequent-author-substitute="———" entry-spacing="0">+ <sort>+ <key macro="contributors"/>+ <key variable="issued"/>+ <key variable="title"/>+ </sort>+ <layout suffix=".">+ <group delimiter=". ">+ <text macro="contributors"/>+ <text macro="date"/>+ <text macro="title"/>+ </group>+ <text macro="description"/>+ <text macro="secondary-contributors" prefix=". "/>+ <text macro="container-title" prefix=". "/>+ <text macro="container-contributors"/>+ <text macro="edition"/>+ <text macro="locators-chapter"/>+ <text macro="collection-title-journal" prefix=", " suffix=", "/>+ <text macro="locators"/>+ <text macro="collection-title" prefix=". "/>+ <text macro="issue"/>+ <text macro="locators-article"/>+ <text macro="access" prefix=". "/>+ </layout>+ </bibliography>+</style>+<<===== CSL =====<<+++++>>===== INPUT =====>>+[+ {+ "author": [+ {+ "family": "Doe",+ "given": "John"+ }+ ],+ "id": "doeA",+ "title": "Fruits (apples, pears, oranges) and veggies",+ "type": "book"+ }+]+<<===== INPUT =====<<+++>>===== VERSION =====>>+1.0+<<===== VERSION =====<<+
+ test/extra/issue_37.txt view
@@ -0,0 +1,56 @@+>>===== MODE =====>>+citation+<<===== MODE =====<<++>>===== RESULT =====>>+J. Doe+<<===== RESULT =====<<++>>===== CSL =====>>+<?xml version="1.0" encoding="utf-8"?>+<style xmlns="http://purl.org/net/xbiblio/csl" class="in-text" version="1.0.1" name-form="long" initialize-with=". "> <!-- with a non-breakable space after the dot in initialize-with value -->+ <citation>+ <layout>+ <names variable="author">+ <name>+ <name-part name="given" form="short"/>+ </name>+ </names>+ </layout>+ </citation>+ <bibliography/>+</style>+<<===== CSL =====<<++>>==== CITATION-ITEMS ====>>+[+ [+ {+ "id": "doeA"+ }+ ]+]+<<==== CITATION-ITEMS ====<<+++>>===== INPUT =====>>+[+ {+ "author": [+ {+ "family": "Doe",+ "given": "John"+ }+ ],+ "id": "doeA",+ "title": "Fruits",+ "type": "book"+ }+]+<<===== INPUT =====<<+++>>===== VERSION =====>>+1.0+<<===== VERSION =====<<+
+ test/extra/issue_38.txt view
@@ -0,0 +1,721 @@+>>===== MODE =====>>+citation+<<===== MODE =====<<+++++>>===== RESULT =====>>+(Díaz-León 2016; 2015, 333)+(Díaz-León 2016, 333; 2015)+<<===== RESULT =====<<+++>>===== CSL =====>>++<?xml version="1.0" encoding="utf-8"?>+<style xmlns="http://purl.org/net/xbiblio/csl" class="in-text" version="1.0" demote-non-dropping-particle="display-and-sort" page-range-format="chicago">+ <info>+ <title>Chicago Manual of Style 17th edition (author-date)</title>+ <id>http://www.zotero.org/styles/chicago-author-date</id>+ <link href="http://www.zotero.org/styles/chicago-author-date" rel="self"/>+ <link href="http://www.chicagomanualofstyle.org/tools_citationguide.html" rel="documentation"/>+ <author>+ <name>Julian Onions</name>+ <email>julian.onions@gmail.com</email>+ </author>+ <contributor>+ <name>Sebastian Karcher</name>+ </contributor>+ <contributor>+ <name>Richard Karnesky</name>+ <email>karnesky+zotero@gmail.com</email>+ <uri>http://arc.nucapt.northwestern.edu/Richard_Karnesky</uri>+ </contributor>+ <contributor>+ <name>Andrew Dunning</name>+ <email>andrew.dunning@utoronto.ca</email>+ <uri>https://orcid.org/0000-0003-0464-5036</uri>+ </contributor>+ <contributor>+ <name>Matthew Roth</name>+ <email>matthew.g.roth@yale.edu</email>+ <uri> https://orcid.org/0000-0001-7902-6331</uri>+ </contributor>+ <category citation-format="author-date"/>+ <category field="generic-base"/>+ <summary>The author-date variant of the Chicago style</summary>+ <updated>2018-01-24T12:00:00+00:00</updated>+ <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="editor" form="verb-short">ed.</term>+ <term name="container-author" form="verb">by</term>+ <term name="translator" form="verb-short">trans.</term>+ <term name="editortranslator" form="verb">edited and translated by</term>+ <term name="translator" form="short">trans.</term>+ </terms>+ </locale>+ <macro name="secondary-contributors">+ <choose>+ <if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="none">+ <group delimiter=". ">+ <names variable="editor translator" delimiter=". ">+ <label form="verb" text-case="capitalize-first" suffix=" "/>+ <name and="text" delimiter=", "/>+ </names>+ <names variable="director" delimiter=". ">+ <label form="verb" text-case="capitalize-first" suffix=" "/>+ <name and="text" delimiter=", "/>+ </names>+ </group>+ </if>+ </choose>+ </macro>+ <macro name="container-contributors">+ <choose>+ <if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="any">+ <group prefix=", " delimiter=", ">+ <names variable="container-author" delimiter=", ">+ <label form="verb" suffix=" "/>+ <name and="text" delimiter=", "/>+ </names>+ <names variable="editor translator" delimiter=", ">+ <label form="verb" suffix=" "/>+ <name and="text" delimiter=", "/>+ </names>+ </group>+ </if>+ </choose>+ </macro>+ <macro name="editor">+ <names variable="editor">+ <name name-as-sort-order="first" and="text" sort-separator=", " delimiter=", " delimiter-precedes-last="always"/>+ <label form="short" prefix=", "/>+ </names>+ </macro>+ <macro name="translator">+ <names variable="translator">+ <name name-as-sort-order="first" and="text" sort-separator=", " delimiter=", " delimiter-precedes-last="always"/>+ <label form="short" prefix=", "/>+ </names>+ </macro>+ <macro name="recipient">+ <choose>+ <if type="personal_communication">+ <choose>+ <if variable="genre">+ <text variable="genre" text-case="capitalize-first"/>+ </if>+ <else>+ <text term="letter" text-case="capitalize-first"/>+ </else>+ </choose>+ </if>+ </choose>+ <names variable="recipient" delimiter=", ">+ <label form="verb" prefix=" " text-case="lowercase" suffix=" "/>+ <name and="text" delimiter=", "/>+ </names>+ </macro>+ <macro name="substitute-title">+ <choose>+ <if type="article-magazine article-newspaper review review-book" match="any">+ <text macro="container-title"/>+ </if>+ </choose>+ </macro>+ <macro name="contributors">+ <group delimiter=". ">+ <names variable="author">+ <name and="text" name-as-sort-order="first" sort-separator=", " delimiter=", " delimiter-precedes-last="always"/>+ <label form="short" prefix=", "/>+ <substitute>+ <names variable="editor"/>+ <names variable="translator"/>+ <names variable="director"/>+ <text macro="substitute-title"/>+ <text macro="title"/>+ </substitute>+ </names>+ <text macro="recipient"/>+ </group>+ </macro>+ <macro name="contributors-short">+ <names variable="author">+ <name form="short" and="text" delimiter=", " initialize-with=". "/>+ <substitute>+ <names variable="editor"/>+ <names variable="translator"/>+ <names variable="director"/>+ <text macro="substitute-title"/>+ <text macro="title"/>+ </substitute>+ </names>+ </macro>+ <macro name="interviewer">+ <names variable="interviewer" delimiter=", ">+ <label form="verb" prefix=" " text-case="capitalize-first" suffix=" "/>+ <name and="text" delimiter=", "/>+ </names>+ </macro>+ <macro name="archive">+ <group delimiter=". ">+ <text variable="archive_location" text-case="capitalize-first"/>+ <text variable="archive"/>+ <text variable="archive-place"/>+ </group>+ </macro>+ <macro name="access">+ <group delimiter=". ">+ <choose>+ <if type="graphic report" match="any">+ <text macro="archive"/>+ </if>+ <else-if type="article-journal bill book chapter legal_case legislation motion_picture paper-conference" match="none">+ <text macro="archive"/>+ </else-if>+ </choose>+ <choose>+ <if type="webpage post-weblog" match="any">+ <date variable="issued" form="text"/>+ </if>+ </choose>+ <choose>+ <if variable="issued" match="none">+ <group delimiter=" ">+ <text term="accessed" text-case="capitalize-first"/>+ <date variable="accessed" form="text"/>+ </group>+ </if>+ </choose>+ <choose>+ <if type="legal_case" match="none">+ <choose>+ <if variable="DOI">+ <text variable="DOI" prefix="https://doi.org/"/>+ </if>+ <else>+ <text variable="URL"/>+ </else>+ </choose>+ </if>+ </choose>+ </group>+ </macro>+ <macro name="title">+ <choose>+ <if variable="title" match="none">+ <choose>+ <if type="personal_communication" match="none">+ <text variable="genre" text-case="capitalize-first"/>+ </if>+ </choose>+ </if>+ <else-if type="bill book graphic legislation motion_picture song" match="any">+ <text variable="title" text-case="title" font-style="italic"/>+ <group prefix=" (" suffix=")" delimiter=" ">+ <text term="version"/>+ <text variable="version"/>+ </group>+ </else-if>+ <else-if variable="reviewed-author">+ <choose>+ <if variable="reviewed-title">+ <group delimiter=". ">+ <text variable="title" text-case="title" quotes="true"/>+ <group delimiter=", ">+ <text variable="reviewed-title" text-case="title" font-style="italic" prefix="Review of "/>+ <names variable="reviewed-author">+ <label form="verb-short" text-case="lowercase" suffix=" "/>+ <name and="text" delimiter=", "/>+ </names>+ </group>+ </group>+ </if>+ <else>+ <group delimiter=", ">+ <text variable="title" text-case="title" font-style="italic" prefix="Review of "/>+ <names variable="reviewed-author">+ <label form="verb-short" text-case="lowercase" suffix=" "/>+ <name and="text" delimiter=", "/>+ </names>+ </group>+ </else>+ </choose>+ </else-if>+ <else-if type="legal_case interview patent" match="any">+ <text variable="title"/>+ </else-if>+ <else>+ <text variable="title" text-case="title" quotes="true"/>+ </else>+ </choose>+ </macro>+ <macro name="edition">+ <choose>+ <if type="bill book graphic legal_case legislation motion_picture report song" match="any">+ <choose>+ <if is-numeric="edition">+ <group delimiter=" " prefix=". ">+ <number variable="edition" form="ordinal"/>+ <text term="edition" form="short" strip-periods="true"/>+ </group>+ </if>+ <else>+ <text variable="edition" text-case="capitalize-first" prefix=". "/>+ </else>+ </choose>+ </if>+ <else-if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="any">+ <choose>+ <if is-numeric="edition">+ <group delimiter=" " prefix=", ">+ <number variable="edition" form="ordinal"/>+ <text term="edition" form="short"/>+ </group>+ </if>+ <else>+ <text variable="edition" prefix=", "/>+ </else>+ </choose>+ </else-if>+ </choose>+ </macro>+ <macro name="locators">+ <choose>+ <if type="article-journal">+ <choose>+ <if variable="volume">+ <text variable="volume" prefix=" "/>+ <group prefix=" (" suffix=")">+ <choose>+ <if variable="issue">+ <text variable="issue"/>+ </if>+ <else>+ <date variable="issued">+ <date-part name="month"/>+ </date>+ </else>+ </choose>+ </group>+ </if>+ <else-if variable="issue">+ <group delimiter=" " prefix=", ">+ <text term="issue" form="short"/>+ <text variable="issue"/>+ <date variable="issued" prefix="(" suffix=")">+ <date-part name="month"/>+ </date>+ </group>+ </else-if>+ <else>+ <date variable="issued" prefix=", ">+ <date-part name="month"/>+ </date>+ </else>+ </choose>+ </if>+ <else-if type="legal_case">+ <text variable="volume" prefix=", "/>+ <text variable="container-title" prefix=" "/>+ <text variable="page" prefix=" "/>+ </else-if>+ <else-if type="bill book graphic legal_case legislation motion_picture report song" match="any">+ <group prefix=". " delimiter=". ">+ <group>+ <text term="volume" form="short" text-case="capitalize-first" suffix=" "/>+ <number variable="volume" form="numeric"/>+ </group>+ <group>+ <number variable="number-of-volumes" form="numeric"/>+ <text term="volume" form="short" prefix=" " plural="true"/>+ </group>+ </group>+ </else-if>+ <else-if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="any">+ <choose>+ <if variable="page" match="none">+ <group prefix=". ">+ <text term="volume" form="short" text-case="capitalize-first" suffix=" "/>+ <number variable="volume" form="numeric"/>+ </group>+ </if>+ </choose>+ </else-if>+ </choose>+ </macro>+ <macro name="locators-chapter">+ <choose>+ <if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="any">+ <choose>+ <if variable="page">+ <group prefix=", ">+ <text variable="volume" suffix=":"/>+ <text variable="page"/>+ </group>+ </if>+ </choose>+ </if>+ </choose>+ </macro>+ <macro name="locators-article">+ <choose>+ <if type="article-newspaper">+ <group prefix=", " delimiter=", ">+ <group delimiter=" ">+ <text variable="edition"/>+ <text term="edition"/>+ </group>+ <group>+ <text term="section" form="short" suffix=" "/>+ <text variable="section"/>+ </group>+ </group>+ </if>+ <else-if type="article-journal">+ <choose>+ <if variable="volume issue" match="any">+ <text variable="page" prefix=": "/>+ </if>+ <else>+ <text variable="page" prefix=", "/>+ </else>+ </choose>+ </else-if>+ </choose>+ </macro>+ <macro name="point-locators">+ <choose>+ <if variable="locator">+ <choose>+ <if locator="page" match="none">+ <choose>+ <if type="bill book graphic legal_case legislation motion_picture report song" match="any">+ <choose>+ <if variable="volume">+ <group>+ <text term="volume" form="short" suffix=" "/>+ <number variable="volume" form="numeric"/>+ <label variable="locator" form="short" prefix=", " suffix=" "/>+ </group>+ </if>+ <else>+ <label variable="locator" form="short" suffix=" "/>+ </else>+ </choose>+ </if>+ <else>+ <label variable="locator" form="short" suffix=" "/>+ </else>+ </choose>+ </if>+ <else-if type="bill book graphic legal_case legislation motion_picture report song" match="any">+ <number variable="volume" form="numeric" suffix=":"/>+ </else-if>+ </choose>+ <text variable="locator"/>+ </if>+ </choose>+ </macro>+ <macro name="container-prefix">+ <text term="in" text-case="capitalize-first"/>+ </macro>+ <macro name="container-title">+ <choose>+ <if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="any">+ <text macro="container-prefix" suffix=" "/>+ </if>+ </choose>+ <choose>+ <if type="webpage">+ <text variable="container-title" text-case="title"/>+ </if>+ <else-if type="legal_case" match="none">+ <group delimiter=" ">+ <text variable="container-title" text-case="title" font-style="italic"/>+ <choose>+ <if type="post-weblog">+ <text value="(blog)"/>+ </if>+ </choose>+ </group>+ </else-if>+ </choose>+ </macro>+ <macro name="publisher">+ <group delimiter=": ">+ <text variable="publisher-place"/>+ <text variable="publisher"/>+ </group>+ </macro>+ <macro name="date">+ <choose>+ <if variable="issued">+ <group delimiter=" ">+ <date variable="original-date" form="text" date-parts="year" prefix="(" suffix=")"/>+ <date variable="issued">+ <date-part name="year"/>+ </date>+ </group>+ </if>+ <else-if variable="status">+ <text variable="status" text-case="capitalize-first"/>+ </else-if>+ <else>+ <text term="no date" form="short"/>+ </else>+ </choose>+ </macro>+ <macro name="date-in-text">+ <choose>+ <if variable="issued">+ <group delimiter=" ">+ <date variable="original-date" form="text" date-parts="year" prefix="[" suffix="]"/>+ <date variable="issued">+ <date-part name="year"/>+ </date>+ </group>+ </if>+ <else-if variable="status">+ <text variable="status"/>+ </else-if>+ <else>+ <text term="no date" form="short"/>+ </else>+ </choose>+ </macro>+ <macro name="day-month">+ <date variable="issued">+ <date-part name="month"/>+ <date-part name="day" prefix=" "/>+ </date>+ </macro>+ <macro name="collection-title">+ <choose>+ <if match="none" type="article-journal">+ <choose>+ <if match="none" is-numeric="collection-number">+ <group delimiter=", ">+ <text variable="collection-title" text-case="title"/>+ <text variable="collection-number"/>+ </group>+ </if>+ <else>+ <group delimiter=" ">+ <text variable="collection-title" text-case="title"/>+ <text variable="collection-number"/>+ </group>+ </else>+ </choose>+ </if>+ </choose>+ </macro>+ <macro name="collection-title-journal">+ <choose>+ <if type="article-journal">+ <group delimiter=" ">+ <text variable="collection-title"/>+ <text variable="collection-number"/>+ </group>+ </if>+ </choose>+ </macro>+ <macro name="event">+ <group>+ <text term="presented at" suffix=" "/>+ <text variable="event"/>+ </group>+ </macro>+ <macro name="description">+ <choose>+ <if type="interview">+ <group delimiter=". ">+ <text macro="interviewer"/>+ <text variable="medium" text-case="capitalize-first"/>+ </group>+ </if>+ <else-if type="patent">+ <group delimiter=" " prefix=". ">+ <text variable="authority"/>+ <text variable="number"/>+ </group>+ </else-if>+ <else>+ <text variable="medium" text-case="capitalize-first" prefix=". "/>+ </else>+ </choose>+ <choose>+ <if variable="title" match="none"/>+ <else-if type="thesis personal_communication speech" match="any"/>+ <else>+ <group delimiter=" " prefix=". ">+ <text variable="genre" text-case="capitalize-first"/>+ <choose>+ <if type="report">+ <text variable="number"/>+ </if>+ </choose>+ </group>+ </else>+ </choose>+ </macro>+ <macro name="issue">+ <choose>+ <if type="legal_case">+ <text variable="authority" prefix=". "/>+ </if>+ <else-if type="speech">+ <group prefix=". " delimiter=", ">+ <group delimiter=" ">+ <text variable="genre" text-case="capitalize-first"/>+ <text macro="event"/>+ </group>+ <text variable="event-place"/>+ <text macro="day-month"/>+ </group>+ </else-if>+ <else-if type="article-newspaper article-magazine personal_communication" match="any">+ <date variable="issued" form="text" prefix=", "/>+ </else-if>+ <else-if type="patent">+ <group delimiter=", " prefix=", ">+ <group delimiter=" ">+ <!--Needs Localization-->+ <text value="filed"/>+ <date variable="submitted" form="text"/>+ </group>+ <group delimiter=" ">+ <choose>+ <if variable="issued submitted" match="all">+ <text term="and"/>+ </if>+ </choose>+ <!--Needs Localization-->+ <text value="issued"/>+ <date variable="issued" form="text"/>+ </group>+ </group>+ </else-if>+ <else-if type="article-journal" match="any"/>+ <else>+ <group prefix=". " delimiter=", ">+ <choose>+ <if type="thesis">+ <text variable="genre" text-case="capitalize-first"/>+ </if>+ </choose>+ <text macro="publisher"/>+ </group>+ </else>+ </choose>+ </macro>+ <citation et-al-min="4" et-al-use-first="1" disambiguate-add-year-suffix="true" disambiguate-add-names="true" disambiguate-add-givenname="true" givenname-disambiguation-rule="primary-name" collapse="year" after-collapse-delimiter="; ">+ <layout prefix="(" suffix=")" delimiter="; ">+ <group delimiter=", ">+ <choose>+ <if variable="issued accessed" match="any">+ <group delimiter=" ">+ <text macro="contributors-short"/>+ <text macro="date-in-text"/>+ </group>+ </if>+ <!---comma before forthcoming and n.d.-->+ <else>+ <group delimiter=", ">+ <text macro="contributors-short"/>+ <text macro="date-in-text"/>+ </group>+ </else>+ </choose>+ <text macro="point-locators"/>+ </group>+ </layout>+ </citation>+ <bibliography/>+</style>+<<===== CSL =====<<+++>>===== CITATION-ITEMS =====>>+[ [ {"id":"diaz2016"},+{"id":"diaz2015","locator":"333","label":"page"} ],+ [ {"id":"diaz2016","locator":"333","label":"page"},+ {"id":"diaz2015"} ]+]+<<===== CITATION-ITEMS =====<<++++>>===== INPUT =====>>+[+ {+ "id": "diaz2015",+ "type": "article-journal",+ "title": "In Defence of Historical Constructivism about Races",+ "container-title": "Ergo, an Open Access Journal of Philosophy",+ "volume": "2",+ "URL": "http://hdl.handle.net/2027/spo.12405314.0002.021",+ "DOI": "10.3998/ergo.12405314.0002.021",+ "ISSN": "2330-4014",+ "author": [+ {+ "family": "Díaz-León",+ "given": "Esa"+ }+ ],+ "issued": {+ "date-parts": [+ [+ 2015+ ]+ ]+ }+ },+ {+ "id": "diaz2016",+ "type": "article-journal",+ "title": "<i>Woman</i> as a Politically Significant Term: A Solution to the Puzzle",+ "container-title": "Hypatia",+ "page": "245-258",+ "URL": "http://onlinelibrary.wiley.com.uaccess.univie.ac.at/doi/10.1111/hypa.12234/abstract",+ "DOI": "10.1111/hypa.12234",+ "ISSN": "1527-2001",+ "title-short": "<i>Woman</i> as a Politically Significant Term",+ "language": "en",+ "author": [+ {+ "family": "Díaz-León",+ "given": "Esa"+ }+ ],+ "issued": {+ "date-parts": [+ [+ 2016,+ 2,+ 1+ ]+ ]+ },+ "accessed": {+ "date-parts": [+ [+ 2016,+ 2,+ 18+ ]+ ]+ },+ "container-title-short": "Hypatia"+ }+]+<<===== INPUT =====<<+++>>===== VERSION =====>>+1.0+<<===== VERSION =====<<+
+ test/extra/issue_61.txt view
@@ -0,0 +1,66 @@+Special treatment for literal "others" when it occurs as+the last name in the list, using localized et al.++>>===== MODE =====>>+bibliography+<<===== MODE =====<<+++>>===== RESULT =====>>+<div class="csl-bib-body">+ <div class="csl-entry">John Doe et al.</div>+</div>+<<===== RESULT =====<<+++>>===== CSL =====>>+<style + xmlns="http://purl.org/net/xbiblio/csl"+ class="note"+ version="1.0">+ <info>+ <id />+ <title />+ <updated>2009-08-10T04:49:00+09:00</updated>+ </info>+ <citation>+ <layout>+ <text value="Oops"/>+ </layout>+ </citation>+ <bibliography>+ <layout>+ <group delimiter=", ">+ <names variable="author">+ <name et-al-min="5" et-al-use-first="5"/>+ </names>+ </group>+ </layout>+ </bibliography>+</style>+<<===== CSL =====<<+++>>===== INPUT =====>>+[+ {+ "author": [+ {+ "family": "Doe",+ "given": "John"+ },+ {+ "literal": "others"+ }+ ],+ "id": "ITEM-1",+ "type": "book"+ }+]+<<===== INPUT =====<<+++>>===== VERSION =====>>+1.0+<<===== VERSION =====<<+
+ test/extra/issue_74.txt view
@@ -0,0 +1,111 @@+Special treatment for literal "others" when it occurs as+the last name in the list, using localized et al.++>>===== MODE =====>>+bibliography+<<===== MODE =====<<+++>>===== RESULT =====>>+<div class="csl-bib-body">+ <div class="csl-entry">S Gosling, H Müller Schmied, R Betts, J Chang, P Ciais, et al.</div>+</div>+<<===== RESULT =====<<+++>>===== CSL =====>>+<style + xmlns="http://purl.org/net/xbiblio/csl"+ class="note"+ version="1.0">+ <info>+ <id />+ <title />+ <updated>2009-08-10T04:49:00+09:00</updated>+ </info>+ <citation>+ <layout>+ <text value="Oops"/>+ </layout>+ </citation>+ <bibliography>+ <layout>+ <group delimiter=", ">+ <names variable="author">+ <name et-al-min="5" et-al-use-first="5"/>+ </names>+ </group>+ </layout>+ </bibliography>+</style>+<<===== CSL =====<<+++>>===== INPUT =====>>+[+ {+ "author": [+ {+ "family": "Gosling",+ "given": "S"+ },+ {+ "family": "Müller Schmied",+ "given": "H"+ },+ {+ "family": "Betts",+ "given": "R"+ },+ {+ "family": "Chang",+ "given": "J"+ },+ {+ "family": "Ciais",+ "given": "P"+ },+ {+ "family": "Dankers",+ "given": "R"+ },+ {+ "family": "Döll",+ "given": "P"+ },+ {+ "family": "Eisner",+ "given": "S"+ },+ {+ "family": "Flörke",+ "given": "M"+ },+ {+ "family": "Gerten",+ "given": "D"+ },+ {+ "literal": "others"+ }+ ],+ "container-title": "GFZ Data Services",+ "id": "gosling2017isimip2a",+ "issued": {+ "date-parts": [+ [+ 2017+ ]+ ]+ },+ "title": "ISIMIP2a simulation data from water (global) sector",+ "type": "article-journal"+ }+]+<<===== INPUT =====<<+++>>===== VERSION =====>>+1.0+<<===== VERSION =====<<+
+ test/extra/issue_pandoc6813.txt view
@@ -0,0 +1,1472 @@+>>===== MODE =====>>+citation+<<===== MODE =====<<++>>===== RESULT =====>>+Doe, <i>Title A</i>.+Doe, <i>Title B</i>.+Doe, <i>Title B</i>.+<<===== RESULT =====<<++>>===== CSL =====>>+<?xml version="1.0" encoding="utf-8"?>+<style xmlns="http://purl.org/net/xbiblio/csl" class="note" version="1.0" demote-non-dropping-particle="display-and-sort" page-range-format="chicago">+ <info>+ <title>Chicago Manual of Style 17th edition (note)</title>+ <id>http://www.zotero.org/styles/chicago-note-bibliography</id>+ <link href="http://www.zotero.org/styles/chicago-note-bibliography" rel="self"/>+ <link href="http://www.chicagomanualofstyle.org/tools_citationguide.html" rel="documentation"/>+ <author>+ <name>Julian Onions</name>+ <email>julian.onions@gmail.com</email>+ </author>+ <contributor>+ <name>Simon Kornblith</name>+ <email>simon@simonster.com</email>+ </contributor>+ <contributor>+ <name>Elena Razlogova</name>+ <email>elena.razlogova@gmail.com</email>+ </contributor>+ <contributor>+ <name>Frank Bennett</name>+ <email>biercenator@gmail.com</email>+ </contributor>+ <contributor>+ <name>Andrew Dunning</name>+ <email>andrew.dunning@utoronto.ca</email>+ </contributor>+ <contributor>+ <name>Sebastian Karcher</name>+ </contributor>+ <contributor>+ <name>Brenton M. Wiernik</name>+ </contributor>+ <category citation-format="note"/>+ <category field="generic-base"/>+ <summary>Chicago format with short notes and bibliography</summary>+ <updated>2017-10-12T12:00:00+00:00</updated>+ <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="editor" form="verb-short">ed.</term>+ <term name="translator" form="verb-short">trans.</term>+ <term name="translator" form="short">trans.</term>+ <term name="editortranslator" form="verb-short">ed. and trans.</term>+ <term name="editortranslator" form="verb">Edited and translated by</term>+ <term name="translator" form="short">trans.</term>+ </terms>+ </locale>+ <macro name="editor-translator">+ <group delimiter=", ">+ <group delimiter=" ">+ <choose>+ <if variable="container-author reviewed-author" match="any">+ <group>+ <names variable="container-author reviewed-author">+ <label form="verb-short" text-case="lowercase" suffix=" "/>+ <name and="text" delimiter=", "/>+ </names>+ </group>+ </if>+ </choose>+ </group>+ <names variable="editor translator" delimiter=", ">+ <label form="verb-short" text-case="lowercase" suffix=" "/>+ <name and="text" delimiter=", "/>+ </names>+ </group>+ </macro>+ <macro name="secondary-contributors-note">+ <choose>+ <if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="none">+ <text macro="editor-translator"/>+ </if>+ </choose>+ </macro>+ <macro name="container-contributors-note">+ <choose>+ <if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="any">+ <text macro="editor-translator"/>+ </if>+ </choose>+ </macro>+ <macro name="secondary-contributors">+ <choose>+ <if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="none">+ <names variable="editor translator" delimiter=". ">+ <label form="verb" text-case="capitalize-first" suffix=" "/>+ <name and="text" delimiter=", "/>+ </names>+ </if>+ </choose>+ </macro>+ <macro name="container-contributors">+ <choose>+ <if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="any">+ <group delimiter=", ">+ <choose>+ <if variable="author">+ <choose>+ <if variable="container-author" match="any">+ <names variable="container-author">+ <label form="verb-short" text-case="lowercase" suffix=" "/>+ <name and="text" delimiter=", "/>+ </names>+ </if>+ </choose>+ <!--This includes page numers after the container author, e.g. for Introductions -->+ <choose>+ <if variable="container-author author" match="all">+ <group delimiter=". ">+ <text variable="page"/>+ <names variable="editor translator" delimiter=", ">+ <label form="verb" suffix=" "/>+ <name and="text" delimiter=", "/>+ </names>+ </group>+ </if>+ <else>+ <names variable="editor translator" delimiter=", ">+ <label form="verb" text-case="lowercase" suffix=" "/>+ <name and="text" delimiter=", "/>+ </names>+ </else>+ </choose>+ </if>+ </choose>+ </group>+ </if>+ </choose>+ </macro>+ <macro name="recipient-note">+ <names variable="recipient" delimiter=", ">+ <label form="verb" text-case="lowercase" suffix=" "/>+ <name and="text" delimiter=", "/>+ </names>+ </macro>+ <macro name="contributors-note">+ <group delimiter=" ">+ <names variable="author">+ <name and="text" sort-separator=", " delimiter=", "/>+ <label form="short" prefix=", "/>+ <substitute>+ <names variable="editor"/>+ <names variable="translator"/>+ </substitute>+ </names>+ <text macro="recipient-note"/>+ </group>+ </macro>+ <macro name="editor">+ <names variable="editor">+ <name name-as-sort-order="first" and="text" sort-separator=", " delimiter=", " delimiter-precedes-last="always"/>+ <label form="short" prefix=", "/>+ </names>+ </macro>+ <macro name="translator">+ <names variable="translator">+ <name name-as-sort-order="first" and="text" sort-separator=", " delimiter=", " delimiter-precedes-last="always"/>+ <label form="verb-short" prefix=", "/>+ </names>+ </macro>+ <macro name="recipient">+ <group delimiter=" ">+ <choose>+ <if type="personal_communication">+ <choose>+ <if variable="genre">+ <text variable="genre" text-case="capitalize-first"/>+ </if>+ <else>+ <text term="letter" text-case="capitalize-first"/>+ </else>+ </choose>+ </if>+ </choose>+ <text macro="recipient-note"/>+ </group>+ </macro>+ <macro name="contributors">+ <group delimiter=". ">+ <names variable="author">+ <name name-as-sort-order="first" and="text" sort-separator=", " delimiter=", " delimiter-precedes-last="always"/>+ <substitute>+ <text macro="editor"/>+ <text macro="translator"/>+ <choose>+ <if type="webpage post-weblog" match="any">+ <text variable="container-title"/>+ </if>+ </choose>+ </substitute>+ </names>+ <text macro="recipient"/>+ </group>+ </macro>+ <macro name="recipient-short">+ <names variable="recipient">+ <label form="verb" text-case="lowercase" suffix=" "/>+ <name form="short" and="text" delimiter=", "/>+ </names>+ </macro>+ <macro name="contributors-short">+ <group delimiter=" ">+ <names variable="author">+ <name form="short" and="text" delimiter=", "/>+ <substitute>+ <names variable="editor"/>+ <names variable="translator"/>+ </substitute>+ </names>+ <text macro="recipient-short"/>+ </group>+ </macro>+ <macro name="contributors-sort">+ <names variable="author">+ <name name-as-sort-order="all" and="text" sort-separator=", " delimiter=", " delimiter-precedes-last="always"/>+ <substitute>+ <names variable="editor"/>+ <names variable="translator"/>+ <text macro="title"/>+ </substitute>+ </names>+ </macro>+ <macro name="interviewer-note">+ <names variable="interviewer" delimiter=", ">+ <label form="verb" text-case="lowercase" suffix=" "/>+ <name and="text" delimiter=", "/>+ </names>+ </macro>+ <macro name="interviewer">+ <names variable="interviewer" delimiter=", ">+ <label form="verb" text-case="capitalize-first" suffix=" "/>+ <name and="text" delimiter=", "/>+ </names>+ </macro>+ <macro name="title-note">+ <choose>+ <if variable="title" match="none">+ <text variable="genre"/>+ </if>+ <else-if type="book graphic map motion_picture song" match="any">+ <text variable="title" text-case="title" font-style="italic"/>+ <group delimiter=" " prefix=", ">+ <text term="version"/>+ <text variable="version"/>+ </group>+ </else-if>+ <else-if type="legal_case interview patent" match="any">+ <text variable="title"/>+ </else-if>+ <else-if variable="reviewed-author">+ <text variable="title" font-style="italic" prefix="review of "/>+ </else-if>+ <else>+ <text variable="title" text-case="title" quotes="true"/>+ </else>+ </choose>+ </macro>+ <macro name="title">+ <choose>+ <if variable="title" match="none">+ <choose>+ <if type="personal_communication" match="none">+ <text variable="genre" text-case="capitalize-first"/>+ </if>+ </choose>+ </if>+ <else-if type="book graphic motion_picture song" match="any">+ <text variable="title" text-case="title" font-style="italic"/>+ <group prefix=" (" suffix=")" delimiter=" ">+ <text term="version"/>+ <text variable="version"/>+ </group>+ </else-if>+ <else-if variable="reviewed-author">+ <group delimiter=", ">+ <text variable="title" font-style="italic" prefix="Review of "/>+ <names variable="reviewed-author">+ <label form="verb-short" text-case="lowercase" suffix=" "/>+ <name and="text" delimiter=", "/>+ </names>+ </group>+ </else-if>+ <else-if type="bill legislation legal_case interview patent" match="any">+ <text variable="title"/>+ </else-if>+ <else>+ <text variable="title" text-case="title" quotes="true"/>+ </else>+ </choose>+ </macro>+ <macro name="title-short">+ <choose>+ <if variable="title" match="none">+ <choose>+ <if type="interview">+ <text term="interview"/>+ </if>+ <else-if type="manuscript speech" match="any">+ <text variable="genre" form="short"/>+ </else-if>+ </choose>+ </if>+ <else-if type="book graphic motion_picture song" match="any">+ <text variable="title" text-case="title" form="short" font-style="italic"/>+ </else-if>+ <else-if type="legal_case" variable="title-short" match="all">+ <text variable="title" font-style="italic" form="short"/>+ </else-if>+ <else-if type="patent interview" match="any">+ <text variable="title" form="short"/>+ </else-if>+ <else-if type="legal_case bill legislation" match="any">+ <text variable="title"/>+ </else-if>+ <else>+ <text variable="title" text-case="title" form="short" quotes="true"/>+ </else>+ </choose>+ </macro>+ <macro name="date-disambiguate">+ <choose>+ <if disambiguate="true" type="personal_communication" match="any">+ <text macro="issued"/>+ </if>+ </choose>+ </macro>+ <macro name="description-note">+ <group delimiter=", ">+ <text macro="interviewer-note"/>+ <text variable="medium"/>+ <choose>+ <if variable="title" match="none"/>+ <else-if type="manuscript thesis speech" match="any"/>+ <else-if type="patent">+ <group delimiter=" ">+ <text variable="authority"/>+ <text variable="number"/>+ </group>+ </else-if>+ <else>+ <text variable="genre"/>+ </else>+ </choose>+ <choose>+ <if type="map">+ <text variable="scale"/>+ </if>+ <else-if type="graphic">+ <text variable="dimensions"/>+ </else-if>+ </choose>+ </group>+ </macro>+ <macro name="description">+ <group delimiter=", ">+ <group delimiter=". ">+ <text macro="interviewer"/>+ <text variable="medium" text-case="capitalize-first"/>+ </group>+ <choose>+ <if variable="title" match="none"/>+ <else-if type="thesis speech" match="any"/>+ <else-if type="patent">+ <group delimiter=" ">+ <text variable="authority"/>+ <text variable="number"/>+ </group>+ </else-if>+ <else>+ <text variable="genre" text-case="capitalize-first"/>+ </else>+ </choose>+ <choose>+ <if type="map">+ <text variable="scale"/>+ </if>+ <else-if type="graphic">+ <text variable="dimensions"/>+ </else-if>+ </choose>+ </group>+ </macro>+ <macro name="container-title-note">+ <group delimiter=" ">+ <choose>+ <if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="any">+ <text term="in"/>+ </if>+ </choose>+ <choose>+ <if type="webpage">+ <text variable="container-title"/>+ </if>+ <else-if type="post-weblog">+ <text variable="container-title" text-case="title" font-style="italic" suffix=" (blog)"/>+ </else-if>+ <else-if type="bill legislation legal_case" match="none">+ <text variable="container-title" text-case="title" font-style="italic"/>+ </else-if>+ </choose>+ </group>+ </macro>+ <macro name="container-title">+ <group delimiter=" ">+ <choose>+ <if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="any">+ <text term="in" text-case="capitalize-first"/>+ </if>+ </choose>+ <choose>+ <if type="webpage">+ <text variable="container-title"/>+ </if>+ <else-if type="post-weblog">+ <text variable="container-title" text-case="title" font-style="italic" suffix=" (blog)"/>+ </else-if>+ <else-if type="bill legislation legal_case" match="none">+ <text variable="container-title" text-case="title" font-style="italic"/>+ </else-if>+ </choose>+ </group>+ </macro>+ <macro name="collection-title">+ <choose>+ <if match="none" type="article-journal">+ <choose>+ <if match="none" is-numeric="collection-number">+ <group delimiter=", ">+ <text variable="collection-title" text-case="title"/>+ <text variable="collection-number"/>+ </group>+ </if>+ <else>+ <group delimiter=" ">+ <text variable="collection-title" text-case="title"/>+ <text variable="collection-number"/>+ </group>+ </else>+ </choose>+ </if>+ </choose>+ </macro>+ <macro name="collection-title-journal">+ <choose>+ <if type="article-journal">+ <group delimiter=" ">+ <text variable="collection-title"/>+ <text variable="collection-number"/>+ </group>+ </if>+ </choose>+ </macro>+ <macro name="edition-note">+ <choose>+ <if type="book chapter graphic motion_picture paper-conference report song" match="any">+ <choose>+ <if is-numeric="edition">+ <group delimiter=" ">+ <number variable="edition" form="ordinal"/>+ <text term="edition" form="short"/>+ </group>+ </if>+ <else>+ <text variable="edition"/>+ </else>+ </choose>+ </if>+ </choose>+ </macro>+ <macro name="edition">+ <choose>+ <if type="book chapter graphic motion_picture paper-conference report song" match="any">+ <choose>+ <if is-numeric="edition">+ <group delimiter=" ">+ <number variable="edition" form="ordinal"/>+ <text term="edition" form="short"/>+ </group>+ </if>+ <else>+ <text variable="edition" text-case="capitalize-first" suffix="."/>+ </else>+ </choose>+ </if>+ </choose>+ </macro>+ <macro name="locators-note-join-with-space">+ <choose>+ <if type="article-journal" variable="volume" match="all">+ <choose>+ <if match="none" variable="collection-title">+ <text macro="locators-note"/>+ </if>+ </choose>+ </if>+ </choose>+ </macro>+ <macro name="locators-note-join-with-comma">+ <choose>+ <if type="article-journal" match="none">+ <text macro="locators-note"/>+ </if>+ <else-if type="article-journal">+ <choose>+ <if variable="volume" match="none">+ <text macro="locators-note"/>+ </if>+ <else-if match="any" variable="collection-title">+ <text macro="locators-note"/>+ </else-if>+ </choose>+ </else-if>+ </choose>+ </macro>+ <macro name="locators-note">+ <choose>+ <if type="article-journal">+ <group delimiter=", ">+ <text macro="collection-title-journal"/>+ <text variable="volume"/>+ <group delimiter=" ">+ <text term="issue" form="short"/>+ <text variable="issue"/>+ </group>+ </group>+ </if>+ <else-if type="bill legislation legal_case" match="any">+ <text macro="legal-cites"/>+ </else-if>+ <else-if type="book chapter graphic motion_picture paper-conference report song" match="any">+ <group delimiter=", ">+ <text macro="edition-note"/>+ <group delimiter=" ">+ <text term="volume" form="short"/>+ <number variable="volume" form="numeric"/>+ </group>+ <choose>+ <if variable="locator" match="none">+ <group delimiter=" ">+ <number variable="number-of-volumes" form="numeric"/>+ <text term="volume" form="short" plural="true"/>+ </group>+ </if>+ </choose>+ </group>+ </else-if>+ </choose>+ </macro>+ <macro name="legal-cites">+ <choose>+ <if type="legal_case" match="any">+ <group delimiter=" ">+ <choose>+ <if variable="container-title">+ <text variable="volume"/>+ <text variable="container-title"/>+ <group delimiter=" ">+ <!--change to label variable="section" as that becomes available -->+ <text term="section" form="symbol"/>+ <text variable="section"/>+ </group>+ <text variable="page"/>+ </if>+ <else>+ <text variable="number" prefix="No. "/>+ </else>+ </choose>+ </group>+ </if>+ <else-if type="bill legislation" match="any">+ <group delimiter=", ">+ <choose>+ <if variable="number">+ <!--There's a public law number-->+ <text variable="number" prefix="Pub. L. No. "/>+ <group delimiter=" ">+ <!--change to label variable="section" as that becomes available -->+ <text term="section" form="symbol"/>+ <text variable="section"/>+ </group>+ <group delimiter=" ">+ <text variable="volume"/>+ <text variable="container-title"/>+ <text variable="page-first"/>+ </group>+ </if>+ <else>+ <group delimiter=" ">+ <text variable="volume"/>+ <text variable="container-title"/>+ <!--change to label variable="section" as that becomes available -->+ <text term="section" form="symbol"/>+ <text variable="section"/>+ </group>+ </else>+ </choose>+ </group>+ </else-if>+ </choose>+ </macro>+ <macro name="locators-join-with-space">+ <choose>+ <if type="article-journal" variable="volume" match="all">+ <choose>+ <if match="none" variable="collection-title">+ <text macro="locators"/>+ </if>+ </choose>+ </if>+ </choose>+ </macro>+ <macro name="locators-join-with-comma">+ <choose>+ <if type="bill chapter legislation legal_case paper-conference" match="any">+ <text macro="locators"/>+ </if>+ <else-if type="article-journal">+ <choose>+ <if variable="volume" match="none">+ <text macro="locators"/>+ </if>+ <else-if match="any" variable="collection-title">+ <text macro="locators"/>+ </else-if>+ </choose>+ </else-if>+ </choose>+ </macro>+ <macro name="locators-join-with-period">+ <choose>+ <if type="bill legislation legal_case article-journal chapter paper-conference" match="none">+ <text macro="locators"/>+ </if>+ </choose>+ </macro>+ <macro name="locators">+ <choose>+ <if type="article-journal">+ <group delimiter=", ">+ <text macro="collection-title-journal"/>+ <text variable="volume"/>+ <group delimiter=" ">+ <text term="issue" form="short"/>+ <text variable="issue"/>+ </group>+ </group>+ </if>+ <else-if type="bill legislation legal_case" match="any">+ <text macro="legal-cites"/>+ </else-if>+ <else-if type="book graphic motion_picture report song" match="any">+ <group delimiter=". ">+ <text macro="edition"/>+ <group delimiter=" ">+ <text term="volume" form="short" text-case="capitalize-first"/>+ <number variable="volume" form="numeric"/>+ </group>+ <group delimiter=" ">+ <number variable="number-of-volumes" form="numeric"/>+ <text term="volume" form="short" plural="true"/>+ </group>+ </group>+ </else-if>+ <else-if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="any">+ <group delimiter=". ">+ <text macro="edition"/>+ <choose>+ <if variable="page" match="none">+ <group delimiter=" ">+ <text term="volume" form="short" text-case="capitalize-first"/>+ <number variable="volume" form="numeric"/>+ </group>+ </if>+ </choose>+ </group>+ </else-if>+ </choose>+ </macro>+ <macro name="locators-newspaper">+ <choose>+ <if type="article-newspaper">+ <group delimiter=", ">+ <group delimiter=" ">+ <number variable="edition"/>+ <text term="edition"/>+ </group>+ <group delimiter=" ">+ <text term="section" form="short"/>+ <text variable="section"/>+ </group>+ </group>+ </if>+ </choose>+ </macro>+ <macro name="event-note">+ <text variable="event"/>+ </macro>+ <macro name="event">+ <choose>+ <if variable="title">+ <group delimiter=" ">+ <choose>+ <if variable="genre">+ <text term="presented at"/>+ </if>+ <else>+ <text term="presented at" text-case="capitalize-first"/>+ </else>+ </choose>+ <text variable="event"/>+ </group>+ </if>+ <else>+ <group delimiter=" ">+ <text term="presented at" text-case="capitalize-first"/>+ <text variable="event"/>+ </group>+ </else>+ </choose>+ </macro>+ <macro name="originally-published">+ <group delimiter=", ">+ <group delimiter=": ">+ <text variable="original-publisher-place"/>+ <text variable="original-publisher"/>+ </group>+ <choose>+ <if is-uncertain-date="original-date">+ <date variable="original-date" form="numeric" date-parts="year" prefix="[" suffix="?]"/>+ </if>+ <else>+ <date variable="original-date" form="numeric" date-parts="year"/>+ </else>+ </choose>+ </group>+ </macro>+ <macro name="reprint-note">+ <!--needs localization-->+ <choose>+ <if variable="original-date issued" match="all">+ <choose>+ <!--for whatever reason in notes, when we have both original and new publishers, reprint doesn't appear-->+ <if variable="original-publisher original-publisher-place" match="none">+ <text value="repr."/>+ </if>+ </choose>+ </if>+ </choose>+ </macro>+ <macro name="reprint">+ <!--needs localization-->+ <choose>+ <if variable="original-date issued" match="all">+ <text value="reprint" text-case="capitalize-first"/>+ </if>+ </choose>+ </macro>+ <macro name="publisher">+ <choose>+ <if type="thesis">+ <text variable="publisher"/>+ </if>+ <else-if type="speech">+ <text variable="event-place"/>+ </else-if>+ <else>+ <group delimiter=": ">+ <text variable="publisher-place"/>+ <text variable="publisher"/>+ </group>+ </else>+ </choose>+ </macro>+ <macro name="issued">+ <choose>+ <if variable="issued">+ <choose>+ <if type="legal_case">+ <group delimiter=" ">+ <text variable="authority"/>+ <choose>+ <if variable="container-title" match="any">+ <!--Only print year for cases published in reporters-->+ <date variable="issued" form="numeric" date-parts="year"/>+ </if>+ <else>+ <date variable="issued" form="text"/>+ </else>+ </choose>+ </group>+ </if>+ <else-if type="book bill chapter legislation motion_picture paper-conference song thesis" match="any">+ <choose>+ <if is-uncertain-date="issued">+ <date variable="issued" form="numeric" date-parts="year" prefix="[" suffix="?]"/>+ </if>+ <else>+ <date variable="issued" form="numeric" date-parts="year"/>+ </else>+ </choose>+ </else-if>+ <else-if type="patent">+ <group delimiter=", ">+ <group delimiter=" ">+ <!--Needs Localization-->+ <text value="filed"/>+ <date variable="submitted" form="text"/>+ </group>+ <group delimiter=" ">+ <choose>+ <if variable="issued submitted" match="all">+ <text term="and"/>+ </if>+ </choose>+ <!--Needs Localization-->+ <text value="issued"/>+ <date variable="issued" form="text"/>+ </group>+ </group>+ </else-if>+ <else>+ <choose>+ <if is-uncertain-date="issued">+ <date variable="issued" form="text" prefix="[" suffix="?]"/>+ </if>+ <else>+ <date variable="issued" form="text"/>+ </else>+ </choose>+ </else>+ </choose>+ </if>+ <else-if variable="status">+ <text variable="status"/>+ </else-if>+ <else-if variable="accessed URL" match="all"/>+ <else>+ <text term="no date" form="short"/>+ </else>+ </choose>+ </macro>+ <macro name="point-locators-subsequent">+ <choose>+ <if type="legal_case" variable="locator" match="all">+ <choose>+ <if locator="page">+ <group delimiter=":">+ <text variable="volume"/>+ <text variable="locator"/>+ </group>+ </if>+ <else>+ <group delimiter=" ">+ <label variable="locator" form="short"/>+ <text variable="locator"/>+ </group>+ </else>+ </choose>+ </if>+ <else-if variable="locator">+ <choose>+ <if locator="page" match="none">+ <group delimiter=" ">+ <choose>+ <if type="book graphic motion_picture report song" match="any">+ <choose>+ <if variable="volume">+ <group delimiter=", ">+ <group delimiter=" ">+ <text term="volume" form="short"/>+ <number variable="volume" form="numeric"/>+ </group>+ <label variable="locator" form="short"/>+ </group>+ </if>+ <else>+ <label variable="locator" form="short"/>+ </else>+ </choose>+ </if>+ <else>+ <label variable="locator" form="short"/>+ </else>+ </choose>+ <text variable="locator"/>+ </group>+ </if>+ <else-if type="book graphic motion_picture report song" match="any">+ <group delimiter=":">+ <number variable="volume" form="numeric"/>+ <text variable="locator"/>+ </group>+ </else-if>+ <else>+ <text variable="locator"/>+ </else>+ </choose>+ </else-if>+ </choose>+ </macro>+ <macro name="point-locators-join-with-colon">+ <choose>+ <if type="article-journal">+ <choose>+ <if variable="locator page" match="any">+ <choose>+ <if variable="volume issue" match="any">+ <text macro="point-locators"/>+ </if>+ </choose>+ </if>+ </choose>+ </if>+ </choose>+ </macro>+ <macro name="point-locators-join-with-comma">+ <choose>+ <if type="article-journal" match="none">+ <text macro="point-locators"/>+ </if>+ <else-if variable="volume issue" match="none">+ <text macro="point-locators"/>+ </else-if>+ </choose>+ </macro>+ <macro name="point-locators">+ <choose>+ <if variable="locator" match="none">+ <choose>+ <if type="article-journal chapter paper-conference" match="any">+ <text variable="page"/>+ </if>+ </choose>+ </if>+ <else-if type="article-journal">+ <group delimiter=" ">+ <choose>+ <if locator="page" match="none">+ <label variable="locator" form="short" suffix=" "/>+ </if>+ </choose>+ <text variable="locator"/>+ </group>+ </else-if>+ <else-if type="legal_case"/>+ <else>+ <group delimiter=" ">+ <choose>+ <if locator="page" match="none">+ <label variable="locator" form="short"/>+ </if>+ </choose>+ <text variable="locator"/>+ </group>+ </else>+ </choose>+ </macro>+ <macro name="locators-chapter">+ <choose>+ <if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="any">+ <choose>+ <if variable="author container-author" match="all"/>+ <else>+ <choose>+ <if variable="page">+ <text variable="volume" suffix=":"/>+ <text variable="page"/>+ </if>+ </choose>+ </else>+ </choose>+ </if>+ </choose>+ </macro>+ <macro name="locators-journal-join-with-colon">+ <choose>+ <if type="article-journal">+ <choose>+ <if variable="volume issue" match="any">+ <text variable="page"/>+ </if>+ </choose>+ </if>+ </choose>+ </macro>+ <macro name="locators-journal-join-with-comma">+ <choose>+ <if type="article-journal">+ <choose>+ <if variable="volume issue" match="none">+ <text variable="page"/>+ </if>+ </choose>+ </if>+ </choose>+ </macro>+ <macro name="archive-note">+ <choose>+ <if type="thesis">+ <group delimiter=" ">+ <text variable="archive"/>+ <text variable="archive_location" prefix="(" suffix=")"/>+ </group>+ </if>+ <else>+ <group delimiter=", ">+ <text variable="archive_location"/>+ <text variable="archive"/>+ <text variable="archive-place"/>+ </group>+ </else>+ </choose>+ </macro>+ <macro name="archive">+ <choose>+ <if type="thesis">+ <group delimiter=" ">+ <text variable="archive"/>+ <text variable="archive_location" prefix="(" suffix=")"/>+ </group>+ </if>+ <else>+ <group delimiter=". ">+ <text variable="archive_location" text-case="capitalize-first"/>+ <text variable="archive"/>+ <text variable="archive-place"/>+ </group>+ </else>+ </choose>+ </macro>+ <macro name="issue-note-join-with-space">+ <choose>+ <if type="article-journal bill legislation legal_case manuscript thesis" variable="publisher-place event-place publisher" match="any">+ <!--Chicago doesn't use publisher/place for Newspapers and we want the date delimited by a comma-->+ <choose>+ <if type="article-newspaper" match="none">+ <choose>+ <if type="article-journal" match="none">+ <text macro="issue-note"/>+ </if>+ <else-if variable="issue volume" match="any">+ <text macro="issue-note"/>+ </else-if>+ </choose>+ </if>+ </choose>+ </if>+ </choose>+ </macro>+ <macro name="issue-note-join-with-comma">+ <choose>+ <if type="article-journal bill legislation legal_case manuscript speech thesis" variable="publisher-place publisher" match="none">+ <text macro="issue-note"/>+ </if>+ <else-if type="article-newspaper">+ <text macro="issue-note"/>+ </else-if>+ <else-if type="article-journal">+ <choose>+ <if variable="volume issue" match="none">+ <text macro="issue-note"/>+ </if>+ </choose>+ </else-if>+ </choose>+ </macro>+ <macro name="issue-map-graphic">+ <!--See CMoS 17th ed. 14.235 and 14.237-->+ <choose>+ <if type="graphic map" match="any">+ <choose>+ <if variable="publisher publisher-place" match="none">+ <text macro="issued"/>+ </if>+ </choose>+ </if>+ </choose>+ </macro>+ <macro name="issue-note">+ <choose>+ <if type="bill legislation legal_case" match="any">+ <text macro="issued" prefix="(" suffix=")"/>+ </if>+ <else-if type="article-journal">+ <choose>+ <if variable="volume issue" match="any">+ <text macro="issued" prefix="(" suffix=")"/>+ </if>+ <else>+ <text macro="issued"/>+ </else>+ </choose>+ </else-if>+ <else-if type="article-newspaper">+ <text macro="issued"/>+ </else-if>+ <else-if type="manuscript thesis speech" match="any">+ <group delimiter=", " prefix="(" suffix=")">+ <choose>+ <if variable="title" match="any">+ <text variable="genre"/>+ </if>+ </choose>+ <text variable="event"/>+ <text variable="event-place"/>+ <text variable="publisher"/>+ <text macro="issued"/>+ </group>+ </else-if>+ <else-if variable="publisher-place event-place publisher" match="any">+ <group prefix="(" suffix=")" delimiter=", ">+ <text macro="event-note"/>+ <group delimiter="; ">+ <text macro="originally-published"/>+ <group delimiter=", ">+ <text macro="reprint-note"/>+ <text macro="publisher"/>+ </group>+ </group>+ <text macro="issued"/>+ </group>+ </else-if>+ <else>+ <text macro="issued"/>+ </else>+ </choose>+ </macro>+ <macro name="issue-join-with-space">+ <choose>+ <if type="article-journal" match="any">+ <choose>+ <if variable="issue volume" match="any">+ <text macro="issue"/>+ </if>+ </choose>+ </if>+ <else-if type="bill legislation legal_case" match="any">+ <text macro="issue"/>+ </else-if>+ </choose>+ </macro>+ <macro name="issue-join-with-period">+ <choose>+ <if type="article-journal bill legislation legal_case" match="none">+ <choose>+ <if type="speech" variable="publisher publisher-place" match="any">+ <text macro="issue"/>+ </if>+ </choose>+ </if>+ </choose>+ </macro>+ <macro name="issue-join-with-comma">+ <choose>+ <if type="bill legislation legal_case" match="none">+ <choose>+ <if type="article-journal" match="none">+ <choose>+ <if type="speech" variable="publisher publisher-place" match="none">+ <text macro="issue"/>+ </if>+ </choose>+ </if>+ <else-if variable="volume issue" match="none">+ <text macro="issue"/>+ </else-if>+ </choose>+ </if>+ </choose>+ </macro>+ <macro name="issue">+ <choose>+ <if type="bill legislation legal_case" match="any">+ <text macro="issued" prefix="(" suffix=")"/>+ </if>+ <else-if type="article-journal">+ <choose>+ <if variable="issue volume" match="any">+ <text macro="issued" prefix="(" suffix=")"/>+ </if>+ <else>+ <text macro="issued"/>+ </else>+ </choose>+ </else-if>+ <else-if type="speech">+ <group delimiter=", ">+ <group delimiter=" ">+ <choose>+ <if variable="title" match="none"/>+ <else>+ <text variable="genre" text-case="capitalize-first"/>+ </else>+ </choose>+ <text macro="event"/>+ </group>+ <text variable="event-place"/>+ <text macro="issued"/>+ </group>+ </else-if>+ <!--Chicago doesn't use publisher/place for Newspapers -->+ <else-if type="article-newspaper">+ <text macro="issued"/>+ </else-if>+ <else-if variable="publisher-place publisher" match="any">+ <group delimiter=", ">+ <choose>+ <if type="thesis">+ <text variable="genre" text-case="capitalize-first"/>+ </if>+ </choose>+ <group delimiter=". ">+ <text macro="originally-published"/>+ <group delimiter=", ">+ <text macro="reprint"/>+ <text macro="publisher"/>+ </group>+ </group>+ <text macro="issued"/>+ </group>+ </else-if>+ <!--location for data for maps and artwork is different-->+ <else-if type="graphic map" match="none">+ <text macro="issued"/>+ </else-if>+ </choose>+ </macro>+ <macro name="access-note">+ <group delimiter=", ">+ <choose>+ <if type="graphic report" match="any">+ <text macro="archive-note"/>+ </if>+ <else-if type="article-journal bill book chapter legal_case legislation motion_picture paper-conference" match="none">+ <text macro="archive-note"/>+ </else-if>+ </choose>+ <choose>+ <if variable="issued" match="none">+ <group delimiter=" ">+ <text term="accessed"/>+ <date variable="accessed" form="text"/>+ </group>+ </if>+ </choose>+ <choose>+ <if type="legal_case" match="none">+ <choose>+ <if variable="DOI">+ <text variable="DOI" prefix="https://doi.org/"/>+ </if>+ <else>+ <text variable="URL"/>+ </else>+ </choose>+ </if>+ </choose>+ </group>+ </macro>+ <macro name="access">+ <group delimiter=". ">+ <choose>+ <if type="graphic report" match="any">+ <text macro="archive"/>+ </if>+ <else-if type="article-journal bill book chapter legal_case legislation motion_picture paper-conference" match="none">+ <text macro="archive"/>+ </else-if>+ </choose>+ <choose>+ <if variable="issued" match="none">+ <group delimiter=" ">+ <text term="accessed" text-case="capitalize-first"/>+ <date variable="accessed" form="text"/>+ </group>+ </if>+ </choose>+ <choose>+ <if type="legal_case" match="none">+ <choose>+ <if variable="DOI">+ <text variable="DOI" prefix="https://doi.org/"/>+ </if>+ <else>+ <text variable="URL"/>+ </else>+ </choose>+ </if>+ </choose>+ </group>+ </macro>+ <macro name="case-locator-subsequent">+ <choose>+ <if type="legal_case">+ <group delimiter=" ">+ <text variable="volume"/>+ <text variable="container-title"/>+ </group>+ </if>+ </choose>+ </macro>+ <macro name="case-pinpoint-subsequent">+ <choose>+ <if type="legal_case">+ <group delimiter=" ">+ <choose>+ <if locator="page">+ <text term="at"/>+ <text variable="locator"/>+ </if>+ <else>+ <label variable="locator"/>+ <text variable="locator"/>+ </else>+ </choose>+ </group>+ </if>+ </choose>+ </macro>+ <citation et-al-min="4" et-al-use-first="1" disambiguate-add-names="true">+ <layout suffix="." delimiter="; ">+ <choose>+ <if position="ibid ibid-with-locator" match="any">+ <group delimiter=", ">+ <text macro="contributors-short"/>+ <group delimiter=" ">+ <group delimiter=", ">+ <choose>+ <if variable="author editor translator" match="none">+ <text macro="title-short"/>+ </if>+ </choose>+ <text macro="case-locator-subsequent"/>+ </group>+ <text macro="case-pinpoint-subsequent"/>+ </group>+ <choose>+ <if match="none" type="legal_case">+ <text macro="point-locators-subsequent"/>+ </if>+ </choose>+ </group>+ </if>+ <else>+ <group delimiter=", ">+ <text macro="contributors-short"/>+ <group delimiter=" ">+ <group delimiter=", ">+ <text macro="title-short"/>+ <!--if title & author are the same: -->+ <text macro="date-disambiguate"/>+ <text macro="case-locator-subsequent"/>+ </group>+ <text macro="case-pinpoint-subsequent"/>+ </group>+ <choose>+ <if match="none" type="legal_case">+ <text macro="point-locators-subsequent"/>+ </if>+ </choose>+ </group>+ </else>+ </choose>+ </layout>+ </citation>+ <bibliography hanging-indent="true" et-al-min="11" et-al-use-first="7" subsequent-author-substitute="———" entry-spacing="0">+ <sort>+ <key macro="contributors-sort"/>+ <key variable="title"/>+ <key variable="genre"/>+ <key variable="issued"/>+ </sort>+ <layout suffix=".">+ <group delimiter=". ">+ <group delimiter=": ">+ <group delimiter=", ">+ <group delimiter=" ">+ <group delimiter=". ">+ <group delimiter=" ">+ <group delimiter=", ">+ <group delimiter=". ">+ <group delimiter=". ">+ <text macro="contributors"/>+ <text macro="title"/>+ <text macro="issue-map-graphic"/>+ </group>+ <text macro="description"/>+ <text macro="secondary-contributors"/>+ <group delimiter=", ">+ <text macro="container-title"/>+ <text macro="container-contributors"/>+ </group>+ <text macro="locators-join-with-period"/>+ </group>+ <text macro="locators-join-with-comma"/>+ <text macro="locators-chapter"/>+ </group>+ <text macro="locators-join-with-space"/>+ </group>+ <text macro="collection-title"/>+ <text macro="issue-join-with-period"/>+ </group>+ <text macro="issue-join-with-space"/>+ </group>+ <text macro="issue-join-with-comma"/>+ <text macro="locators-journal-join-with-comma"/>+ <text macro="locators-newspaper"/>+ </group>+ <text macro="locators-journal-join-with-colon"/>+ </group>+ <text macro="access"/>+ </group>+ </layout>+ </bibliography>+</style>+<<===== CSL =====<<++>>===== INPUT =====>>+[+ {+ "author": [+ {+ "family": "Doe",+ "given": "John"+ }+ ],+ "id": "doeA",+ "title": "Title A",+ "type": "book"+ },+ {+ "author": [+ {+ "family": "Doe",+ "given": "John"+ }+ ],+ "id": "doeB",+ "title": "Title B",+ "type": "book"+ }+]+<<===== INPUT =====<<+++>>===== CITATIONS =====>>+[ {"citationItems": [{"id":"doeA"}],+ "citationNoteNumber": 1},+ {"citationItems": [{"id":"doeB"}],+ "citationNoteNumber": 1},+ {"citationItems": [{"id":"doeB"}],+ "citationNoteNumber": 2}+]+<<===== CITATION-ITEMS =====<<++>>===== VERSION =====>>+1.0+<<===== VERSION =====<<+
− test/extra/pandoc6813.txt
@@ -1,1472 +0,0 @@->>===== MODE =====>>-citation-<<===== MODE =====<<-->>===== RESULT =====>>-Doe, <i>Title A</i>.-Doe, <i>Title B</i>.-Doe, <i>Title B</i>.-<<===== RESULT =====<<-->>===== CSL =====>>-<?xml version="1.0" encoding="utf-8"?>-<style xmlns="http://purl.org/net/xbiblio/csl" class="note" version="1.0" demote-non-dropping-particle="display-and-sort" page-range-format="chicago">- <info>- <title>Chicago Manual of Style 17th edition (note)</title>- <id>http://www.zotero.org/styles/chicago-note-bibliography</id>- <link href="http://www.zotero.org/styles/chicago-note-bibliography" rel="self"/>- <link href="http://www.chicagomanualofstyle.org/tools_citationguide.html" rel="documentation"/>- <author>- <name>Julian Onions</name>- <email>julian.onions@gmail.com</email>- </author>- <contributor>- <name>Simon Kornblith</name>- <email>simon@simonster.com</email>- </contributor>- <contributor>- <name>Elena Razlogova</name>- <email>elena.razlogova@gmail.com</email>- </contributor>- <contributor>- <name>Frank Bennett</name>- <email>biercenator@gmail.com</email>- </contributor>- <contributor>- <name>Andrew Dunning</name>- <email>andrew.dunning@utoronto.ca</email>- </contributor>- <contributor>- <name>Sebastian Karcher</name>- </contributor>- <contributor>- <name>Brenton M. Wiernik</name>- </contributor>- <category citation-format="note"/>- <category field="generic-base"/>- <summary>Chicago format with short notes and bibliography</summary>- <updated>2017-10-12T12:00:00+00:00</updated>- <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="editor" form="verb-short">ed.</term>- <term name="translator" form="verb-short">trans.</term>- <term name="translator" form="short">trans.</term>- <term name="editortranslator" form="verb-short">ed. and trans.</term>- <term name="editortranslator" form="verb">Edited and translated by</term>- <term name="translator" form="short">trans.</term>- </terms>- </locale>- <macro name="editor-translator">- <group delimiter=", ">- <group delimiter=" ">- <choose>- <if variable="container-author reviewed-author" match="any">- <group>- <names variable="container-author reviewed-author">- <label form="verb-short" text-case="lowercase" suffix=" "/>- <name and="text" delimiter=", "/>- </names>- </group>- </if>- </choose>- </group>- <names variable="editor translator" delimiter=", ">- <label form="verb-short" text-case="lowercase" suffix=" "/>- <name and="text" delimiter=", "/>- </names>- </group>- </macro>- <macro name="secondary-contributors-note">- <choose>- <if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="none">- <text macro="editor-translator"/>- </if>- </choose>- </macro>- <macro name="container-contributors-note">- <choose>- <if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="any">- <text macro="editor-translator"/>- </if>- </choose>- </macro>- <macro name="secondary-contributors">- <choose>- <if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="none">- <names variable="editor translator" delimiter=". ">- <label form="verb" text-case="capitalize-first" suffix=" "/>- <name and="text" delimiter=", "/>- </names>- </if>- </choose>- </macro>- <macro name="container-contributors">- <choose>- <if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="any">- <group delimiter=", ">- <choose>- <if variable="author">- <choose>- <if variable="container-author" match="any">- <names variable="container-author">- <label form="verb-short" text-case="lowercase" suffix=" "/>- <name and="text" delimiter=", "/>- </names>- </if>- </choose>- <!--This includes page numers after the container author, e.g. for Introductions -->- <choose>- <if variable="container-author author" match="all">- <group delimiter=". ">- <text variable="page"/>- <names variable="editor translator" delimiter=", ">- <label form="verb" suffix=" "/>- <name and="text" delimiter=", "/>- </names>- </group>- </if>- <else>- <names variable="editor translator" delimiter=", ">- <label form="verb" text-case="lowercase" suffix=" "/>- <name and="text" delimiter=", "/>- </names>- </else>- </choose>- </if>- </choose>- </group>- </if>- </choose>- </macro>- <macro name="recipient-note">- <names variable="recipient" delimiter=", ">- <label form="verb" text-case="lowercase" suffix=" "/>- <name and="text" delimiter=", "/>- </names>- </macro>- <macro name="contributors-note">- <group delimiter=" ">- <names variable="author">- <name and="text" sort-separator=", " delimiter=", "/>- <label form="short" prefix=", "/>- <substitute>- <names variable="editor"/>- <names variable="translator"/>- </substitute>- </names>- <text macro="recipient-note"/>- </group>- </macro>- <macro name="editor">- <names variable="editor">- <name name-as-sort-order="first" and="text" sort-separator=", " delimiter=", " delimiter-precedes-last="always"/>- <label form="short" prefix=", "/>- </names>- </macro>- <macro name="translator">- <names variable="translator">- <name name-as-sort-order="first" and="text" sort-separator=", " delimiter=", " delimiter-precedes-last="always"/>- <label form="verb-short" prefix=", "/>- </names>- </macro>- <macro name="recipient">- <group delimiter=" ">- <choose>- <if type="personal_communication">- <choose>- <if variable="genre">- <text variable="genre" text-case="capitalize-first"/>- </if>- <else>- <text term="letter" text-case="capitalize-first"/>- </else>- </choose>- </if>- </choose>- <text macro="recipient-note"/>- </group>- </macro>- <macro name="contributors">- <group delimiter=". ">- <names variable="author">- <name name-as-sort-order="first" and="text" sort-separator=", " delimiter=", " delimiter-precedes-last="always"/>- <substitute>- <text macro="editor"/>- <text macro="translator"/>- <choose>- <if type="webpage post-weblog" match="any">- <text variable="container-title"/>- </if>- </choose>- </substitute>- </names>- <text macro="recipient"/>- </group>- </macro>- <macro name="recipient-short">- <names variable="recipient">- <label form="verb" text-case="lowercase" suffix=" "/>- <name form="short" and="text" delimiter=", "/>- </names>- </macro>- <macro name="contributors-short">- <group delimiter=" ">- <names variable="author">- <name form="short" and="text" delimiter=", "/>- <substitute>- <names variable="editor"/>- <names variable="translator"/>- </substitute>- </names>- <text macro="recipient-short"/>- </group>- </macro>- <macro name="contributors-sort">- <names variable="author">- <name name-as-sort-order="all" and="text" sort-separator=", " delimiter=", " delimiter-precedes-last="always"/>- <substitute>- <names variable="editor"/>- <names variable="translator"/>- <text macro="title"/>- </substitute>- </names>- </macro>- <macro name="interviewer-note">- <names variable="interviewer" delimiter=", ">- <label form="verb" text-case="lowercase" suffix=" "/>- <name and="text" delimiter=", "/>- </names>- </macro>- <macro name="interviewer">- <names variable="interviewer" delimiter=", ">- <label form="verb" text-case="capitalize-first" suffix=" "/>- <name and="text" delimiter=", "/>- </names>- </macro>- <macro name="title-note">- <choose>- <if variable="title" match="none">- <text variable="genre"/>- </if>- <else-if type="book graphic map motion_picture song" match="any">- <text variable="title" text-case="title" font-style="italic"/>- <group delimiter=" " prefix=", ">- <text term="version"/>- <text variable="version"/>- </group>- </else-if>- <else-if type="legal_case interview patent" match="any">- <text variable="title"/>- </else-if>- <else-if variable="reviewed-author">- <text variable="title" font-style="italic" prefix="review of "/>- </else-if>- <else>- <text variable="title" text-case="title" quotes="true"/>- </else>- </choose>- </macro>- <macro name="title">- <choose>- <if variable="title" match="none">- <choose>- <if type="personal_communication" match="none">- <text variable="genre" text-case="capitalize-first"/>- </if>- </choose>- </if>- <else-if type="book graphic motion_picture song" match="any">- <text variable="title" text-case="title" font-style="italic"/>- <group prefix=" (" suffix=")" delimiter=" ">- <text term="version"/>- <text variable="version"/>- </group>- </else-if>- <else-if variable="reviewed-author">- <group delimiter=", ">- <text variable="title" font-style="italic" prefix="Review of "/>- <names variable="reviewed-author">- <label form="verb-short" text-case="lowercase" suffix=" "/>- <name and="text" delimiter=", "/>- </names>- </group>- </else-if>- <else-if type="bill legislation legal_case interview patent" match="any">- <text variable="title"/>- </else-if>- <else>- <text variable="title" text-case="title" quotes="true"/>- </else>- </choose>- </macro>- <macro name="title-short">- <choose>- <if variable="title" match="none">- <choose>- <if type="interview">- <text term="interview"/>- </if>- <else-if type="manuscript speech" match="any">- <text variable="genre" form="short"/>- </else-if>- </choose>- </if>- <else-if type="book graphic motion_picture song" match="any">- <text variable="title" text-case="title" form="short" font-style="italic"/>- </else-if>- <else-if type="legal_case" variable="title-short" match="all">- <text variable="title" font-style="italic" form="short"/>- </else-if>- <else-if type="patent interview" match="any">- <text variable="title" form="short"/>- </else-if>- <else-if type="legal_case bill legislation" match="any">- <text variable="title"/>- </else-if>- <else>- <text variable="title" text-case="title" form="short" quotes="true"/>- </else>- </choose>- </macro>- <macro name="date-disambiguate">- <choose>- <if disambiguate="true" type="personal_communication" match="any">- <text macro="issued"/>- </if>- </choose>- </macro>- <macro name="description-note">- <group delimiter=", ">- <text macro="interviewer-note"/>- <text variable="medium"/>- <choose>- <if variable="title" match="none"/>- <else-if type="manuscript thesis speech" match="any"/>- <else-if type="patent">- <group delimiter=" ">- <text variable="authority"/>- <text variable="number"/>- </group>- </else-if>- <else>- <text variable="genre"/>- </else>- </choose>- <choose>- <if type="map">- <text variable="scale"/>- </if>- <else-if type="graphic">- <text variable="dimensions"/>- </else-if>- </choose>- </group>- </macro>- <macro name="description">- <group delimiter=", ">- <group delimiter=". ">- <text macro="interviewer"/>- <text variable="medium" text-case="capitalize-first"/>- </group>- <choose>- <if variable="title" match="none"/>- <else-if type="thesis speech" match="any"/>- <else-if type="patent">- <group delimiter=" ">- <text variable="authority"/>- <text variable="number"/>- </group>- </else-if>- <else>- <text variable="genre" text-case="capitalize-first"/>- </else>- </choose>- <choose>- <if type="map">- <text variable="scale"/>- </if>- <else-if type="graphic">- <text variable="dimensions"/>- </else-if>- </choose>- </group>- </macro>- <macro name="container-title-note">- <group delimiter=" ">- <choose>- <if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="any">- <text term="in"/>- </if>- </choose>- <choose>- <if type="webpage">- <text variable="container-title"/>- </if>- <else-if type="post-weblog">- <text variable="container-title" text-case="title" font-style="italic" suffix=" (blog)"/>- </else-if>- <else-if type="bill legislation legal_case" match="none">- <text variable="container-title" text-case="title" font-style="italic"/>- </else-if>- </choose>- </group>- </macro>- <macro name="container-title">- <group delimiter=" ">- <choose>- <if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="any">- <text term="in" text-case="capitalize-first"/>- </if>- </choose>- <choose>- <if type="webpage">- <text variable="container-title"/>- </if>- <else-if type="post-weblog">- <text variable="container-title" text-case="title" font-style="italic" suffix=" (blog)"/>- </else-if>- <else-if type="bill legislation legal_case" match="none">- <text variable="container-title" text-case="title" font-style="italic"/>- </else-if>- </choose>- </group>- </macro>- <macro name="collection-title">- <choose>- <if match="none" type="article-journal">- <choose>- <if match="none" is-numeric="collection-number">- <group delimiter=", ">- <text variable="collection-title" text-case="title"/>- <text variable="collection-number"/>- </group>- </if>- <else>- <group delimiter=" ">- <text variable="collection-title" text-case="title"/>- <text variable="collection-number"/>- </group>- </else>- </choose>- </if>- </choose>- </macro>- <macro name="collection-title-journal">- <choose>- <if type="article-journal">- <group delimiter=" ">- <text variable="collection-title"/>- <text variable="collection-number"/>- </group>- </if>- </choose>- </macro>- <macro name="edition-note">- <choose>- <if type="book chapter graphic motion_picture paper-conference report song" match="any">- <choose>- <if is-numeric="edition">- <group delimiter=" ">- <number variable="edition" form="ordinal"/>- <text term="edition" form="short"/>- </group>- </if>- <else>- <text variable="edition"/>- </else>- </choose>- </if>- </choose>- </macro>- <macro name="edition">- <choose>- <if type="book chapter graphic motion_picture paper-conference report song" match="any">- <choose>- <if is-numeric="edition">- <group delimiter=" ">- <number variable="edition" form="ordinal"/>- <text term="edition" form="short"/>- </group>- </if>- <else>- <text variable="edition" text-case="capitalize-first" suffix="."/>- </else>- </choose>- </if>- </choose>- </macro>- <macro name="locators-note-join-with-space">- <choose>- <if type="article-journal" variable="volume" match="all">- <choose>- <if match="none" variable="collection-title">- <text macro="locators-note"/>- </if>- </choose>- </if>- </choose>- </macro>- <macro name="locators-note-join-with-comma">- <choose>- <if type="article-journal" match="none">- <text macro="locators-note"/>- </if>- <else-if type="article-journal">- <choose>- <if variable="volume" match="none">- <text macro="locators-note"/>- </if>- <else-if match="any" variable="collection-title">- <text macro="locators-note"/>- </else-if>- </choose>- </else-if>- </choose>- </macro>- <macro name="locators-note">- <choose>- <if type="article-journal">- <group delimiter=", ">- <text macro="collection-title-journal"/>- <text variable="volume"/>- <group delimiter=" ">- <text term="issue" form="short"/>- <text variable="issue"/>- </group>- </group>- </if>- <else-if type="bill legislation legal_case" match="any">- <text macro="legal-cites"/>- </else-if>- <else-if type="book chapter graphic motion_picture paper-conference report song" match="any">- <group delimiter=", ">- <text macro="edition-note"/>- <group delimiter=" ">- <text term="volume" form="short"/>- <number variable="volume" form="numeric"/>- </group>- <choose>- <if variable="locator" match="none">- <group delimiter=" ">- <number variable="number-of-volumes" form="numeric"/>- <text term="volume" form="short" plural="true"/>- </group>- </if>- </choose>- </group>- </else-if>- </choose>- </macro>- <macro name="legal-cites">- <choose>- <if type="legal_case" match="any">- <group delimiter=" ">- <choose>- <if variable="container-title">- <text variable="volume"/>- <text variable="container-title"/>- <group delimiter=" ">- <!--change to label variable="section" as that becomes available -->- <text term="section" form="symbol"/>- <text variable="section"/>- </group>- <text variable="page"/>- </if>- <else>- <text variable="number" prefix="No. "/>- </else>- </choose>- </group>- </if>- <else-if type="bill legislation" match="any">- <group delimiter=", ">- <choose>- <if variable="number">- <!--There's a public law number-->- <text variable="number" prefix="Pub. L. No. "/>- <group delimiter=" ">- <!--change to label variable="section" as that becomes available -->- <text term="section" form="symbol"/>- <text variable="section"/>- </group>- <group delimiter=" ">- <text variable="volume"/>- <text variable="container-title"/>- <text variable="page-first"/>- </group>- </if>- <else>- <group delimiter=" ">- <text variable="volume"/>- <text variable="container-title"/>- <!--change to label variable="section" as that becomes available -->- <text term="section" form="symbol"/>- <text variable="section"/>- </group>- </else>- </choose>- </group>- </else-if>- </choose>- </macro>- <macro name="locators-join-with-space">- <choose>- <if type="article-journal" variable="volume" match="all">- <choose>- <if match="none" variable="collection-title">- <text macro="locators"/>- </if>- </choose>- </if>- </choose>- </macro>- <macro name="locators-join-with-comma">- <choose>- <if type="bill chapter legislation legal_case paper-conference" match="any">- <text macro="locators"/>- </if>- <else-if type="article-journal">- <choose>- <if variable="volume" match="none">- <text macro="locators"/>- </if>- <else-if match="any" variable="collection-title">- <text macro="locators"/>- </else-if>- </choose>- </else-if>- </choose>- </macro>- <macro name="locators-join-with-period">- <choose>- <if type="bill legislation legal_case article-journal chapter paper-conference" match="none">- <text macro="locators"/>- </if>- </choose>- </macro>- <macro name="locators">- <choose>- <if type="article-journal">- <group delimiter=", ">- <text macro="collection-title-journal"/>- <text variable="volume"/>- <group delimiter=" ">- <text term="issue" form="short"/>- <text variable="issue"/>- </group>- </group>- </if>- <else-if type="bill legislation legal_case" match="any">- <text macro="legal-cites"/>- </else-if>- <else-if type="book graphic motion_picture report song" match="any">- <group delimiter=". ">- <text macro="edition"/>- <group delimiter=" ">- <text term="volume" form="short" text-case="capitalize-first"/>- <number variable="volume" form="numeric"/>- </group>- <group delimiter=" ">- <number variable="number-of-volumes" form="numeric"/>- <text term="volume" form="short" plural="true"/>- </group>- </group>- </else-if>- <else-if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="any">- <group delimiter=". ">- <text macro="edition"/>- <choose>- <if variable="page" match="none">- <group delimiter=" ">- <text term="volume" form="short" text-case="capitalize-first"/>- <number variable="volume" form="numeric"/>- </group>- </if>- </choose>- </group>- </else-if>- </choose>- </macro>- <macro name="locators-newspaper">- <choose>- <if type="article-newspaper">- <group delimiter=", ">- <group delimiter=" ">- <number variable="edition"/>- <text term="edition"/>- </group>- <group delimiter=" ">- <text term="section" form="short"/>- <text variable="section"/>- </group>- </group>- </if>- </choose>- </macro>- <macro name="event-note">- <text variable="event"/>- </macro>- <macro name="event">- <choose>- <if variable="title">- <group delimiter=" ">- <choose>- <if variable="genre">- <text term="presented at"/>- </if>- <else>- <text term="presented at" text-case="capitalize-first"/>- </else>- </choose>- <text variable="event"/>- </group>- </if>- <else>- <group delimiter=" ">- <text term="presented at" text-case="capitalize-first"/>- <text variable="event"/>- </group>- </else>- </choose>- </macro>- <macro name="originally-published">- <group delimiter=", ">- <group delimiter=": ">- <text variable="original-publisher-place"/>- <text variable="original-publisher"/>- </group>- <choose>- <if is-uncertain-date="original-date">- <date variable="original-date" form="numeric" date-parts="year" prefix="[" suffix="?]"/>- </if>- <else>- <date variable="original-date" form="numeric" date-parts="year"/>- </else>- </choose>- </group>- </macro>- <macro name="reprint-note">- <!--needs localization-->- <choose>- <if variable="original-date issued" match="all">- <choose>- <!--for whatever reason in notes, when we have both original and new publishers, reprint doesn't appear-->- <if variable="original-publisher original-publisher-place" match="none">- <text value="repr."/>- </if>- </choose>- </if>- </choose>- </macro>- <macro name="reprint">- <!--needs localization-->- <choose>- <if variable="original-date issued" match="all">- <text value="reprint" text-case="capitalize-first"/>- </if>- </choose>- </macro>- <macro name="publisher">- <choose>- <if type="thesis">- <text variable="publisher"/>- </if>- <else-if type="speech">- <text variable="event-place"/>- </else-if>- <else>- <group delimiter=": ">- <text variable="publisher-place"/>- <text variable="publisher"/>- </group>- </else>- </choose>- </macro>- <macro name="issued">- <choose>- <if variable="issued">- <choose>- <if type="legal_case">- <group delimiter=" ">- <text variable="authority"/>- <choose>- <if variable="container-title" match="any">- <!--Only print year for cases published in reporters-->- <date variable="issued" form="numeric" date-parts="year"/>- </if>- <else>- <date variable="issued" form="text"/>- </else>- </choose>- </group>- </if>- <else-if type="book bill chapter legislation motion_picture paper-conference song thesis" match="any">- <choose>- <if is-uncertain-date="issued">- <date variable="issued" form="numeric" date-parts="year" prefix="[" suffix="?]"/>- </if>- <else>- <date variable="issued" form="numeric" date-parts="year"/>- </else>- </choose>- </else-if>- <else-if type="patent">- <group delimiter=", ">- <group delimiter=" ">- <!--Needs Localization-->- <text value="filed"/>- <date variable="submitted" form="text"/>- </group>- <group delimiter=" ">- <choose>- <if variable="issued submitted" match="all">- <text term="and"/>- </if>- </choose>- <!--Needs Localization-->- <text value="issued"/>- <date variable="issued" form="text"/>- </group>- </group>- </else-if>- <else>- <choose>- <if is-uncertain-date="issued">- <date variable="issued" form="text" prefix="[" suffix="?]"/>- </if>- <else>- <date variable="issued" form="text"/>- </else>- </choose>- </else>- </choose>- </if>- <else-if variable="status">- <text variable="status"/>- </else-if>- <else-if variable="accessed URL" match="all"/>- <else>- <text term="no date" form="short"/>- </else>- </choose>- </macro>- <macro name="point-locators-subsequent">- <choose>- <if type="legal_case" variable="locator" match="all">- <choose>- <if locator="page">- <group delimiter=":">- <text variable="volume"/>- <text variable="locator"/>- </group>- </if>- <else>- <group delimiter=" ">- <label variable="locator" form="short"/>- <text variable="locator"/>- </group>- </else>- </choose>- </if>- <else-if variable="locator">- <choose>- <if locator="page" match="none">- <group delimiter=" ">- <choose>- <if type="book graphic motion_picture report song" match="any">- <choose>- <if variable="volume">- <group delimiter=", ">- <group delimiter=" ">- <text term="volume" form="short"/>- <number variable="volume" form="numeric"/>- </group>- <label variable="locator" form="short"/>- </group>- </if>- <else>- <label variable="locator" form="short"/>- </else>- </choose>- </if>- <else>- <label variable="locator" form="short"/>- </else>- </choose>- <text variable="locator"/>- </group>- </if>- <else-if type="book graphic motion_picture report song" match="any">- <group delimiter=":">- <number variable="volume" form="numeric"/>- <text variable="locator"/>- </group>- </else-if>- <else>- <text variable="locator"/>- </else>- </choose>- </else-if>- </choose>- </macro>- <macro name="point-locators-join-with-colon">- <choose>- <if type="article-journal">- <choose>- <if variable="locator page" match="any">- <choose>- <if variable="volume issue" match="any">- <text macro="point-locators"/>- </if>- </choose>- </if>- </choose>- </if>- </choose>- </macro>- <macro name="point-locators-join-with-comma">- <choose>- <if type="article-journal" match="none">- <text macro="point-locators"/>- </if>- <else-if variable="volume issue" match="none">- <text macro="point-locators"/>- </else-if>- </choose>- </macro>- <macro name="point-locators">- <choose>- <if variable="locator" match="none">- <choose>- <if type="article-journal chapter paper-conference" match="any">- <text variable="page"/>- </if>- </choose>- </if>- <else-if type="article-journal">- <group delimiter=" ">- <choose>- <if locator="page" match="none">- <label variable="locator" form="short" suffix=" "/>- </if>- </choose>- <text variable="locator"/>- </group>- </else-if>- <else-if type="legal_case"/>- <else>- <group delimiter=" ">- <choose>- <if locator="page" match="none">- <label variable="locator" form="short"/>- </if>- </choose>- <text variable="locator"/>- </group>- </else>- </choose>- </macro>- <macro name="locators-chapter">- <choose>- <if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="any">- <choose>- <if variable="author container-author" match="all"/>- <else>- <choose>- <if variable="page">- <text variable="volume" suffix=":"/>- <text variable="page"/>- </if>- </choose>- </else>- </choose>- </if>- </choose>- </macro>- <macro name="locators-journal-join-with-colon">- <choose>- <if type="article-journal">- <choose>- <if variable="volume issue" match="any">- <text variable="page"/>- </if>- </choose>- </if>- </choose>- </macro>- <macro name="locators-journal-join-with-comma">- <choose>- <if type="article-journal">- <choose>- <if variable="volume issue" match="none">- <text variable="page"/>- </if>- </choose>- </if>- </choose>- </macro>- <macro name="archive-note">- <choose>- <if type="thesis">- <group delimiter=" ">- <text variable="archive"/>- <text variable="archive_location" prefix="(" suffix=")"/>- </group>- </if>- <else>- <group delimiter=", ">- <text variable="archive_location"/>- <text variable="archive"/>- <text variable="archive-place"/>- </group>- </else>- </choose>- </macro>- <macro name="archive">- <choose>- <if type="thesis">- <group delimiter=" ">- <text variable="archive"/>- <text variable="archive_location" prefix="(" suffix=")"/>- </group>- </if>- <else>- <group delimiter=". ">- <text variable="archive_location" text-case="capitalize-first"/>- <text variable="archive"/>- <text variable="archive-place"/>- </group>- </else>- </choose>- </macro>- <macro name="issue-note-join-with-space">- <choose>- <if type="article-journal bill legislation legal_case manuscript thesis" variable="publisher-place event-place publisher" match="any">- <!--Chicago doesn't use publisher/place for Newspapers and we want the date delimited by a comma-->- <choose>- <if type="article-newspaper" match="none">- <choose>- <if type="article-journal" match="none">- <text macro="issue-note"/>- </if>- <else-if variable="issue volume" match="any">- <text macro="issue-note"/>- </else-if>- </choose>- </if>- </choose>- </if>- </choose>- </macro>- <macro name="issue-note-join-with-comma">- <choose>- <if type="article-journal bill legislation legal_case manuscript speech thesis" variable="publisher-place publisher" match="none">- <text macro="issue-note"/>- </if>- <else-if type="article-newspaper">- <text macro="issue-note"/>- </else-if>- <else-if type="article-journal">- <choose>- <if variable="volume issue" match="none">- <text macro="issue-note"/>- </if>- </choose>- </else-if>- </choose>- </macro>- <macro name="issue-map-graphic">- <!--See CMoS 17th ed. 14.235 and 14.237-->- <choose>- <if type="graphic map" match="any">- <choose>- <if variable="publisher publisher-place" match="none">- <text macro="issued"/>- </if>- </choose>- </if>- </choose>- </macro>- <macro name="issue-note">- <choose>- <if type="bill legislation legal_case" match="any">- <text macro="issued" prefix="(" suffix=")"/>- </if>- <else-if type="article-journal">- <choose>- <if variable="volume issue" match="any">- <text macro="issued" prefix="(" suffix=")"/>- </if>- <else>- <text macro="issued"/>- </else>- </choose>- </else-if>- <else-if type="article-newspaper">- <text macro="issued"/>- </else-if>- <else-if type="manuscript thesis speech" match="any">- <group delimiter=", " prefix="(" suffix=")">- <choose>- <if variable="title" match="any">- <text variable="genre"/>- </if>- </choose>- <text variable="event"/>- <text variable="event-place"/>- <text variable="publisher"/>- <text macro="issued"/>- </group>- </else-if>- <else-if variable="publisher-place event-place publisher" match="any">- <group prefix="(" suffix=")" delimiter=", ">- <text macro="event-note"/>- <group delimiter="; ">- <text macro="originally-published"/>- <group delimiter=", ">- <text macro="reprint-note"/>- <text macro="publisher"/>- </group>- </group>- <text macro="issued"/>- </group>- </else-if>- <else>- <text macro="issued"/>- </else>- </choose>- </macro>- <macro name="issue-join-with-space">- <choose>- <if type="article-journal" match="any">- <choose>- <if variable="issue volume" match="any">- <text macro="issue"/>- </if>- </choose>- </if>- <else-if type="bill legislation legal_case" match="any">- <text macro="issue"/>- </else-if>- </choose>- </macro>- <macro name="issue-join-with-period">- <choose>- <if type="article-journal bill legislation legal_case" match="none">- <choose>- <if type="speech" variable="publisher publisher-place" match="any">- <text macro="issue"/>- </if>- </choose>- </if>- </choose>- </macro>- <macro name="issue-join-with-comma">- <choose>- <if type="bill legislation legal_case" match="none">- <choose>- <if type="article-journal" match="none">- <choose>- <if type="speech" variable="publisher publisher-place" match="none">- <text macro="issue"/>- </if>- </choose>- </if>- <else-if variable="volume issue" match="none">- <text macro="issue"/>- </else-if>- </choose>- </if>- </choose>- </macro>- <macro name="issue">- <choose>- <if type="bill legislation legal_case" match="any">- <text macro="issued" prefix="(" suffix=")"/>- </if>- <else-if type="article-journal">- <choose>- <if variable="issue volume" match="any">- <text macro="issued" prefix="(" suffix=")"/>- </if>- <else>- <text macro="issued"/>- </else>- </choose>- </else-if>- <else-if type="speech">- <group delimiter=", ">- <group delimiter=" ">- <choose>- <if variable="title" match="none"/>- <else>- <text variable="genre" text-case="capitalize-first"/>- </else>- </choose>- <text macro="event"/>- </group>- <text variable="event-place"/>- <text macro="issued"/>- </group>- </else-if>- <!--Chicago doesn't use publisher/place for Newspapers -->- <else-if type="article-newspaper">- <text macro="issued"/>- </else-if>- <else-if variable="publisher-place publisher" match="any">- <group delimiter=", ">- <choose>- <if type="thesis">- <text variable="genre" text-case="capitalize-first"/>- </if>- </choose>- <group delimiter=". ">- <text macro="originally-published"/>- <group delimiter=", ">- <text macro="reprint"/>- <text macro="publisher"/>- </group>- </group>- <text macro="issued"/>- </group>- </else-if>- <!--location for data for maps and artwork is different-->- <else-if type="graphic map" match="none">- <text macro="issued"/>- </else-if>- </choose>- </macro>- <macro name="access-note">- <group delimiter=", ">- <choose>- <if type="graphic report" match="any">- <text macro="archive-note"/>- </if>- <else-if type="article-journal bill book chapter legal_case legislation motion_picture paper-conference" match="none">- <text macro="archive-note"/>- </else-if>- </choose>- <choose>- <if variable="issued" match="none">- <group delimiter=" ">- <text term="accessed"/>- <date variable="accessed" form="text"/>- </group>- </if>- </choose>- <choose>- <if type="legal_case" match="none">- <choose>- <if variable="DOI">- <text variable="DOI" prefix="https://doi.org/"/>- </if>- <else>- <text variable="URL"/>- </else>- </choose>- </if>- </choose>- </group>- </macro>- <macro name="access">- <group delimiter=". ">- <choose>- <if type="graphic report" match="any">- <text macro="archive"/>- </if>- <else-if type="article-journal bill book chapter legal_case legislation motion_picture paper-conference" match="none">- <text macro="archive"/>- </else-if>- </choose>- <choose>- <if variable="issued" match="none">- <group delimiter=" ">- <text term="accessed" text-case="capitalize-first"/>- <date variable="accessed" form="text"/>- </group>- </if>- </choose>- <choose>- <if type="legal_case" match="none">- <choose>- <if variable="DOI">- <text variable="DOI" prefix="https://doi.org/"/>- </if>- <else>- <text variable="URL"/>- </else>- </choose>- </if>- </choose>- </group>- </macro>- <macro name="case-locator-subsequent">- <choose>- <if type="legal_case">- <group delimiter=" ">- <text variable="volume"/>- <text variable="container-title"/>- </group>- </if>- </choose>- </macro>- <macro name="case-pinpoint-subsequent">- <choose>- <if type="legal_case">- <group delimiter=" ">- <choose>- <if locator="page">- <text term="at"/>- <text variable="locator"/>- </if>- <else>- <label variable="locator"/>- <text variable="locator"/>- </else>- </choose>- </group>- </if>- </choose>- </macro>- <citation et-al-min="4" et-al-use-first="1" disambiguate-add-names="true">- <layout suffix="." delimiter="; ">- <choose>- <if position="ibid ibid-with-locator" match="any">- <group delimiter=", ">- <text macro="contributors-short"/>- <group delimiter=" ">- <group delimiter=", ">- <choose>- <if variable="author editor translator" match="none">- <text macro="title-short"/>- </if>- </choose>- <text macro="case-locator-subsequent"/>- </group>- <text macro="case-pinpoint-subsequent"/>- </group>- <choose>- <if match="none" type="legal_case">- <text macro="point-locators-subsequent"/>- </if>- </choose>- </group>- </if>- <else>- <group delimiter=", ">- <text macro="contributors-short"/>- <group delimiter=" ">- <group delimiter=", ">- <text macro="title-short"/>- <!--if title & author are the same: -->- <text macro="date-disambiguate"/>- <text macro="case-locator-subsequent"/>- </group>- <text macro="case-pinpoint-subsequent"/>- </group>- <choose>- <if match="none" type="legal_case">- <text macro="point-locators-subsequent"/>- </if>- </choose>- </group>- </else>- </choose>- </layout>- </citation>- <bibliography hanging-indent="true" et-al-min="11" et-al-use-first="7" subsequent-author-substitute="———" entry-spacing="0">- <sort>- <key macro="contributors-sort"/>- <key variable="title"/>- <key variable="genre"/>- <key variable="issued"/>- </sort>- <layout suffix=".">- <group delimiter=". ">- <group delimiter=": ">- <group delimiter=", ">- <group delimiter=" ">- <group delimiter=". ">- <group delimiter=" ">- <group delimiter=", ">- <group delimiter=". ">- <group delimiter=". ">- <text macro="contributors"/>- <text macro="title"/>- <text macro="issue-map-graphic"/>- </group>- <text macro="description"/>- <text macro="secondary-contributors"/>- <group delimiter=", ">- <text macro="container-title"/>- <text macro="container-contributors"/>- </group>- <text macro="locators-join-with-period"/>- </group>- <text macro="locators-join-with-comma"/>- <text macro="locators-chapter"/>- </group>- <text macro="locators-join-with-space"/>- </group>- <text macro="collection-title"/>- <text macro="issue-join-with-period"/>- </group>- <text macro="issue-join-with-space"/>- </group>- <text macro="issue-join-with-comma"/>- <text macro="locators-journal-join-with-comma"/>- <text macro="locators-newspaper"/>- </group>- <text macro="locators-journal-join-with-colon"/>- </group>- <text macro="access"/>- </group>- </layout>- </bibliography>-</style>-<<===== CSL =====<<-->>===== INPUT =====>>-[- {- "author": [- {- "family": "Doe",- "given": "John"- }- ],- "id": "doeA",- "title": "Title A",- "type": "book"- },- {- "author": [- {- "family": "Doe",- "given": "John"- }- ],- "id": "doeB",- "title": "Title B",- "type": "book"- }-]-<<===== INPUT =====<<--->>===== CITATIONS =====>>-[ {"citationItems": [{"id":"doeA"}],- "citationNoteNumber": 1},- {"citationItems": [{"id":"doeB"}],- "citationNoteNumber": 1},- {"citationItems": [{"id":"doeB"}],- "citationNoteNumber": 2}-]-<<===== CITATION-ITEMS =====<<-->>===== VERSION =====>>-1.0-<<===== VERSION =====<<-