<?xml version="1.0" encoding="UTF-8"?>
<!-- The CiteStyle XML DTD - describes the citation style of a journal -->
<!-- (C) 2000 Markus Hoenicka <markus@mhoenicka.de> -->
<!-- suggested invocation: -->
<!-- <!DOCTYPE CITESTYLE PUBLIC "-//Markus Hoenicka//DTD CiteStyle V1.8//EN" "http://refdb.sourceforge.net/dtd/citestylex-1.8/citestylex.dtd"> -->
<grammar xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" xmlns="http://relaxng.org/ns/structure/1.0">
  <define name="STYLESET">
    <element name="STYLESET">
      <ref name="attlist.STYLESET"/>
      <oneOrMore>
        <ref name="CITESTYLE"/>
      </oneOrMore>
    </element>
  </define>
  <define name="attlist.STYLESET" combine="interleave">
    <empty/>
  </define>
  <define name="CITESTYLE">
    <element name="CITESTYLE">
      <ref name="attlist.CITESTYLE"/>
      <ref name="STYLENAME"/>
      <optional>
        <ref name="AUTHOR"/>
      </optional>
      <optional>
        <ref name="COMMENT"/>
      </optional>
      <optional>
        <ref name="URL"/>
      </optional>
      <ref name="REFSTYLE"/>
      <ref name="CITSTYLE"/>
      <ref name="BIBSTYLE"/>
    </element>
  </define>
  <define name="attlist.CITESTYLE" combine="interleave">
    <empty/>
  </define>
  <define name="STYLENAME">
    <element name="STYLENAME">
      <ref name="attlist.STYLENAME"/>
      <text/>
    </element>
  </define>
  <define name="attlist.STYLENAME" combine="interleave">
    <empty/>
  </define>
  <define name="REFSTYLE">
    <element name="REFSTYLE">
      <ref name="attlist.REFSTYLE"/>
      <oneOrMore>
        <ref name="PUBTYPE"/>
      </oneOrMore>
    </element>
  </define>
  <define name="attlist.REFSTYLE" combine="interleave">
    <empty/>
  </define>
  <define name="PUBTYPE">
    <element name="PUBTYPE">
      <ref name="attlist.PUBTYPE"/>
      <oneOrMore>
        <choice>
          <ref name="REFNUMBER"/>
          <ref name="CITEKEY"/>
          <ref name="AUTHORLIST"/>
          <ref name="PUBDATE"/>
          <ref name="TITLE"/>
          <ref name="JOURNALNAME"/>
          <ref name="VOLUME"/>
          <ref name="ISSUE"/>
          <ref name="PAGES"/>
          <ref name="PUBLISHER"/>
          <ref name="PUBPLACE"/>
          <ref name="SERIAL"/>
          <ref name="ADDRESS"/>
          <ref name="USERDEF"/>
          <ref name="NOTES"/>
          <ref name="ABSTRACT"/>
          <ref name="LINK"/>
          <ref name="TYPEOFWORK"/>
          <ref name="AREA"/>
          <ref name="OSTYPE"/>
          <ref name="DEGREE"/>
          <ref name="RUNNINGTIME"/>
          <ref name="CLASSCODEINTL"/>
          <ref name="CLASSCODEUS"/>
          <ref name="SENDEREMAIL"/>
          <ref name="RECIPIENTEMAIL"/>
          <ref name="MEDIATYPE"/>
          <ref name="NUMVOLUMES"/>
          <ref name="EDITION"/>
          <ref name="COMPUTER"/>
          <ref name="CONFERENCELOCATION"/>
          <ref name="REGISTRYNUM"/>
          <ref name="CLASSIFICATION"/>
          <ref name="SECTION"/>
          <ref name="PAMPHLETNUM"/>
          <ref name="CHAPTERNUM"/>
        </choice>
        <optional>
          <ref name="SEPARATOR"/>
        </optional>
      </oneOrMore>
    </element>
  </define>
  <define name="attlist.PUBTYPE" combine="interleave">
    <attribute name="TYPE">
      <choice>
        <value>ABST</value>
        <value>ADVS</value>
        <value>ART</value>
        <value>BILL</value>
        <value>BOOK</value>
        <value>CASE</value>
        <value>CHAP</value>
        <value>COMP</value>
        <value>CONF</value>
        <value>CTLG</value>
        <value>DATA</value>
        <value>ELEC</value>
        <value>GEN</value>
        <value>ICOMM</value>
        <value>INPR</value>
        <value>JFULL</value>
        <value>JOUR</value>
        <value>MAP</value>
        <value>MGZN</value>
        <value>MPCT</value>
        <value>MUSIC</value>
        <value>NEWS</value>
        <value>PAMP</value>
        <value>PAT</value>
        <value>PCOMM</value>
        <value>RPRT</value>
        <value>SER</value>
        <value>SLIDE</value>
        <value>SOUND</value>
        <value>STAT</value>
        <value>THES</value>
        <value>UNBILL</value>
        <value>UNPB</value>
        <value>VIDEO</value>
      </choice>
    </attribute>
  </define>
  <define name="INTEXTDEF">
    <element name="INTEXTDEF">
      <ref name="attlist.INTEXTDEF"/>
      <oneOrMore>
        <choice>
          <ref name="REFNUMBER"/>
          <ref name="CITEKEY"/>
          <ref name="AUTHORLIST"/>
          <ref name="PUBDATE"/>
          <ref name="TITLE"/>
          <ref name="JOURNALNAME"/>
          <ref name="VOLUME"/>
          <ref name="ISSUE"/>
          <ref name="PAGES"/>
          <ref name="PUBLISHER"/>
          <ref name="PUBPLACE"/>
        </choice>
        <optional>
          <ref name="SEPARATOR"/>
        </optional>
      </oneOrMore>
    </element>
  </define>
  <define name="attlist.INTEXTDEF" combine="interleave">
    <empty/>
  </define>
  <define name="AUTHORONLY">
    <element name="AUTHORONLY">
      <ref name="attlist.AUTHORONLY"/>
      <oneOrMore>
        <choice>
          <ref name="REFNUMBER"/>
          <ref name="AUTHORLIST"/>
          <ref name="PUBDATE"/>
          <ref name="TITLE"/>
          <ref name="JOURNALNAME"/>
          <ref name="VOLUME"/>
          <ref name="ISSUE"/>
          <ref name="PAGES"/>
          <ref name="PUBLISHER"/>
          <ref name="PUBPLACE"/>
        </choice>
        <optional>
          <ref name="SEPARATOR"/>
        </optional>
      </oneOrMore>
    </element>
  </define>
  <define name="attlist.AUTHORONLY" combine="interleave">
    <empty/>
  </define>
  <define name="YEARONLY">
    <element name="YEARONLY">
      <ref name="attlist.YEARONLY"/>
      <oneOrMore>
        <choice>
          <ref name="REFNUMBER"/>
          <ref name="AUTHORLIST"/>
          <ref name="PUBDATE"/>
          <ref name="TITLE"/>
          <ref name="JOURNALNAME"/>
          <ref name="VOLUME"/>
          <ref name="ISSUE"/>
          <ref name="PAGES"/>
          <ref name="PUBLISHER"/>
          <ref name="PUBPLACE"/>
        </choice>
        <optional>
          <ref name="SEPARATOR"/>
        </optional>
      </oneOrMore>
    </element>
  </define>
  <define name="attlist.YEARONLY" combine="interleave">
    <empty/>
  </define>
  <define name="REFNUMBER">
    <element name="REFNUMBER">
      <ref name="attlist.REFNUMBER"/>
      <optional>
        <ref name="PRECEEDING"/>
      </optional>
      <optional>
        <ref name="FOLLOWING"/>
      </optional>
    </element>
  </define>
  <define name="attlist.REFNUMBER" combine="interleave">
    <optional>
      <attribute name="STYLE">
        <choice>
          <value>BOLD</value>
          <value>ITALIC</value>
          <value>BOLDITALIC</value>
          <value>SUPER</value>
          <value>SUB</value>
          <value>ULINE</value>
          <value>BOLDULINE</value>
          <value>ITULINE</value>
          <value>BOLDITULINE</value>
          <value>NONE</value>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="CITEKEY">
    <element name="CITEKEY">
      <ref name="attlist.CITEKEY"/>
      <optional>
        <ref name="PRECEEDING"/>
      </optional>
      <optional>
        <ref name="FOLLOWING"/>
      </optional>
    </element>
  </define>
  <define name="attlist.CITEKEY" combine="interleave">
    <optional>
      <attribute name="STYLE">
        <choice>
          <value>BOLD</value>
          <value>ITALIC</value>
          <value>BOLDITALIC</value>
          <value>SUPER</value>
          <value>SUB</value>
          <value>ULINE</value>
          <value>BOLDULINE</value>
          <value>ITULINE</value>
          <value>BOLDITULINE</value>
          <value>NONE</value>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="AUTHORLIST">
    <element name="AUTHORLIST">
      <ref name="attlist.AUTHORLIST"/>
      <optional>
        <ref name="PRECEEDING"/>
      </optional>
      <optional>
        <ref name="FOLLOWING"/>
      </optional>
      <optional>
        <ref name="ABBREVIATEFIRST"/>
      </optional>
      <optional>
        <ref name="ABBREVIATESUBSEQ"/>
      </optional>
      <optional>
        <ref name="AEMPTY"/>
      </optional>
      <optional>
        <ref name="ASAME"/>
      </optional>
      <ref name="AUTHORSEPS"/>
      <ref name="AUTHORNAMES"/>
      <optional>
        <ref name="TEXT"/>
      </optional>
      <optional>
        <ref name="TEXTED"/>
      </optional>
    </element>
  </define>
  <define name="attlist.AUTHORLIST" combine="interleave">
    <optional>
      <attribute name="STYLE">
        <choice>
          <value>BOLD</value>
          <value>ITALIC</value>
          <value>BOLDITALIC</value>
          <value>SUPER</value>
          <value>SUB</value>
          <value>ULINE</value>
          <value>BOLDULINE</value>
          <value>ITULINE</value>
          <value>BOLDITULINE</value>
          <value>NONE</value>
        </choice>
      </attribute>
    </optional>
    <optional>
      <attribute name="ALTERNATESTYLE">
        <choice>
          <value>ABOLD</value>
          <value>AITALIC</value>
          <value>ABOLDITALIC</value>
          <value>ASUPER</value>
          <value>ASUB</value>
          <value>AULINE</value>
          <value>ABOLDULINE</value>
          <value>AITULINE</value>
          <value>ABOLDITULINE</value>
          <value>NONE</value>
        </choice>
      </attribute>
    </optional>
    <optional>
      <attribute name="ALTERNATETEXT" a:defaultValue="AEMPTY">
        <choice>
          <value>AEMPTY</value>
          <value>TITLEPART</value>
          <value>TITLEPUB</value>
          <value>TITLESERIES</value>
          <value>TITLEALL</value>
          <value>JOURNALNAME</value>
          <value>NONE</value>
        </choice>
      </attribute>
    </optional>
    <optional>
      <attribute name="ROLE" a:defaultValue="PUB">
        <choice>
          <value>PART</value>
          <value>PUB</value>
          <value>SERIES</value>
          <value>ALL</value>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="ABBREVIATEFIRST">
    <element name="ABBREVIATEFIRST">
      <ref name="attlist.ABBREVIATEFIRST"/>
      <text/>
    </element>
  </define>
  <define name="ABBREVIATESUBSEQ">
    <element name="ABBREVIATESUBSEQ">
      <ref name="attlist.ABBREVIATESUBSEQ"/>
      <text/>
    </element>
  </define>
  <define name="attlist.ABBREVIATEFIRST" combine="interleave">
    <attribute name="MAXAUTHOR"/>
    <attribute name="DISPLAYAUTHOR"/>
    <optional>
      <attribute name="STYLE">
        <choice>
          <value>BOLD</value>
          <value>ITALIC</value>
          <value>BOLDITALIC</value>
          <value>SUPER</value>
          <value>SUB</value>
          <value>ULINE</value>
          <value>BOLDULINE</value>
          <value>ITULINE</value>
          <value>BOLDITULINE</value>
          <value>NONE</value>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="attlist.ABBREVIATESUBSEQ" combine="interleave">
    <attribute name="MAXAUTHOR"/>
    <attribute name="DISPLAYAUTHOR"/>
    <optional>
      <attribute name="STYLE">
        <choice>
          <value>BOLD</value>
          <value>ITALIC</value>
          <value>BOLDITALIC</value>
          <value>SUPER</value>
          <value>SUB</value>
          <value>ULINE</value>
          <value>BOLDULINE</value>
          <value>ITULINE</value>
          <value>BOLDITULINE</value>
          <value>NONE</value>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="AEMPTY">
    <element name="AEMPTY">
      <ref name="attlist.AEMPTY"/>
      <text/>
    </element>
  </define>
  <define name="attlist.AEMPTY" combine="interleave">
    <empty/>
  </define>
  <define name="ASAME">
    <element name="ASAME">
      <ref name="attlist.ASAME"/>
      <text/>
    </element>
  </define>
  <define name="attlist.ASAME" combine="interleave">
    <empty/>
  </define>
  <define name="AUTHORSEPS">
    <element name="AUTHORSEPS">
      <ref name="attlist.AUTHORSEPS"/>
      <ref name="TWOSEPS"/>
      <ref name="THREESEPS"/>
    </element>
  </define>
  <define name="attlist.AUTHORSEPS" combine="interleave">
    <empty/>
  </define>
  <define name="TWOSEPS">
    <element name="TWOSEPS">
      <ref name="attlist.TWOSEPS"/>
      <text/>
    </element>
  </define>
  <define name="attlist.TWOSEPS" combine="interleave">
    <empty/>
  </define>
  <define name="THREESEPS">
    <element name="THREESEPS">
      <ref name="attlist.THREESEPS"/>
      <ref name="THREESEPSEACH"/>
      <ref name="THREESEPSLAST"/>
    </element>
  </define>
  <define name="attlist.THREESEPS" combine="interleave">
    <empty/>
  </define>
  <define name="THREESEPSEACH">
    <element name="THREESEPSEACH">
      <ref name="attlist.THREESEPSEACH"/>
      <text/>
    </element>
  </define>
  <define name="attlist.THREESEPSEACH" combine="interleave">
    <empty/>
  </define>
  <define name="THREESEPSLAST">
    <element name="THREESEPSLAST">
      <ref name="attlist.THREESEPSLAST"/>
      <text/>
    </element>
  </define>
  <define name="attlist.THREESEPSLAST" combine="interleave">
    <empty/>
  </define>
  <define name="AUTHORNAMES">
    <element name="AUTHORNAMES">
      <ref name="attlist.AUTHORNAMES"/>
      <ref name="NAMEFIRST"/>
      <ref name="NAMEOTHER"/>
    </element>
  </define>
  <define name="attlist.AUTHORNAMES" combine="interleave">
    <empty/>
  </define>
  <define name="NAMEFIRST">
    <element name="NAMEFIRST">
      <ref name="attlist.NAMEFIRST"/>
      <empty/>
    </element>
  </define>
  <define name="NAMEOTHER">
    <element name="NAMEOTHER">
      <ref name="attlist.NAMEOTHER"/>
      <empty/>
    </element>
  </define>
  <define name="attlist.NAMEFIRST" combine="interleave">
    <optional>
      <attribute name="NAMEORDER" a:defaultValue="LASTFIRSTMIDDLE">
        <choice>
          <value>FIRSTMIDDLELAST</value>
          <value>LASTCOMMAFIRSTMIDDLE</value>
          <value>LASTCOMMASPCFIRSTMIDDLE</value>
          <value>LASTFIRSTMIDDLE</value>
          <value>LAST</value>
        </choice>
      </attribute>
    </optional>
    <optional>
      <attribute name="INITIALSTYLE" a:defaultValue="F.M.">
        <choice>
          <value>FIRSTSPCMIDDLE</value>
          <value>FIRSTSPCM.</value>
          <value>FIRSTSPCM</value>
          <value>F.SPCM.</value>
          <value>F.M.</value>
          <value>FSPCM</value>
          <value>FM</value>
        </choice>
      </attribute>
    </optional>
    <optional>
      <attribute name="UPPERCASE" a:defaultValue="NONE">
        <choice>
          <value>NONE</value>
          <value>LASTNAME</value>
          <value>ALL</value>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="attlist.NAMEOTHER" combine="interleave">
    <optional>
      <attribute name="NAMEORDER" a:defaultValue="LASTFIRSTMIDDLE">
        <choice>
          <value>FIRSTMIDDLELAST</value>
          <value>LASTCOMMAFIRSTMIDDLE</value>
          <value>LASTCOMMASPCFIRSTMIDDLE</value>
          <value>LASTFIRSTMIDDLE</value>
          <value>LAST</value>
        </choice>
      </attribute>
    </optional>
    <optional>
      <attribute name="INITIALSTYLE" a:defaultValue="F.M.">
        <choice>
          <value>FIRSTSPCMIDDLE</value>
          <value>FIRSTSPCM.</value>
          <value>FIRSTSPCM</value>
          <value>F.SPCM.</value>
          <value>F.M.</value>
          <value>FSPCM</value>
          <value>FM</value>
        </choice>
      </attribute>
    </optional>
    <optional>
      <attribute name="UPPERCASE" a:defaultValue="NONE">
        <choice>
          <value>NONE</value>
          <value>LASTNAME</value>
          <value>ALL</value>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="TEXT">
    <element name="TEXT">
      <ref name="attlist.TEXT"/>
      <optional>
        <ref name="TEXTSINGLE"/>
      </optional>
      <optional>
        <ref name="TEXTMULTIPLE"/>
      </optional>
    </element>
  </define>
  <define name="attlist.TEXT" combine="interleave">
    <empty/>
  </define>
  <define name="TEXTED">
    <element name="TEXTED">
      <ref name="attlist.TEXTED"/>
      <optional>
        <ref name="TEXTSINGLE"/>
      </optional>
      <optional>
        <ref name="TEXTMULTIPLE"/>
      </optional>
    </element>
  </define>
  <define name="attlist.TEXTED" combine="interleave">
    <empty/>
  </define>
  <define name="TEXTSINGLE">
    <element name="TEXTSINGLE">
      <ref name="attlist.TEXTSINGLE"/>
      <optional>
        <ref name="PRECEEDING"/>
      </optional>
      <optional>
        <ref name="FOLLOWING"/>
      </optional>
    </element>
  </define>
  <define name="attlist.TEXTSINGLE" combine="interleave">
    <empty/>
  </define>
  <define name="TEXTMULTIPLE">
    <element name="TEXTMULTIPLE">
      <ref name="attlist.TEXTMULTIPLE"/>
      <optional>
        <ref name="PRECEEDING"/>
      </optional>
      <optional>
        <ref name="FOLLOWING"/>
      </optional>
    </element>
  </define>
  <define name="attlist.TEXTMULTIPLE" combine="interleave">
    <empty/>
  </define>
  <define name="PRECEEDING">
    <element name="PRECEEDING">
      <ref name="attlist.PRECEEDING"/>
      <text/>
    </element>
  </define>
  <define name="attlist.PRECEEDING" combine="interleave">
    <empty/>
  </define>
  <define name="FOLLOWING">
    <element name="FOLLOWING">
      <ref name="attlist.FOLLOWING"/>
      <text/>
    </element>
  </define>
  <define name="attlist.FOLLOWING" combine="interleave">
    <empty/>
  </define>
  <define name="PUBDATE">
    <element name="PUBDATE">
      <ref name="attlist.PUBDATE"/>
      <optional>
        <ref name="PRECEEDING"/>
      </optional>
      <optional>
        <ref name="FOLLOWING"/>
      </optional>
      <optional>
        <ref name="FIRSTSEP"/>
      </optional>
      <optional>
        <ref name="SECONDSEP"/>
      </optional>
    </element>
  </define>
  <define name="attlist.PUBDATE" combine="interleave">
    <optional>
      <attribute name="FORMAT" a:defaultValue="YES">
        <choice>
          <value>YES</value>
          <value>NO</value>
        </choice>
      </attribute>
    </optional>
    <optional>
      <attribute name="SEQUENCE" a:defaultValue="Y">
        <choice>
          <value>MDY</value>
          <value>DMY</value>
          <value>YMD</value>
          <value>MY</value>
          <value>YM</value>
          <value>MD</value>
          <value>DM</value>
          <value>Y</value>
        </choice>
      </attribute>
    </optional>
    <optional>
      <attribute name="MONTHFORMAT" a:defaultValue="ARABICMONTH">
        <choice>
          <value>FULL</value>
          <value>ABBREVDOT</value>
          <value>THREELETTER</value>
          <value>ARABICMONTH</value>
          <value>ROMANMONTH</value>
        </choice>
      </attribute>
    </optional>
    <optional>
      <attribute name="DAYFORMAT" a:defaultValue="ARABICDAY">
        <choice>
          <value>ARABICDAY</value>
          <value>ROMANDAY</value>
        </choice>
      </attribute>
    </optional>
    <optional>
      <attribute name="YEARFORMAT" a:defaultValue="FOURDIGIT">
        <choice>
          <value>FOURDIGIT</value>
          <value>TWODIGIT</value>
          <value>ROMANYEAR</value>
        </choice>
      </attribute>
    </optional>
    <optional>
      <attribute name="PADLEADINGZERO" a:defaultValue="NN">
        <choice>
          <value>YY</value>
          <value>NN</value>
        </choice>
      </attribute>
    </optional>
    <optional>
      <attribute name="ROLE" a:defaultValue="PRIMARY">
        <choice>
          <value>PRIMARY</value>
          <value>SECONDARY</value>
          <value>ALL</value>
        </choice>
      </attribute>
    </optional>
    <optional>
      <attribute name="STYLE">
        <choice>
          <value>BOLD</value>
          <value>ITALIC</value>
          <value>BOLDITALIC</value>
          <value>SUPER</value>
          <value>SUB</value>
          <value>ULINE</value>
          <value>BOLDULINE</value>
          <value>ITULINE</value>
          <value>BOLDITULINE</value>
          <value>NONE</value>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="FIRSTSEP">
    <element name="FIRSTSEP">
      <ref name="attlist.FIRSTSEP"/>
      <text/>
    </element>
  </define>
  <define name="attlist.FIRSTSEP" combine="interleave">
    <empty/>
  </define>
  <define name="SECONDSEP">
    <element name="SECONDSEP">
      <ref name="attlist.SECONDSEP"/>
      <text/>
    </element>
  </define>
  <define name="attlist.SECONDSEP" combine="interleave">
    <empty/>
  </define>
  <define name="TITLE">
    <element name="TITLE">
      <ref name="attlist.TITLE"/>
      <optional>
        <ref name="PRECEEDING"/>
      </optional>
      <optional>
        <ref name="FOLLOWING"/>
      </optional>
    </element>
  </define>
  <define name="attlist.TITLE" combine="interleave">
    <optional>
      <attribute name="CASE" a:defaultValue="ASIS">
        <choice>
          <value>ASIS</value>
          <value>UPPER</value>
          <value>LOWER</value>
          <value>ICAPS</value>
        </choice>
      </attribute>
    </optional>
    <optional>
      <attribute name="STYLE">
        <choice>
          <value>BOLD</value>
          <value>ITALIC</value>
          <value>BOLDITALIC</value>
          <value>SUPER</value>
          <value>SUB</value>
          <value>ULINE</value>
          <value>BOLDULINE</value>
          <value>ITULINE</value>
          <value>BOLDITULINE</value>
          <value>NONE</value>
        </choice>
      </attribute>
    </optional>
    <optional>
      <attribute name="MAXTITLE"/>
    </optional>
    <optional>
      <attribute name="ROLE" a:defaultValue="PUB">
        <choice>
          <value>PART</value>
          <value>PUB</value>
          <value>SERIES</value>
          <value>ALL</value>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="JOURNALNAME">
    <element name="JOURNALNAME">
      <ref name="attlist.JOURNALNAME"/>
      <optional>
        <ref name="PRECEEDING"/>
      </optional>
      <optional>
        <ref name="FOLLOWING"/>
      </optional>
    </element>
  </define>
  <define name="attlist.JOURNALNAME" combine="interleave">
    <optional>
      <attribute name="CASE" a:defaultValue="ASIS">
        <choice>
          <value>ASIS</value>
          <value>UPPER</value>
          <value>LOWER</value>
          <value>ICAPS</value>
        </choice>
      </attribute>
    </optional>
    <optional>
      <attribute name="DEFAULTTEXT" a:defaultValue="ABBREV">
        <choice>
          <value>ABBREV</value>
          <value>FULL</value>
          <value>USERONE</value>
          <value>USERTWO</value>
        </choice>
      </attribute>
    </optional>
    <optional>
      <attribute name="ALTERNATETEXT" a:defaultValue="AFULL">
        <choice>
          <value>AABBREV</value>
          <value>AFULL</value>
          <value>AUSERONE</value>
          <value>AUSERTWO</value>
        </choice>
      </attribute>
    </optional>
    <optional>
      <attribute name="PUNCTUATION" a:defaultValue="SPACE">
        <choice>
          <value>SPACE</value>
          <value>PERIOD</value>
          <value>PERIODSPACE</value>
        </choice>
      </attribute>
    </optional>
    <optional>
      <attribute name="STYLE">
        <choice>
          <value>BOLD</value>
          <value>ITALIC</value>
          <value>BOLDITALIC</value>
          <value>SUPER</value>
          <value>SUB</value>
          <value>ULINE</value>
          <value>BOLDULINE</value>
          <value>ITULINE</value>
          <value>BOLDITULINE</value>
          <value>NONE</value>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="VOLUME">
    <element name="VOLUME">
      <ref name="attlist.VOLUME"/>
      <optional>
        <ref name="PRECEEDING"/>
      </optional>
      <optional>
        <ref name="FOLLOWING"/>
      </optional>
    </element>
  </define>
  <define name="attlist.VOLUME" combine="interleave">
    <optional>
      <attribute name="STYLE">
        <choice>
          <value>BOLD</value>
          <value>ITALIC</value>
          <value>BOLDITALIC</value>
          <value>SUPER</value>
          <value>SUB</value>
          <value>ULINE</value>
          <value>BOLDULINE</value>
          <value>ITULINE</value>
          <value>BOLDITULINE</value>
          <value>NONE</value>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="ISSUE">
    <element name="ISSUE">
      <ref name="attlist.ISSUE"/>
      <optional>
        <ref name="PRECEEDING"/>
      </optional>
      <optional>
        <ref name="FOLLOWING"/>
      </optional>
    </element>
  </define>
  <define name="attlist.ISSUE" combine="interleave">
    <optional>
      <attribute name="STYLE">
        <choice>
          <value>BOLD</value>
          <value>ITALIC</value>
          <value>BOLDITALIC</value>
          <value>SUPER</value>
          <value>SUB</value>
          <value>ULINE</value>
          <value>BOLDULINE</value>
          <value>ITULINE</value>
          <value>BOLDITULINE</value>
          <value>NONE</value>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="PAGES">
    <element name="PAGES">
      <ref name="attlist.PAGES"/>
      <optional>
        <ref name="PRECEEDING"/>
      </optional>
      <optional>
        <ref name="FOLLOWING"/>
      </optional>
      <optional>
        <ref name="SINGLEPAGE"/>
      </optional>
      <optional>
        <ref name="PAGERANGE"/>
      </optional>
    </element>
  </define>
  <define name="attlist.PAGES" combine="interleave">
    <optional>
      <attribute name="STYLE">
        <choice>
          <value>BOLD</value>
          <value>ITALIC</value>
          <value>BOLDITALIC</value>
          <value>SUPER</value>
          <value>SUB</value>
          <value>ULINE</value>
          <value>BOLDULINE</value>
          <value>ITULINE</value>
          <value>BOLDITULINE</value>
          <value>NONE</value>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="SINGLEPAGE">
    <element name="SINGLEPAGE">
      <ref name="attlist.SINGLEPAGE"/>
      <optional>
        <ref name="PRECEEDING"/>
      </optional>
      <optional>
        <ref name="FOLLOWING"/>
      </optional>
    </element>
  </define>
  <define name="attlist.SINGLEPAGE" combine="interleave">
    <empty/>
  </define>
  <define name="PAGERANGE">
    <element name="PAGERANGE">
      <ref name="attlist.PAGERANGE"/>
      <optional>
        <ref name="PRECEEDING"/>
      </optional>
      <optional>
        <ref name="RANGESEPARATOR"/>
      </optional>
      <optional>
        <ref name="FOLLOWING"/>
      </optional>
    </element>
  </define>
  <define name="attlist.PAGERANGE" combine="interleave">
    <optional>
      <attribute name="TYPE" a:defaultValue="FULL">
        <choice>
          <value>FULL</value>
          <value>ABBREV</value>
          <value>CHICAGO</value>
          <value>TWODIGIT</value>
          <value>STARTONLY</value>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="RANGESEPARATOR">
    <element name="RANGESEPARATOR">
      <ref name="attlist.RANGESEPARATOR"/>
      <text/>
    </element>
  </define>
  <define name="attlist.RANGESEPARATOR" combine="interleave">
    <empty/>
  </define>
  <define name="PUBLISHER">
    <element name="PUBLISHER">
      <ref name="attlist.PUBLISHER"/>
      <optional>
        <ref name="PRECEEDING"/>
      </optional>
      <optional>
        <ref name="FOLLOWING"/>
      </optional>
    </element>
  </define>
  <define name="attlist.PUBLISHER" combine="interleave">
    <optional>
      <attribute name="STYLE">
        <choice>
          <value>BOLD</value>
          <value>ITALIC</value>
          <value>BOLDITALIC</value>
          <value>SUPER</value>
          <value>SUB</value>
          <value>ULINE</value>
          <value>BOLDULINE</value>
          <value>ITULINE</value>
          <value>BOLDITULINE</value>
          <value>NONE</value>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="PUBPLACE">
    <element name="PUBPLACE">
      <ref name="attlist.PUBPLACE"/>
      <optional>
        <ref name="PRECEEDING"/>
      </optional>
      <optional>
        <ref name="FOLLOWING"/>
      </optional>
    </element>
  </define>
  <define name="attlist.PUBPLACE" combine="interleave">
    <optional>
      <attribute name="STYLE">
        <choice>
          <value>BOLD</value>
          <value>ITALIC</value>
          <value>BOLDITALIC</value>
          <value>SUPER</value>
          <value>SUB</value>
          <value>ULINE</value>
          <value>BOLDULINE</value>
          <value>ITULINE</value>
          <value>BOLDITULINE</value>
          <value>NONE</value>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="SERIAL">
    <element name="SERIAL">
      <ref name="attlist.SERIAL"/>
      <optional>
        <ref name="PRECEEDING"/>
      </optional>
      <optional>
        <ref name="FOLLOWING"/>
      </optional>
    </element>
  </define>
  <define name="attlist.SERIAL" combine="interleave">
    <optional>
      <attribute name="STYLE">
        <choice>
          <value>BOLD</value>
          <value>ITALIC</value>
          <value>BOLDITALIC</value>
          <value>SUPER</value>
          <value>SUB</value>
          <value>ULINE</value>
          <value>BOLDULINE</value>
          <value>ITULINE</value>
          <value>BOLDITULINE</value>
          <value>NONE</value>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="ADDRESS">
    <element name="ADDRESS">
      <ref name="attlist.ADDRESS"/>
      <optional>
        <ref name="PRECEEDING"/>
      </optional>
      <optional>
        <ref name="FOLLOWING"/>
      </optional>
    </element>
  </define>
  <define name="attlist.ADDRESS" combine="interleave">
    <optional>
      <attribute name="STYLE">
        <choice>
          <value>BOLD</value>
          <value>ITALIC</value>
          <value>BOLDITALIC</value>
          <value>SUPER</value>
          <value>SUB</value>
          <value>ULINE</value>
          <value>BOLDULINE</value>
          <value>ITULINE</value>
          <value>BOLDITULINE</value>
          <value>NONE</value>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="USERDEF">
    <element name="USERDEF">
      <ref name="attlist.USERDEF"/>
      <optional>
        <ref name="PRECEEDING"/>
      </optional>
      <optional>
        <ref name="FOLLOWING"/>
      </optional>
    </element>
  </define>
  <define name="attlist.USERDEF" combine="interleave">
    <optional>
      <attribute name="STYLE">
        <choice>
          <value>BOLD</value>
          <value>ITALIC</value>
          <value>BOLDITALIC</value>
          <value>SUPER</value>
          <value>SUB</value>
          <value>ULINE</value>
          <value>BOLDULINE</value>
          <value>ITULINE</value>
          <value>BOLDITULINE</value>
          <value>NONE</value>
        </choice>
      </attribute>
    </optional>
    <optional>
      <attribute name="ROLE" a:defaultValue="1">
        <choice>
          <value>1</value>
          <value>2</value>
          <value>3</value>
          <value>4</value>
          <value>5</value>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="NOTES">
    <element name="NOTES">
      <ref name="attlist.NOTES"/>
      <optional>
        <ref name="PRECEEDING"/>
      </optional>
      <optional>
        <ref name="FOLLOWING"/>
      </optional>
    </element>
  </define>
  <define name="attlist.NOTES" combine="interleave">
    <optional>
      <attribute name="STYLE">
        <choice>
          <value>BOLD</value>
          <value>ITALIC</value>
          <value>BOLDITALIC</value>
          <value>SUPER</value>
          <value>SUB</value>
          <value>ULINE</value>
          <value>BOLDULINE</value>
          <value>ITULINE</value>
          <value>BOLDITULINE</value>
          <value>NONE</value>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="ABSTRACT">
    <element name="ABSTRACT">
      <ref name="attlist.ABSTRACT"/>
      <optional>
        <ref name="PRECEEDING"/>
      </optional>
      <optional>
        <ref name="FOLLOWING"/>
      </optional>
    </element>
  </define>
  <define name="attlist.ABSTRACT" combine="interleave">
    <optional>
      <attribute name="STYLE">
        <choice>
          <value>BOLD</value>
          <value>ITALIC</value>
          <value>BOLDITALIC</value>
          <value>SUPER</value>
          <value>SUB</value>
          <value>ULINE</value>
          <value>BOLDULINE</value>
          <value>ITULINE</value>
          <value>BOLDITULINE</value>
          <value>NONE</value>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="LINK">
    <element name="LINK">
      <ref name="attlist.LINK"/>
      <optional>
        <ref name="PRECEEDING"/>
      </optional>
      <optional>
        <ref name="FOLLOWING"/>
      </optional>
    </element>
  </define>
  <define name="attlist.LINK" combine="interleave">
    <optional>
      <attribute name="STYLE">
        <choice>
          <value>BOLD</value>
          <value>ITALIC</value>
          <value>BOLDITALIC</value>
          <value>SUPER</value>
          <value>SUB</value>
          <value>ULINE</value>
          <value>BOLDULINE</value>
          <value>ITULINE</value>
          <value>BOLDITULINE</value>
          <value>NONE</value>
        </choice>
      </attribute>
    </optional>
    <optional>
      <attribute name="ROLE" a:defaultValue="0">
        <choice>
          <value>0</value>
          <value>1</value>
          <value>2</value>
          <value>3</value>
          <value>4</value>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="TYPEOFWORK">
    <element name="TYPEOFWORK">
      <ref name="attlist.TYPEOFWORK"/>
      <optional>
        <ref name="PRECEEDING"/>
      </optional>
      <optional>
        <ref name="FOLLOWING"/>
      </optional>
    </element>
  </define>
  <define name="attlist.TYPEOFWORK" combine="interleave">
    <optional>
      <attribute name="STYLE">
        <choice>
          <value>BOLD</value>
          <value>ITALIC</value>
          <value>BOLDITALIC</value>
          <value>SUPER</value>
          <value>SUB</value>
          <value>ULINE</value>
          <value>BOLDULINE</value>
          <value>ITULINE</value>
          <value>BOLDITULINE</value>
          <value>NONE</value>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="AREA">
    <element name="AREA">
      <ref name="attlist.AREA"/>
      <optional>
        <ref name="PRECEEDING"/>
      </optional>
      <optional>
        <ref name="FOLLOWING"/>
      </optional>
    </element>
  </define>
  <define name="attlist.AREA" combine="interleave">
    <optional>
      <attribute name="STYLE">
        <choice>
          <value>BOLD</value>
          <value>ITALIC</value>
          <value>BOLDITALIC</value>
          <value>SUPER</value>
          <value>SUB</value>
          <value>ULINE</value>
          <value>BOLDULINE</value>
          <value>ITULINE</value>
          <value>BOLDITULINE</value>
          <value>NONE</value>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="OSTYPE">
    <element name="OSTYPE">
      <ref name="attlist.OSTYPE"/>
      <optional>
        <ref name="PRECEEDING"/>
      </optional>
      <optional>
        <ref name="FOLLOWING"/>
      </optional>
    </element>
  </define>
  <define name="attlist.OSTYPE" combine="interleave">
    <optional>
      <attribute name="STYLE">
        <choice>
          <value>BOLD</value>
          <value>ITALIC</value>
          <value>BOLDITALIC</value>
          <value>SUPER</value>
          <value>SUB</value>
          <value>ULINE</value>
          <value>BOLDULINE</value>
          <value>ITULINE</value>
          <value>BOLDITULINE</value>
          <value>NONE</value>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="DEGREE">
    <element name="DEGREE">
      <ref name="attlist.DEGREE"/>
      <optional>
        <ref name="PRECEEDING"/>
      </optional>
      <optional>
        <ref name="FOLLOWING"/>
      </optional>
    </element>
  </define>
  <define name="attlist.DEGREE" combine="interleave">
    <optional>
      <attribute name="STYLE">
        <choice>
          <value>BOLD</value>
          <value>ITALIC</value>
          <value>BOLDITALIC</value>
          <value>SUPER</value>
          <value>SUB</value>
          <value>ULINE</value>
          <value>BOLDULINE</value>
          <value>ITULINE</value>
          <value>BOLDITULINE</value>
          <value>NONE</value>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="RUNNINGTIME">
    <element name="RUNNINGTIME">
      <ref name="attlist.RUNNINGTIME"/>
      <optional>
        <ref name="PRECEEDING"/>
      </optional>
      <optional>
        <ref name="FOLLOWING"/>
      </optional>
    </element>
  </define>
  <define name="attlist.RUNNINGTIME" combine="interleave">
    <optional>
      <attribute name="STYLE">
        <choice>
          <value>BOLD</value>
          <value>ITALIC</value>
          <value>BOLDITALIC</value>
          <value>SUPER</value>
          <value>SUB</value>
          <value>ULINE</value>
          <value>BOLDULINE</value>
          <value>ITULINE</value>
          <value>BOLDITULINE</value>
          <value>NONE</value>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="CLASSCODEINTL">
    <element name="CLASSCODEINTL">
      <ref name="attlist.CLASSCODEINTL"/>
      <optional>
        <ref name="PRECEEDING"/>
      </optional>
      <optional>
        <ref name="FOLLOWING"/>
      </optional>
    </element>
  </define>
  <define name="attlist.CLASSCODEINTL" combine="interleave">
    <optional>
      <attribute name="STYLE">
        <choice>
          <value>BOLD</value>
          <value>ITALIC</value>
          <value>BOLDITALIC</value>
          <value>SUPER</value>
          <value>SUB</value>
          <value>ULINE</value>
          <value>BOLDULINE</value>
          <value>ITULINE</value>
          <value>BOLDITULINE</value>
          <value>NONE</value>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="CLASSCODEUS">
    <element name="CLASSCODEUS">
      <ref name="attlist.CLASSCODEUS"/>
      <optional>
        <ref name="PRECEEDING"/>
      </optional>
      <optional>
        <ref name="FOLLOWING"/>
      </optional>
    </element>
  </define>
  <define name="attlist.CLASSCODEUS" combine="interleave">
    <optional>
      <attribute name="STYLE">
        <choice>
          <value>BOLD</value>
          <value>ITALIC</value>
          <value>BOLDITALIC</value>
          <value>SUPER</value>
          <value>SUB</value>
          <value>ULINE</value>
          <value>BOLDULINE</value>
          <value>ITULINE</value>
          <value>BOLDITULINE</value>
          <value>NONE</value>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="SENDEREMAIL">
    <element name="SENDEREMAIL">
      <ref name="attlist.SENDEREMAIL"/>
      <optional>
        <ref name="PRECEEDING"/>
      </optional>
      <optional>
        <ref name="FOLLOWING"/>
      </optional>
    </element>
  </define>
  <define name="attlist.SENDEREMAIL" combine="interleave">
    <optional>
      <attribute name="STYLE">
        <choice>
          <value>BOLD</value>
          <value>ITALIC</value>
          <value>BOLDITALIC</value>
          <value>SUPER</value>
          <value>SUB</value>
          <value>ULINE</value>
          <value>BOLDULINE</value>
          <value>ITULINE</value>
          <value>BOLDITULINE</value>
          <value>NONE</value>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="RECIPIENTEMAIL">
    <element name="RECIPIENTEMAIL">
      <ref name="attlist.RECIPIENTEMAIL"/>
      <optional>
        <ref name="PRECEEDING"/>
      </optional>
      <optional>
        <ref name="FOLLOWING"/>
      </optional>
    </element>
  </define>
  <define name="attlist.RECIPIENTEMAIL" combine="interleave">
    <optional>
      <attribute name="STYLE">
        <choice>
          <value>BOLD</value>
          <value>ITALIC</value>
          <value>BOLDITALIC</value>
          <value>SUPER</value>
          <value>SUB</value>
          <value>ULINE</value>
          <value>BOLDULINE</value>
          <value>ITULINE</value>
          <value>BOLDITULINE</value>
          <value>NONE</value>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="MEDIATYPE">
    <element name="MEDIATYPE">
      <ref name="attlist.MEDIATYPE"/>
      <optional>
        <ref name="PRECEEDING"/>
      </optional>
      <optional>
        <ref name="FOLLOWING"/>
      </optional>
    </element>
  </define>
  <define name="attlist.MEDIATYPE" combine="interleave">
    <optional>
      <attribute name="STYLE">
        <choice>
          <value>BOLD</value>
          <value>ITALIC</value>
          <value>BOLDITALIC</value>
          <value>SUPER</value>
          <value>SUB</value>
          <value>ULINE</value>
          <value>BOLDULINE</value>
          <value>ITULINE</value>
          <value>BOLDITULINE</value>
          <value>NONE</value>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="NUMVOLUMES">
    <element name="NUMVOLUMES">
      <ref name="attlist.NUMVOLUMES"/>
      <optional>
        <ref name="PRECEEDING"/>
      </optional>
      <optional>
        <ref name="FOLLOWING"/>
      </optional>
    </element>
  </define>
  <define name="attlist.NUMVOLUMES" combine="interleave">
    <optional>
      <attribute name="STYLE">
        <choice>
          <value>BOLD</value>
          <value>ITALIC</value>
          <value>BOLDITALIC</value>
          <value>SUPER</value>
          <value>SUB</value>
          <value>ULINE</value>
          <value>BOLDULINE</value>
          <value>ITULINE</value>
          <value>BOLDITULINE</value>
          <value>NONE</value>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="EDITION">
    <element name="EDITION">
      <ref name="attlist.EDITION"/>
      <optional>
        <ref name="PRECEEDING"/>
      </optional>
      <optional>
        <ref name="FOLLOWING"/>
      </optional>
    </element>
  </define>
  <define name="attlist.EDITION" combine="interleave">
    <optional>
      <attribute name="STYLE">
        <choice>
          <value>BOLD</value>
          <value>ITALIC</value>
          <value>BOLDITALIC</value>
          <value>SUPER</value>
          <value>SUB</value>
          <value>ULINE</value>
          <value>BOLDULINE</value>
          <value>ITULINE</value>
          <value>BOLDITULINE</value>
          <value>NONE</value>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="COMPUTER">
    <element name="COMPUTER">
      <ref name="attlist.COMPUTER"/>
      <optional>
        <ref name="PRECEEDING"/>
      </optional>
      <optional>
        <ref name="FOLLOWING"/>
      </optional>
    </element>
  </define>
  <define name="attlist.COMPUTER" combine="interleave">
    <optional>
      <attribute name="STYLE">
        <choice>
          <value>BOLD</value>
          <value>ITALIC</value>
          <value>BOLDITALIC</value>
          <value>SUPER</value>
          <value>SUB</value>
          <value>ULINE</value>
          <value>BOLDULINE</value>
          <value>ITULINE</value>
          <value>BOLDITULINE</value>
          <value>NONE</value>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="CONFERENCELOCATION">
    <element name="CONFERENCELOCATION">
      <ref name="attlist.CONFERENCELOCATION"/>
      <optional>
        <ref name="PRECEEDING"/>
      </optional>
      <optional>
        <ref name="FOLLOWING"/>
      </optional>
    </element>
  </define>
  <define name="attlist.CONFERENCELOCATION" combine="interleave">
    <optional>
      <attribute name="STYLE">
        <choice>
          <value>BOLD</value>
          <value>ITALIC</value>
          <value>BOLDITALIC</value>
          <value>SUPER</value>
          <value>SUB</value>
          <value>ULINE</value>
          <value>BOLDULINE</value>
          <value>ITULINE</value>
          <value>BOLDITULINE</value>
          <value>NONE</value>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="REGISTRYNUM">
    <element name="REGISTRYNUM">
      <ref name="attlist.REGISTRYNUM"/>
      <optional>
        <ref name="PRECEEDING"/>
      </optional>
      <optional>
        <ref name="FOLLOWING"/>
      </optional>
    </element>
  </define>
  <define name="attlist.REGISTRYNUM" combine="interleave">
    <optional>
      <attribute name="STYLE">
        <choice>
          <value>BOLD</value>
          <value>ITALIC</value>
          <value>BOLDITALIC</value>
          <value>SUPER</value>
          <value>SUB</value>
          <value>ULINE</value>
          <value>BOLDULINE</value>
          <value>ITULINE</value>
          <value>BOLDITULINE</value>
          <value>NONE</value>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="CLASSIFICATION">
    <element name="CLASSIFICATION">
      <ref name="attlist.CLASSIFICATION"/>
      <optional>
        <ref name="PRECEEDING"/>
      </optional>
      <optional>
        <ref name="FOLLOWING"/>
      </optional>
    </element>
  </define>
  <define name="attlist.CLASSIFICATION" combine="interleave">
    <optional>
      <attribute name="STYLE">
        <choice>
          <value>BOLD</value>
          <value>ITALIC</value>
          <value>BOLDITALIC</value>
          <value>SUPER</value>
          <value>SUB</value>
          <value>ULINE</value>
          <value>BOLDULINE</value>
          <value>ITULINE</value>
          <value>BOLDITULINE</value>
          <value>NONE</value>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="SECTION">
    <element name="SECTION">
      <ref name="attlist.SECTION"/>
      <optional>
        <ref name="PRECEEDING"/>
      </optional>
      <optional>
        <ref name="FOLLOWING"/>
      </optional>
    </element>
  </define>
  <define name="attlist.SECTION" combine="interleave">
    <optional>
      <attribute name="STYLE">
        <choice>
          <value>BOLD</value>
          <value>ITALIC</value>
          <value>BOLDITALIC</value>
          <value>SUPER</value>
          <value>SUB</value>
          <value>ULINE</value>
          <value>BOLDULINE</value>
          <value>ITULINE</value>
          <value>BOLDITULINE</value>
          <value>NONE</value>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="PAMPHLETNUM">
    <element name="PAMPHLETNUM">
      <ref name="attlist.PAMPHLETNUM"/>
      <optional>
        <ref name="PRECEEDING"/>
      </optional>
      <optional>
        <ref name="FOLLOWING"/>
      </optional>
    </element>
  </define>
  <define name="attlist.PAMPHLETNUM" combine="interleave">
    <optional>
      <attribute name="STYLE">
        <choice>
          <value>BOLD</value>
          <value>ITALIC</value>
          <value>BOLDITALIC</value>
          <value>SUPER</value>
          <value>SUB</value>
          <value>ULINE</value>
          <value>BOLDULINE</value>
          <value>ITULINE</value>
          <value>BOLDITULINE</value>
          <value>NONE</value>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="CHAPTERNUM">
    <element name="CHAPTERNUM">
      <ref name="attlist.CHAPTERNUM"/>
      <optional>
        <ref name="PRECEEDING"/>
      </optional>
      <optional>
        <ref name="FOLLOWING"/>
      </optional>
    </element>
  </define>
  <define name="attlist.CHAPTERNUM" combine="interleave">
    <optional>
      <attribute name="STYLE">
        <choice>
          <value>BOLD</value>
          <value>ITALIC</value>
          <value>BOLDITALIC</value>
          <value>SUPER</value>
          <value>SUB</value>
          <value>ULINE</value>
          <value>BOLDULINE</value>
          <value>ITULINE</value>
          <value>BOLDITULINE</value>
          <value>NONE</value>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="SEPARATOR">
    <element name="SEPARATOR">
      <ref name="attlist.SEPARATOR"/>
      <text/>
    </element>
  </define>
  <define name="attlist.SEPARATOR" combine="interleave">
    <empty/>
  </define>
  <define name="CITSTYLE">
    <element name="CITSTYLE">
      <ref name="attlist.CITSTYLE"/>
      <optional>
        <ref name="PRECEEDING"/>
      </optional>
      <optional>
        <ref name="FOLLOWING"/>
      </optional>
      <ref name="CITSEPARATOR"/>
      <optional>
        <ref name="RANGESEPARATOR"/>
      </optional>
      <optional>
        <ref name="INTEXTDEF"/>
      </optional>
      <optional>
        <ref name="AUTHORONLY"/>
      </optional>
      <optional>
        <ref name="YEARONLY"/>
      </optional>
    </element>
  </define>
  <define name="attlist.CITSTYLE" combine="interleave">
    <optional>
      <attribute name="INTEXTSEQUENCE" a:defaultValue="AUTHORDATE">
        <choice>
          <value>ASIS</value>
          <value>AUTHORDATE</value>
          <value>CITEKEY</value>
          <value>DATEASC</value>
          <value>DATEDESC</value>
        </choice>
      </attribute>
    </optional>
    <optional>
      <attribute name="STYLE">
        <choice>
          <value>BOLD</value>
          <value>ITALIC</value>
          <value>BOLDITALIC</value>
          <value>SUPER</value>
          <value>SUB</value>
          <value>ULINE</value>
          <value>BOLDULINE</value>
          <value>ITULINE</value>
          <value>BOLDITULINE</value>
          <value>NONE</value>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="CITSEPARATOR">
    <element name="CITSEPARATOR">
      <ref name="attlist.CITSEPARATOR"/>
      <text/>
    </element>
  </define>
  <define name="attlist.CITSEPARATOR" combine="interleave">
    <empty/>
  </define>
  <define name="BIBSTYLE">
    <element name="BIBSTYLE">
      <ref name="attlist.BIBSTYLE"/>
      <optional>
        <ref name="BIBLIOTITLE"/>
      </optional>
      <optional>
        <ref name="MONTHS"/>
      </optional>
    </element>
  </define>
  <define name="attlist.BIBSTYLE" combine="interleave">
    <optional>
      <attribute name="BIBLIOSEQUENCE" a:defaultValue="BAUTHORDATE">
        <choice>
          <value>BASIS</value>
          <value>BAUTHORDATE</value>
          <value>BCITEKEY</value>
          <value>BDATEASC</value>
          <value>BDATEDESC</value>
        </choice>
      </attribute>
    </optional>
    <optional>
      <attribute name="BIBLIOFIRSTINDENT"/>
    </optional>
    <optional>
      <attribute name="BIBLIOBLOCKINDENT"/>
    </optional>
    <optional>
      <attribute name="FONTSIZE"/>
    </optional>
  </define>
  <define name="BIBLIOTITLE">
    <element name="BIBLIOTITLE">
      <ref name="attlist.BIBLIOTITLE"/>
      <text/>
    </element>
  </define>
  <define name="attlist.BIBLIOTITLE" combine="interleave">
    <empty/>
  </define>
  <define name="AUTHOR">
    <element name="AUTHOR">
      <ref name="attlist.AUTHOR"/>
      <text/>
    </element>
  </define>
  <define name="attlist.AUTHOR" combine="interleave">
    <empty/>
  </define>
  <define name="COMMENT">
    <element name="COMMENT">
      <ref name="attlist.COMMENT"/>
      <text/>
    </element>
  </define>
  <define name="attlist.COMMENT" combine="interleave">
    <empty/>
  </define>
  <define name="URL">
    <element name="URL">
      <ref name="attlist.URL"/>
      <text/>
    </element>
  </define>
  <define name="attlist.URL" combine="interleave">
    <empty/>
  </define>
  <define name="MONTHS">
    <element name="MONTHS">
      <ref name="attlist.MONTHS"/>
      <ref name="JAN"/>
      <ref name="FEB"/>
      <ref name="MAR"/>
      <ref name="APR"/>
      <ref name="MAY"/>
      <ref name="JUN"/>
      <ref name="JUL"/>
      <ref name="AUG"/>
      <ref name="SEP"/>
      <ref name="OCT"/>
      <ref name="NOV"/>
      <ref name="DEC"/>
    </element>
  </define>
  <define name="attlist.MONTHS" combine="interleave">
    <empty/>
  </define>
  <define name="JAN">
    <element name="JAN">
      <ref name="attlist.JAN"/>
      <empty/>
    </element>
  </define>
  <define name="attlist.JAN" combine="interleave">
    <optional>
      <attribute name="FULL"/>
    </optional>
    <optional>
      <attribute name="ABBREV"/>
    </optional>
    <optional>
      <attribute name="THREELET"/>
    </optional>
  </define>
  <define name="FEB">
    <element name="FEB">
      <ref name="attlist.FEB"/>
      <empty/>
    </element>
  </define>
  <define name="attlist.FEB" combine="interleave">
    <optional>
      <attribute name="FULL"/>
    </optional>
    <optional>
      <attribute name="ABBREV"/>
    </optional>
    <optional>
      <attribute name="THREELET"/>
    </optional>
  </define>
  <define name="MAR">
    <element name="MAR">
      <ref name="attlist.MAR"/>
      <empty/>
    </element>
  </define>
  <define name="attlist.MAR" combine="interleave">
    <optional>
      <attribute name="FULL"/>
    </optional>
    <optional>
      <attribute name="ABBREV"/>
    </optional>
    <optional>
      <attribute name="THREELET"/>
    </optional>
  </define>
  <define name="APR">
    <element name="APR">
      <ref name="attlist.APR"/>
      <empty/>
    </element>
  </define>
  <define name="attlist.APR" combine="interleave">
    <optional>
      <attribute name="FULL"/>
    </optional>
    <optional>
      <attribute name="ABBREV"/>
    </optional>
    <optional>
      <attribute name="THREELET"/>
    </optional>
  </define>
  <define name="MAY">
    <element name="MAY">
      <ref name="attlist.MAY"/>
      <empty/>
    </element>
  </define>
  <define name="attlist.MAY" combine="interleave">
    <optional>
      <attribute name="FULL"/>
    </optional>
    <optional>
      <attribute name="ABBREV"/>
    </optional>
    <optional>
      <attribute name="THREELET"/>
    </optional>
  </define>
  <define name="JUN">
    <element name="JUN">
      <ref name="attlist.JUN"/>
      <empty/>
    </element>
  </define>
  <define name="attlist.JUN" combine="interleave">
    <optional>
      <attribute name="FULL"/>
    </optional>
    <optional>
      <attribute name="ABBREV"/>
    </optional>
    <optional>
      <attribute name="THREELET"/>
    </optional>
  </define>
  <define name="JUL">
    <element name="JUL">
      <ref name="attlist.JUL"/>
      <empty/>
    </element>
  </define>
  <define name="attlist.JUL" combine="interleave">
    <optional>
      <attribute name="FULL"/>
    </optional>
    <optional>
      <attribute name="ABBREV"/>
    </optional>
    <optional>
      <attribute name="THREELET"/>
    </optional>
  </define>
  <define name="AUG">
    <element name="AUG">
      <ref name="attlist.AUG"/>
      <empty/>
    </element>
  </define>
  <define name="attlist.AUG" combine="interleave">
    <optional>
      <attribute name="FULL"/>
    </optional>
    <optional>
      <attribute name="ABBREV"/>
    </optional>
    <optional>
      <attribute name="THREELET"/>
    </optional>
  </define>
  <define name="SEP">
    <element name="SEP">
      <ref name="attlist.SEP"/>
      <empty/>
    </element>
  </define>
  <define name="attlist.SEP" combine="interleave">
    <optional>
      <attribute name="FULL"/>
    </optional>
    <optional>
      <attribute name="ABBREV"/>
    </optional>
    <optional>
      <attribute name="THREELET"/>
    </optional>
  </define>
  <define name="OCT">
    <element name="OCT">
      <ref name="attlist.OCT"/>
      <empty/>
    </element>
  </define>
  <define name="attlist.OCT" combine="interleave">
    <optional>
      <attribute name="FULL"/>
    </optional>
    <optional>
      <attribute name="ABBREV"/>
    </optional>
    <optional>
      <attribute name="THREELET"/>
    </optional>
  </define>
  <define name="NOV">
    <element name="NOV">
      <ref name="attlist.NOV"/>
      <empty/>
    </element>
  </define>
  <define name="attlist.NOV" combine="interleave">
    <optional>
      <attribute name="FULL"/>
    </optional>
    <optional>
      <attribute name="ABBREV"/>
    </optional>
    <optional>
      <attribute name="THREELET"/>
    </optional>
  </define>
  <define name="DEC">
    <element name="DEC">
      <ref name="attlist.DEC"/>
      <empty/>
    </element>
  </define>
  <define name="attlist.DEC" combine="interleave">
    <optional>
      <attribute name="FULL"/>
    </optional>
    <optional>
      <attribute name="ABBREV"/>
    </optional>
    <optional>
      <attribute name="THREELET"/>
    </optional>
  </define>
  <start>
    <choice>
      <ref name="STYLESET"/>
    </choice>
  </start>
</grammar>
