>>===== MODE =====>>
bibliography
<<===== MODE =====<<

Test by Carles Pina.  Was throwing nesting mismatch
error to console in citeproc-js.

The "term-join" element is no longer present in citeproc-js,
as of release 1.0.150, but this test now also checks for
correct classification of elements with family name only
and the "isInstitution" flag as institutional authors
(which should trigger an "and" join, in citeproc-js).


In the default configuration (i.e. with spoof_institutional_affiliations="false"),
the "and" attribute on cs:institution (and="text" by default) has no effect.

>>===== RESULT =====>>
<div class="csl-bib-body">
  <div class="csl-entry">test01 &#38; test02,</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">
  <info>
    <title>Harvard Reference format 1 (Author-Date)</title>
    <id>http://www.zotero.org/styles/harvard1</id>
    <link href="http://www.zotero.org/styles/harvard1" rel="self"/>
    <author>
      <name>Julian Onions</name>
      <email>julian.onions@gmail.com</email>
    </author>
    <category citation-format="author-date"/>
    <category field="generic-base"/>
    <updated>2008-10-29T21:20:42+00:00</updated>
    <summary>The Harvard author-date style</summary>
    <link href="http://libweb.anglia.ac.uk/referencing/harvard.htm" rel="documentation"/>
  </info>
  <macro name="editor">
    <names variable="editor" delimiter=", ">
      <name and="symbol" initialize-with=". " delimiter=", "/>
      <label form="short" prefix=", " text-case="lowercase" suffix="." strip-periods="true"/>
    </names>
  </macro>
  <macro name="anon">
    <text term="anonymous" form="short" text-case="capitalize-first" strip-periods="true"/>
  </macro>
  <macro name="author">
    <names variable="author">
      <name name-as-sort-order="all" and="symbol" sort-separator=", " initialize-with="." delimiter-precedes-last="never" delimiter=", "/>
      <label form="short" prefix=" " suffix="." text-case="lowercase" strip-periods="true"/>
      <substitute>
        <names variable="editor"/>
        <text macro="anon"/>
      </substitute>
    </names>
  </macro>
  <macro name="author-short">
    <names variable="author">
      <name form="short" and="symbol" delimiter=", " delimiter-precedes-last="never" initialize-with=". "/>
      <substitute>
        <names variable="editor"/>
        <names variable="translator"/>
        <text macro="anon"/>
      </substitute>
    </names>
  </macro>
  <macro name="access">
    <group>
      <text value="Available at:" suffix=" "/>
      <text variable="URL"/>
      <group prefix=" [" suffix="]">
        <text term="accessed" text-case="capitalize-first" suffix=" "/>
        <date variable="accessed">
          <date-part name="month" suffix=" "/>
          <date-part name="day" suffix=", "/>
          <date-part name="year"/>
        </date>
      </group>
    </group>
  </macro>
  <macro name="title">
    <choose>
      <if type="bill book graphic legal_case motion_picture report song thesis" match="any">
        <text variable="title" font-style="italic"/>
      </if>
      <else>
        <text variable="title"/>
      </else>
    </choose>
  </macro>
  <macro name="publisher">
    <group delimiter=": ">
      <text variable="publisher-place"/>
      <text variable="publisher"/>
    </group>
  </macro>
  <macro name="year-date">
    <choose>
      <if variable="issued">
        <date variable="issued">
          <date-part name="year"/>
        </date>
      </if>
      <else>
        <text term="no date" form="short"/>
      </else>
    </choose>
  </macro>
  <macro name="edition">
    <choose>
      <if is-numeric="edition">
        <group delimiter=" ">
          <number variable="edition" form="ordinal"/>
          <text term="edition" form="short" suffix="." strip-periods="true"/>
        </group>
      </if>
      <else>
        <text variable="edition" suffix="."/>
      </else>
    </choose>
  </macro>
  <macro name="pages">
    <group>
      <label variable="page" form="short" suffix=" "/>
      <text variable="page"/>
    </group>
  </macro>
  <citation et-al-min="3" et-al-use-first="1" et-al-subsequent-min="3" et-al-subsequent-use-first="1" disambiguate-add-year-suffix="true" disambiguate-add-names="true" disambiguate-add-givenname="true">
    <layout prefix="(" suffix=")" delimiter="; ">
      <group delimiter=", ">
        <group delimiter=" ">
          <text macro="author-short"/>
          <text macro="year-date"/>
        </group>
        <group>
          <label variable="locator" suffix="." form="short" strip-periods="true"/>
          <text variable="locator"/>
        </group>
      </group>
    </layout>
  </citation>
  <bibliography hanging-indent="true" et-al-min="4" et-al-use-first="1">
    <sort>
      <key macro="author"/>
      <key variable="title"/>
    </sort>
    <layout>
      <text macro="author" suffix=","/>
      <date variable="issued" prefix=" " suffix=".">
        <date-part name="year"/>
      </date>
      <choose>
        <if type="bill book graphic legal_case motion_picture report song" match="any">
          <group prefix=" " delimiter=" " suffix=",">
            <text macro="title"/>
            <text macro="edition"/>
            <text macro="editor"/>
          </group>
          <text prefix=" " suffix="." macro="publisher"/>
        </if>
        <else-if type="chapter paper-conference" match="any">
          <text macro="title" prefix=" " suffix="."/>
          <group prefix=" " delimiter=" ">
            <text term="in" text-case="capitalize-first"/>
            <text macro="editor"/>
            <text variable="container-title" font-style="italic" suffix="."/>
            <text variable="collection-title" suffix="."/>
            <group suffix="." delimiter=", ">
              <text macro="publisher" prefix=" "/>
              <text macro="pages"/>
            </group>
          </group>
        </else-if>
        <else-if type="thesis">
          <group prefix=" " suffix="." delimiter=". ">
            <text macro="title"/>
            <text variable="genre"/>
            <text macro="publisher"/>
          </group>
        </else-if>
        <else>
          <group suffix=".">
            <text macro="title" prefix=" "/>
            <text macro="editor" prefix=" "/>
          </group>
          <group prefix=" " suffix=".">
            <text variable="container-title" font-style="italic"/>
            <group prefix=", ">
              <text variable="volume"/>
              <text variable="issue" prefix="(" suffix=")"/>
            </group>
            <group prefix=", ">
              <label variable="page" suffix="." form="short" strip-periods="true"/>
              <text variable="page"/>
            </group>
          </group>
        </else>
      </choose>
      <text prefix=" " macro="access" suffix="."/>
    </layout>
  </bibliography>
</style>

<<===== CSL =====<<

>>===== INPUT =====>>
[
    {
        "author": [
            {
                "family": "test01", 
                "given": "", 
                "isInstitution": true
            }, 
            {
                "family": "test02", 
                "given": "", 
                "isInstitution": true
            }
        ], 
        "id": "ITEM-1", 
        "type": "article-journal"
    }
]
<<====== INPUT =====<<
