chromium/third_party/libxml/fuzz/seed_corpus/9de04ffa9771c61b055b3a79ab8114e36c5bc852

<?xml version="1.0" encoding="utf-8"?>
<!-- $Id: docbook.rng,v 1.5 2001/10/23 05:56:47 jjc Exp $ -->
<grammar xmlns="http://relaxng.org/ns/structure/1.0"
         datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
   <start>
      <choice>
         <ref name="set"/>
         <ref name="book"/>
         <ref name="chapter"/>
         <ref name="appendix"/>
         <ref name="article"/>
         <ref name="part"/>
         <ref name="reference"/>
         <ref name="refentry"/>
         <ref name="section"/>
         <ref name="sect1"/>
         <ref name="sect2"/>
         <ref name="sect3"/>
         <ref name="sect4"/>
         <ref name="sect5"/>
         <ref name="para"/>
      </choice>
   </start>
   <define name="ndxterm.class">
      <ref name="indexterm"/>
   </define>
   <define name="list.class">
      <choice>
         <ref name="calloutlist"/>
         <ref name="glosslist"/>
         <ref name="itemizedlist"/>
         <ref name="orderedlist"/>
         <ref name="segmentedlist"/>
         <ref name="simplelist"/>
         <ref name="variablelist"/>
      </choice>
   </define>
   <define name="admon.class">
      <choice>
         <ref name="caution"/>
         <ref name="important"/>
         <ref name="note"/>
         <ref name="tip"/>
         <ref name="warning"/>
      </choice>
   </define>
   <define name="linespecific.class">
      <choice>
         <ref name="literallayout"/>
         <ref name="programlisting"/>
         <ref name="programlistingco"/>
         <ref name="screen"/>
         <ref name="screenco"/>
         <ref name="screenshot"/>
      </choice>
   </define>
   <define name="method.synop.class">
      <choice>
         <ref name="constructorsynopsis"/>
         <ref name="destructorsynopsis"/>
         <ref name="methodsynopsis"/>
      </choice>
   </define>
   <define name="synop.class">
      <choice>
         <ref name="synopsis"/>
         <ref name="cmdsynopsis"/>
         <ref name="funcsynopsis"/>
         <ref name="classsynopsis"/>
         <ref name="fieldsynopsis"/>
      </choice>
   </define>
   <define name="para.class">
      <choice>
         <ref name="formalpara"/>
         <ref name="para"/>
         <ref name="simpara"/>
      </choice>
   </define>
   <define name="informal.class">
      <choice>
         <ref name="address"/>
         <ref name="blockquote"/>
         <ref name="graphic"/>
         <ref name="graphicco"/>
         <ref name="mediaobject"/>
         <ref name="mediaobjectco"/>
         <ref name="informalequation"/>
         <ref name="informalexample"/>
         <ref name="informalfigure"/>
         <ref name="informaltable"/>
      </choice>
   </define>
   <define name="formal.class">
      <choice>
         <ref name="equation"/>
         <ref name="example"/>
         <ref name="figure"/>
         <ref name="table"/>
      </choice>
   </define>
   <define name="compound.class">
      <choice>
         <ref name="msgset"/>
         <ref name="procedure"/>
         <ref name="sidebar"/>
         <ref name="qandaset"/>
      </choice>
   </define>
   <define name="genobj.class">
      <choice>
         <ref name="anchor"/>
         <ref name="bridgehead"/>
         <ref name="remark"/>
         <ref name="highlights"/>
      </choice>
   </define>
   <define name="descobj.class">
      <choice>
         <ref name="abstract"/>
         <ref name="authorblurb"/>
         <ref name="epigraph"/>
      </choice>
   </define>
   <define name="xref.char.class">
      <choice>
         <ref name="footnoteref"/>
         <ref name="xref"/>
      </choice>
   </define>
   <define name="gen.char.class">
      <choice>
         <ref name="abbrev"/>
         <ref name="acronym"/>
         <ref name="citation"/>
         <ref name="citerefentry"/>
         <ref name="citetitle"/>
         <ref name="emphasis"/>
         <ref name="firstterm"/>
         <ref name="foreignphrase"/>
         <ref name="glossterm"/>
         <ref name="footnote"/>
         <ref name="phrase"/>
         <ref name="quote"/>
         <ref name="trademark"/>
         <ref name="wordasword"/>
      </choice>
   </define>
   <define name="link.char.class">
      <choice>
         <ref name="link"/>
         <ref name="olink"/>
         <ref name="ulink"/>
      </choice>
   </define>
   <define name="tech.char.class">
      <choice>
         <ref name="action"/>
         <ref name="application"/>
         <ref name="classname"/>
         <ref name="methodname"/>
         <ref name="interfacename"/>
         <ref name="exceptionname"/>
         <ref name="ooclass"/>
         <ref name="oointerface"/>
         <ref name="ooexception"/>
         <ref name="command"/>
         <ref name="computeroutput"/>
         <ref name="database"/>
         <ref name="email"/>
         <ref name="envar"/>
         <ref name="errorcode"/>
         <ref name="errorname"/>
         <ref name="errortype"/>
         <ref name="filename"/>
         <ref name="function"/>
         <ref name="guibutton"/>
         <ref name="guiicon"/>
         <ref name="guilabel"/>
         <ref name="guimenu"/>
         <ref name="guimenuitem"/>
         <ref name="guisubmenu"/>
         <ref name="hardware"/>
         <ref name="interface"/>
         <ref name="keycap"/>
         <ref name="keycode"/>
         <ref name="keycombo"/>
         <ref name="keysym"/>
         <ref name="literal"/>
         <ref name="constant"/>
         <ref name="markup"/>
         <ref name="medialabel"/>
         <ref name="menuchoice"/>
         <ref name="mousebutton"/>
         <ref name="option"/>
         <ref name="optional"/>
         <ref name="parameter"/>
         <ref name="prompt"/>
         <ref name="property"/>
         <ref name="replaceable"/>
         <ref name="returnvalue"/>
         <ref name="sgmltag"/>
         <ref name="structfield"/>
         <ref name="structname"/>
         <ref name="symbol"/>
         <ref name="systemitem"/>
         <ref name="token"/>
         <ref name="type"/>
         <ref name="userinput"/>
         <ref name="varname"/>
      </choice>
   </define>
   <define name="base.char.class">
      <ref name="anchor"/>
   </define>
   <define name="docinfo.char.class">
      <choice>
         <ref name="author"/>
         <ref name="authorinitials"/>
         <ref name="corpauthor"/>
         <ref name="modespec"/>
         <ref name="othercredit"/>
         <ref name="productname"/>
         <ref name="productnumber"/>
         <ref name="revhistory"/>
      </choice>
   </define>
   <define name="other.char.class">
      <choice>
         <ref name="remark"/>
         <ref name="subscript"/>
         <ref name="superscript"/>
      </choice>
   </define>
   <define name="inlineobj.char.class">
      <choice>
         <ref name="inlinegraphic"/>
         <ref name="inlinemediaobject"/>
         <ref name="inlineequation"/>
      </choice>
   </define>
   <define name="component.mix">
      <choice>
         <ref name="list.class"/>
         <ref name="admon.class"/>
         <ref name="linespecific.class"/>
         <ref name="synop.class"/>
         <ref name="para.class"/>
         <ref name="informal.class"/>
         <ref name="formal.class"/>
         <ref name="compound.class"/>
         <ref name="genobj.class"/>
         <ref name="descobj.class"/>
         <ref name="ndxterm.class"/>
         <ref name="beginpage"/>
      </choice>
   </define>
   <define name="sidebar.mix">
      <choice>
         <ref name="list.class"/>
         <ref name="admon.class"/>
         <ref name="linespecific.class"/>
         <ref name="synop.class"/>
         <ref name="para.class"/>
         <ref name="informal.class"/>
         <ref name="formal.class"/>
         <ref name="procedure"/>
         <ref name="genobj.class"/>
         <ref name="ndxterm.class"/>
         <ref name="beginpage"/>
      </choice>
   </define>
   <define name="qandaset.mix">
      <choice>
         <ref name="list.class"/>
         <ref name="admon.class"/>
         <ref name="linespecific.class"/>
         <ref name="synop.class"/>
         <ref name="para.class"/>
         <ref name="informal.class"/>
         <ref name="formal.class"/>
         <ref name="procedure"/>
         <ref name="genobj.class"/>
         <ref name="ndxterm.class"/>
      </choice>
   </define>
   <define name="revdescription.mix">
      <choice>
         <ref name="list.class"/>
         <ref name="admon.class"/>
         <ref name="linespecific.class"/>
         <ref name="synop.class"/>
         <ref name="para.class"/>
         <ref name="informal.class"/>
         <ref name="formal.class"/>
         <ref name="procedure"/>
         <ref name="genobj.class"/>
         <ref name="ndxterm.class"/>
      </choice>
   </define>
   <define name="footnote.mix">
      <choice>
         <ref name="list.class"/>
         <ref name="linespecific.class"/>
         <ref name="synop.class"/>
         <ref name="para.class"/>
         <ref name="informal.class"/>
      </choice>
   </define>
   <define name="example.mix">
      <choice>
         <ref name="list.class"/>
         <ref name="linespecific.class"/>
         <ref name="synop.class"/>
         <ref name="para.class"/>
         <ref name="informal.class"/>
         <ref name="ndxterm.class"/>
         <ref name="beginpage"/>
      </choice>
   </define>
   <define name="highlights.mix">
      <choice>
         <ref name="list.class"/>
         <ref name="admon.class"/>
         <ref name="para.class"/>
         <ref name="ndxterm.class"/>
      </choice>
   </define>
   <define name="para.mix">
      <choice>
         <ref name="list.class"/>
         <ref name="admon.class"/>
         <ref name="linespecific.class"/>
         <ref name="informal.class"/>
         <ref name="formal.class"/>
      </choice>
   </define>
   <define name="admon.mix">
      <choice>
         <ref name="list.class"/>
         <ref name="linespecific.class"/>
         <ref name="synop.class"/>
         <ref name="para.class"/>
         <ref name="informal.class"/>
         <ref name="formal.class"/>
         <ref name="procedure"/>
         <ref name="sidebar"/>
         <ref name="anchor"/>
         <ref name="bridgehead"/>
         <ref name="remark"/>
         <ref name="ndxterm.class"/>
         <ref name="beginpage"/>
      </choice>
   </define>
   <define name="figure.mix">
      <choice>
         <ref name="linespecific.class"/>
         <ref name="synop.class"/>
         <ref name="informal.class"/>
         <ref name="ndxterm.class"/>
         <ref name="beginpage"/>
      </choice>
   </define>
   <define name="tabentry.mix">
      <choice>
         <ref name="list.class"/>
         <ref name="admon.class"/>
         <ref name="linespecific.class"/>
         <ref name="para.class"/>
         <ref name="graphic"/>
         <ref name="mediaobject"/>
      </choice>
   </define>
   <define name="glossdef.mix">
      <choice>
         <ref name="list.class"/>
         <ref name="linespecific.class"/>
         <ref name="synop.class"/>
         <ref name="para.class"/>
         <ref name="informal.class"/>
         <ref name="formal.class"/>
         <ref name="remark"/>
         <ref name="ndxterm.class"/>
         <ref name="beginpage"/>
      </choice>
   </define>
   <define name="legalnotice.mix">
      <choice>
         <ref name="list.class"/>
         <ref name="admon.class"/>
         <ref name="linespecific.class"/>
         <ref name="para.class"/>
         <ref name="blockquote"/>
         <ref name="ndxterm.class"/>
         <ref name="beginpage"/>
      </choice>
   </define>
   <define name="textobject.mix">
      <choice>
         <ref name="list.class"/>
         <ref name="admon.class"/>
         <ref name="linespecific.class"/>
         <ref name="para.class"/>
         <ref name="blockquote"/>
      </choice>
   </define>
   <define name="mediaobject.mix">
      <choice>
         <ref name="videoobject"/>
         <ref name="audioobject"/>
         <ref name="imageobject"/>
      </choice>
   </define>
   <define name="para.char.mix">
      <choice>
         <ref name="xref.char.class"/>
         <ref name="gen.char.class"/>
         <ref name="link.char.class"/>
         <ref name="tech.char.class"/>
         <ref name="base.char.class"/>
         <ref name="docinfo.char.class"/>
         <ref name="other.char.class"/>
         <ref name="inlineobj.char.class"/>
         <ref name="synop.class"/>
         <ref name="ndxterm.class"/>
         <ref name="beginpage"/>
      </choice>
   </define>
   <define name="title.char.mix">
      <choice>
         <ref name="xref.char.class"/>
         <ref name="gen.char.class"/>
         <ref name="link.char.class"/>
         <ref name="tech.char.class"/>
         <ref name="base.char.class"/>
         <ref name="docinfo.char.class"/>
         <ref name="other.char.class"/>
         <ref name="inlineobj.char.class"/>
         <ref name="ndxterm.class"/>
      </choice>
   </define>
   <define name="ndxterm.char.mix">
      <choice>
         <ref name="xref.char.class"/>
         <ref name="gen.char.class"/>
         <ref name="link.char.class"/>
         <ref name="tech.char.class"/>
         <ref name="base.char.class"/>
         <ref name="docinfo.char.class"/>
         <ref name="other.char.class"/>
         <ref name="inlinegraphic"/>
         <ref name="inlinemediaobject"/>
      </choice>
   </define>
   <define name="cptr.char.mix">
      <choice>
         <ref name="link.char.class"/>
         <ref name="tech.char.class"/>
         <ref name="base.char.class"/>
         <ref name="other.char.class"/>
         <ref name="inlinegraphic"/>
         <ref name="inlinemediaobject"/>
         <ref name="ndxterm.class"/>
         <ref name="beginpage"/>
      </choice>
   </define>
   <define name="smallcptr.char.mix">
      <choice>
         <ref name="replaceable"/>
         <ref name="inlinegraphic"/>
         <ref name="inlinemediaobject"/>
         <ref name="ndxterm.class"/>
         <ref name="beginpage"/>
      </choice>
   </define>
   <define name="word.char.mix">
      <choice>
         <ref name="acronym"/>
         <ref name="emphasis"/>
         <ref name="trademark"/>
         <ref name="link.char.class"/>
         <ref name="base.char.class"/>
         <ref name="other.char.class"/>
         <ref name="inlinegraphic"/>
         <ref name="inlinemediaobject"/>
         <ref name="ndxterm.class"/>
         <ref name="beginpage"/>
      </choice>
   </define>
   <define name="docinfo.char.mix">
      <choice>
         <ref name="link.char.class"/>
         <ref name="emphasis"/>
         <ref name="trademark"/>
         <ref name="replaceable"/>
         <ref name="other.char.class"/>
         <ref name="inlinegraphic"/>
         <ref name="inlinemediaobject"/>
         <ref name="ndxterm.class"/>
      </choice>
   </define>
   <define name="formalobject.title.content">
      <ref name="title"/>
      <optional>
         <ref name="titleabbrev"/>
      </optional>
   </define>
   <define name="arch.attrib">
      <optional>
         <attribute name="arch">
            <data type="string"/>
         </attribute>
      </optional>
   </define>
   <define name="condition.attrib">
      <optional>
         <attribute name="condition">
            <data type="string"/>
         </attribute>
      </optional>
   </define>
   <define name="conformance.attrib">
      <optional>
         <attribute name="conformance">
            <data type="NMTOKEN"/>
         </attribute>
      </optional>
   </define>
   <define name="os.attrib">
      <optional>
         <attribute name="os">
            <data type="string"/>
         </attribute>
      </optional>
   </define>
   <define name="revision.attrib">
      <optional>
         <attribute name="revision">
            <data type="string"/>
         </attribute>
      </optional>
   </define>
   <define name="security.attrib">
      <optional>
         <attribute name="security">
            <data type="string"/>
         </attribute>
      </optional>
   </define>
   <define name="userlevel.attrib">
      <optional>
         <attribute name="userlevel">
            <data type="string"/>
         </attribute>
      </optional>
   </define>
   <define name="vendor.attrib">
      <optional>
         <attribute name="vendor">
            <data type="string"/>
         </attribute>
      </optional>
   </define>
   <define name="effectivity.attrib">
      <ref name="arch.attrib"/>
      <ref name="condition.attrib"/>
      <ref name="conformance.attrib"/>
      <ref name="os.attrib"/>
      <ref name="revision.attrib"/>
      <ref name="security.attrib"/>
      <ref name="userlevel.attrib"/>
      <ref name="vendor.attrib"/>
   </define>
   <define name="id.attrib">
      <optional>
         <attribute name="id">
            <data type="ID"/>
         </attribute>
      </optional>
   </define>
   <define name="idreq.attrib">
      <attribute name="id">
         <data type="ID"/>
      </attribute>
   </define>
   <define name="lang.attrib">
      <optional>
         <attribute name="lang">
            <data type="string"/>
         </attribute>
      </optional>
   </define>
   <define name="remap.attrib">
      <optional>
         <attribute name="remap">
            <data type="string"/>
         </attribute>
      </optional>
   </define>
   <define name="role.attrib">
      <optional>
         <attribute name="role">
            <data type="string"/>
         </attribute>
      </optional>
   </define>
   <define name="xreflabel.attrib">
      <optional>
         <attribute name="xreflabel">
            <data type="string"/>
         </attribute>
      </optional>
   </define>
   <define name="revisionflag.attrib">
      <optional>
         <attribute name="revisionflag">
            <choice>
               <value>changed</value>
               <value>added</value>
               <value>deleted</value>
               <value>off</value>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="common.attrib">
      <ref name="id.attrib"/>
      <ref name="lang.attrib"/>
      <ref name="remap.attrib"/>
      <ref name="xreflabel.attrib"/>
      <ref name="revisionflag.attrib"/>
      <ref name="effectivity.attrib"/>
   </define>
   <define name="idreq.common.attrib">
      <ref name="idreq.attrib"/>
      <ref name="lang.attrib"/>
      <ref name="remap.attrib"/>
      <ref name="xreflabel.attrib"/>
      <ref name="revisionflag.attrib"/>
      <ref name="effectivity.attrib"/>
   </define>
   <define name="graphics.attrib">
      <optional>
         <attribute name="fileref">
            <data type="string"/>
         </attribute>
      </optional>
      <optional>
         <attribute name="format">
            <choice>
               <value>BMP</value>
               <value>CGM-CHAR</value>
               <value>CGM-BINARY</value>
               <value>CGM-CLEAR</value>
               <value>DITROFF</value>
               <value>DVI</value>
               <value>EPS</value>
               <value>EQN</value>
               <value>FAX</value>
               <value>GIF</value>
               <value>GIF87a</value>
               <value>GIF89a</value>
               <value>JPG</value>
               <value>JPEG</value>
               <value>IGES</value>
               <value>PCX</value>
               <value>PIC</value>
               <value>PNG</value>
               <value>PS</value>
               <value>SGML</value>
               <value>TBL</value>
               <value>TEX</value>
               <value>TIFF</value>
               <value>WMF</value>
               <value>WPG</value>
               <value>linespecific</value>
            </choice>
         </attribute>
      </optional>
      <optional>
         <attribute name="srccredit">
            <data type="string"/>
         </attribute>
      </optional>
      <optional>
         <attribute name="width">
            <data type="string"/>
         </attribute>
      </optional>
      <optional>
         <attribute name="depth">
            <data type="string"/>
         </attribute>
      </optional>
      <optional>
         <attribute name="align">
            <choice>
               <value>left</value>
               <value>right</value>
               <value>center</value>
            </choice>
         </attribute>
      </optional>
      <optional>
         <attribute name="scale">
            <data type="string"/>
         </attribute>
      </optional>
      <optional>
         <attribute name="scalefit">
            <choice>
               <value>0</value>
               <value>1</value>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="keyaction.attrib">
      <optional>
         <attribute name="action">
            <choice>
               <value>click</value>
               <value>double-click</value>
               <value>press</value>
               <value>seq</value>
               <value>simul</value>
               <value>other</value>
            </choice>
         </attribute>
      </optional>
      <optional>
         <attribute name="otheraction">
            <data type="string"/>
         </attribute>
      </optional>
   </define>
   <define name="label.attrib">
      <optional>
         <attribute name="label">
            <data type="string"/>
         </attribute>
      </optional>
   </define>
   <define name="linespecific.attrib">
      <optional>
         <attribute name="format">
            <value>linespecific</value>
         </attribute>
      </optional>
      <optional>
         <attribute name="linenumbering">
            <choice>
               <value>numbered</value>
               <value>unnumbered</value>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="linkend.attrib">
      <optional>
         <attribute name="linkend">
            <data type="IDREF"/>
         </attribute>
      </optional>
   </define>
   <define name="linkendreq.attrib">
      <attribute name="linkend">
         <data type="IDREF"/>
      </attribute>
   </define>
   <define name="linkends.attrib">
      <optional>
         <attribute name="linkends">
            <data type="IDREFS"/>
         </attribute>
      </optional>
   </define>
   <define name="mark.attrib">
      <optional>
         <attribute name="mark">
            <data type="string"/>
         </attribute>
      </optional>
   </define>
   <define name="moreinfo.attrib">
      <optional>
         <attribute name="moreinfo">
            <choice>
               <value>refentry</value>
               <value>none</value>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="pagenum.attrib">
      <optional>
         <attribute name="pagenum">
            <data type="string"/>
         </attribute>
      </optional>
   </define>
   <define name="status.attrib">
      <optional>
         <attribute name="status">
            <data type="string"/>
         </attribute>
      </optional>
   </define>
   <define name="width.attrib">
      <optional>
         <attribute name="width">
            <data type="string"/>
         </attribute>
      </optional>
   </define>
   <define name="title.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="title">
      <element name="title">
         <ref name="title.attlist"/>
         <mixed>
            <zeroOrMore>
               <ref name="title.char.mix"/>
            </zeroOrMore>
         </mixed>
      </element>
   </define>
   <define name="title.attlist">
      <ref name="pagenum.attrib"/>
      <ref name="common.attrib"/>
      <ref name="title.role.attrib"/>
   </define>
   <define name="titleabbrev.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="titleabbrev">
      <element name="titleabbrev">
         <ref name="titleabbrev.attlist"/>
         <mixed>
            <zeroOrMore>
               <ref name="title.char.mix"/>
            </zeroOrMore>
         </mixed>
      </element>
   </define>
   <define name="titleabbrev.attlist">
      <ref name="common.attrib"/>
      <ref name="titleabbrev.role.attrib"/>
   </define>
   <define name="subtitle.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="subtitle">
      <element name="subtitle">
         <ref name="subtitle.attlist"/>
         <mixed>
            <zeroOrMore>
               <ref name="title.char.mix"/>
            </zeroOrMore>
         </mixed>
      </element>
   </define>
   <define name="subtitle.attlist">
      <ref name="common.attrib"/>
      <ref name="subtitle.role.attrib"/>
   </define>
   <define name="person.ident.mix">
      <choice>
         <ref name="honorific"/>
         <ref name="firstname"/>
         <ref name="surname"/>
         <ref name="lineage"/>
         <ref name="othername"/>
         <ref name="affiliation"/>
         <ref name="authorblurb"/>
         <ref name="contrib"/>
      </choice>
   </define>
   <define name="bibliocomponent.mix">
      <choice>
         <ref name="abbrev"/>
         <ref name="abstract"/>
         <ref name="address"/>
         <ref name="artpagenums"/>
         <ref name="author"/>
         <ref name="authorgroup"/>
         <ref name="authorinitials"/>
         <ref name="bibliomisc"/>
         <ref name="biblioset"/>
         <ref name="collab"/>
         <ref name="confgroup"/>
         <ref name="contractnum"/>
         <ref name="contractsponsor"/>
         <ref name="copyright"/>
         <ref name="corpauthor"/>
         <ref name="corpname"/>
         <ref name="date"/>
         <ref name="edition"/>
         <ref name="editor"/>
         <ref name="invpartnumber"/>
         <ref name="isbn"/>
         <ref name="issn"/>
         <ref name="issuenum"/>
         <ref name="orgname"/>
         <ref name="othercredit"/>
         <ref name="pagenums"/>
         <ref name="printhistory"/>
         <ref name="productname"/>
         <ref name="productnumber"/>
         <ref name="pubdate"/>
         <ref name="publisher"/>
         <ref name="publishername"/>
         <ref name="pubsnumber"/>
         <ref name="releaseinfo"/>
         <ref name="revhistory"/>
         <ref name="seriesvolnums"/>
         <ref name="subtitle"/>
         <ref name="title"/>
         <ref name="titleabbrev"/>
         <ref name="volumenum"/>
         <ref name="citetitle"/>
         <ref name="person.ident.mix"/>
         <ref name="ndxterm.class"/>
      </choice>
   </define>
   <define name="biblioentry.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="biblioentry">
      <element name="biblioentry">
         <ref name="biblioentry.attlist"/>
         <oneOrMore>
            <choice>
               <ref name="articleinfo"/>
               <ref name="bibliocomponent.mix"/>
            </choice>
         </oneOrMore>
      </element>
   </define>
   <define name="biblioentry.attlist">
      <ref name="common.attrib"/>
      <ref name="biblioentry.role.attrib"/>
   </define>
   <define name="bibliomixed.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="bibliomixed">
      <element name="bibliomixed">
         <ref name="bibliomixed.attlist"/>
         <mixed>
            <zeroOrMore>
               <choice>
                  <ref name="bibliocomponent.mix"/>
                  <ref name="bibliomset"/>
               </choice>
            </zeroOrMore>
         </mixed>
      </element>
   </define>
   <define name="bibliomixed.attlist">
      <ref name="common.attrib"/>
      <ref name="bibliomixed.role.attrib"/>
   </define>
   <define name="articleinfo.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="infoContentModel">
      <oneOrMore>
         <choice>
            <ref name="graphic"/>
            <ref name="mediaobject"/>
            <ref name="legalnotice"/>
            <ref name="modespec"/>
            <ref name="subjectset"/>
            <ref name="keywordset"/>
            <ref name="itermset"/>
            <ref name="bibliocomponent.mix"/>
         </choice>
      </oneOrMore>
   </define>
   <define name="articleinfo">
      <element name="articleinfo">
         <ref name="articleinfo.attlist"/>
         <ref name="infoContentModel"/>
      </element>
   </define>
   <define name="articleinfo.attlist">
      <ref name="common.attrib"/>
      <ref name="articleinfo.role.attrib"/>
   </define>
   <define name="biblioset.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="biblioset">
      <element name="biblioset">
         <ref name="biblioset.attlist"/>
         <oneOrMore>
            <ref name="bibliocomponent.mix"/>
         </oneOrMore>
      </element>
   </define>
   <define name="biblioset.attlist">
      <ref name="common.attrib"/>
      <ref name="biblioset.role.attrib"/>
      <optional>
         <attribute name="relation">
            <data type="string"/>
         </attribute>
      </optional>
   </define>
   <define name="bibliomset.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="bibliomset">
      <element name="bibliomset">
         <ref name="bibliomset.attlist"/>
         <mixed>
            <zeroOrMore>
               <choice>
                  <ref name="bibliocomponent.mix"/>
                  <ref name="bibliomset"/>
               </choice>
            </zeroOrMore>
         </mixed>
      </element>
   </define>
   <define name="bibliomset.attlist">
      <ref name="bibliomset.role.attrib"/>
      <ref name="common.attrib"/>
      <optional>
         <attribute name="relation">
            <data type="string"/>
         </attribute>
      </optional>
   </define>
   <define name="bibliomisc.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="bibliomisc">
      <element name="bibliomisc">
         <ref name="bibliomisc.attlist"/>
         <mixed>
            <zeroOrMore>
               <ref name="para.char.mix"/>
            </zeroOrMore>
         </mixed>
      </element>
   </define>
   <define name="bibliomisc.attlist">
      <ref name="common.attrib"/>
      <ref name="bibliomisc.role.attrib"/>
   </define>
   <define name="subjectset.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="subjectset">
      <element name="subjectset">
         <ref name="subjectset.attlist"/>
         <oneOrMore>
            <ref name="subject"/>
         </oneOrMore>
      </element>
   </define>
   <define name="subjectset.attlist">
      <ref name="common.attrib"/>
      <ref name="subjectset.role.attrib"/>
      <optional>
         <attribute name="scheme">
            <data type="NMTOKEN"/>
         </attribute>
      </optional>
   </define>
   <define name="subject.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="subject">
      <element name="subject">
         <ref name="subject.attlist"/>
         <oneOrMore>
            <ref name="subjectterm"/>
         </oneOrMore>
      </element>
   </define>
   <define name="subject.attlist">
      <ref name="common.attrib"/>
      <ref name="subject.role.attrib"/>
      <optional>
         <attribute name="weight">
            <data type="string"/>
         </attribute>
      </optional>
   </define>
   <define name="subjectterm.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="subjectterm">
      <element name="subjectterm">
         <ref name="subjectterm.attlist"/>
         <text/>
      </element>
   </define>
   <define name="subjectterm.attlist">
      <ref name="common.attrib"/>
      <ref name="subjectterm.role.attrib"/>
   </define>
   <define name="keywordset.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="keywordset">
      <element name="keywordset">
         <ref name="keywordset.attlist"/>
         <oneOrMore>
            <ref name="keyword"/>
         </oneOrMore>
      </element>
   </define>
   <define name="keywordset.attlist">
      <ref name="common.attrib"/>
      <ref name="keywordset.role.attrib"/>
   </define>
   <define name="keyword.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="keyword">
      <element name="keyword">
         <ref name="keyword.attlist"/>
         <text/>
      </element>
   </define>
   <define name="keyword.attlist">
      <ref name="common.attrib"/>
      <ref name="keyword.role.attrib"/>
   </define>
   <define name="itermset.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="itermset">
      <element name="itermset">
         <ref name="itermset.attlist"/>
         <oneOrMore>
            <ref name="indexterm"/>
         </oneOrMore>
      </element>
   </define>
   <define name="itermset.attlist">
      <ref name="common.attrib"/>
      <ref name="itermset.role.attrib"/>
   </define>
   <define name="msgset.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="msgset">
      <element name="msgset">
         <ref name="msgset.attlist"/>
         <optional>
            <ref name="formalobject.title.content"/>
         </optional>
         <choice>
            <oneOrMore>
               <ref name="msgentry"/>
            </oneOrMore>
            <oneOrMore>
               <ref name="simplemsgentry"/>
            </oneOrMore>
         </choice>
      </element>
   </define>
   <define name="msgset.attlist">
      <ref name="common.attrib"/>
      <ref name="msgset.role.attrib"/>
   </define>
   <define name="msgentry.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="msgentry">
      <element name="msgentry">
         <ref name="msgentry.attlist"/>
         <oneOrMore>
            <ref name="msg"/>
         </oneOrMore>
         <optional>
            <ref name="msginfo"/>
         </optional>
         <zeroOrMore>
            <ref name="msgexplan"/>
         </zeroOrMore>
      </element>
   </define>
   <define name="msgentry.attlist">
      <ref name="common.attrib"/>
      <ref name="msgentry.role.attrib"/>
   </define>
   <define name="simplemsgentry.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="simplemsgentry">
      <element name="simplemsgentry">
         <ref name="simplemsgentry.attlist"/>
         <ref name="msgtext"/>
         <ref name="msgexplan"/>
      </element>
   </define>
   <define name="simplemsgentry.attlist">
      <ref name="common.attrib"/>
      <ref name="simplemsgentry.role.attrib"/>
      <optional>
         <attribute name="audience">
            <data type="string"/>
         </attribute>
      </optional>
      <optional>
         <attribute name="level">
            <data type="string"/>
         </attribute>
      </optional>
      <optional>
         <attribute name="origin">
            <data type="string"/>
         </attribute>
      </optional>
   </define>
   <define name="msg.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="msg">
      <element name="msg">
         <ref name="msg.attlist"/>
         <optional>
            <ref name="title"/>
         </optional>
         <ref name="msgmain"/>
         <zeroOrMore>
            <choice>
               <ref name="msgsub"/>
               <ref name="msgrel"/>
            </choice>
         </zeroOrMore>
      </element>
   </define>
   <define name="msg.attlist">
      <ref name="common.attrib"/>
      <ref name="msg.role.attrib"/>
   </define>
   <define name="msgmain.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="msgmain">
      <element name="msgmain">
         <ref name="msgmain.attlist"/>
         <optional>
            <ref name="title"/>
         </optional>
         <ref name="msgtext"/>
      </element>
   </define>
   <define name="msgmain.attlist">
      <ref name="common.attrib"/>
      <ref name="msgmain.role.attrib"/>
   </define>
   <define name="msgsub.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="msgsub">
      <element name="msgsub">
         <ref name="msgsub.attlist"/>
         <optional>
            <ref name="title"/>
         </optional>
         <ref name="msgtext"/>
      </element>
   </define>
   <define name="msgsub.attlist">
      <ref name="common.attrib"/>
      <ref name="msgsub.role.attrib"/>
   </define>
   <define name="msgrel.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="msgrel">
      <element name="msgrel">
         <ref name="msgrel.attlist"/>
         <optional>
            <ref name="title"/>
         </optional>
         <ref name="msgtext"/>
      </element>
   </define>
   <define name="msgrel.attlist">
      <ref name="common.attrib"/>
      <ref name="msgrel.role.attrib"/>
   </define>
   <define name="msginfo.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="msginfo">
      <element name="msginfo">
         <ref name="msginfo.attlist"/>
         <zeroOrMore>
            <choice>
               <ref name="msglevel"/>
               <ref name="msgorig"/>
               <ref name="msgaud"/>
            </choice>
         </zeroOrMore>
      </element>
   </define>
   <define name="msginfo.attlist">
      <ref name="common.attrib"/>
      <ref name="msginfo.role.attrib"/>
   </define>
   <define name="msglevel.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="msglevel">
      <element name="msglevel">
         <ref name="msglevel.attlist"/>
         <mixed>
            <zeroOrMore>
               <ref name="smallcptr.char.mix"/>
            </zeroOrMore>
         </mixed>
      </element>
   </define>
   <define name="msglevel.attlist">
      <ref name="common.attrib"/>
      <ref name="msglevel.role.attrib"/>
   </define>
   <define name="msgorig.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="msgorig">
      <element name="msgorig">
         <ref name="msgorig.attlist"/>
         <mixed>
            <zeroOrMore>
               <ref name="smallcptr.char.mix"/>
            </zeroOrMore>
         </mixed>
      </element>
   </define>
   <define name="msgorig.attlist">
      <ref name="common.attrib"/>
      <ref name="msgorig.role.attrib"/>
   </define>
   <define name="msgaud.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="msgaud">
      <element name="msgaud">
         <ref name="msgaud.attlist"/>
         <mixed>
            <zeroOrMore>
               <ref name="para.char.mix"/>
            </zeroOrMore>
         </mixed>
      </element>
   </define>
   <define name="msgaud.attlist">
      <ref name="common.attrib"/>
      <ref name="msgaud.role.attrib"/>
   </define>
   <define name="msgexplan.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="msgexplan">
      <element name="msgexplan">
         <ref name="msgexplan.attlist"/>
         <optional>
            <ref name="title"/>
         </optional>
         <zeroOrMore>
            <ref name="component.mix"/>
         </zeroOrMore>
      </element>
   </define>
   <define name="msgexplan.attlist">
      <ref name="common.attrib"/>
      <ref name="msgexplan.role.attrib"/>
   </define>
   <define name="qandset.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="qandaset">
      <element name="qandaset">
         <ref name="qandaset.attlist"/>
         <optional>
            <ref name="formalobject.title.content"/>
         </optional>
         <zeroOrMore>
            <ref name="qandaset.mix"/>
         </zeroOrMore>
         <choice>
            <oneOrMore>
               <ref name="qandadiv"/>
            </oneOrMore>
            <oneOrMore>
               <ref name="qandaentry"/>
            </oneOrMore>
         </choice>
      </element>
   </define>
   <define name="qandaset.attlist">
      <ref name="common.attrib"/>
      <ref name="qandset.role.attrib"/>
      <optional>
         <attribute name="defaultlabel">
            <choice>
               <value>qanda</value>
               <value>number</value>
               <value>none</value>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="qandadiv.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="qandadiv">
      <element name="qandadiv">
         <ref name="qandadiv.attlist"/>
         <optional>
            <ref name="formalobject.title.content"/>
         </optional>
         <zeroOrMore>
            <ref name="qandaset.mix"/>
         </zeroOrMore>
         <choice>
            <oneOrMore>
               <ref name="qandadiv"/>
            </oneOrMore>
            <oneOrMore>
               <ref name="qandaentry"/>
            </oneOrMore>
         </choice>
      </element>
   </define>
   <define name="qandadiv.attlist">
      <ref name="common.attrib"/>
      <ref name="qandadiv.role.attrib"/>
   </define>
   <define name="qandaentry.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="qandaentry">
      <element name="qandaentry">
         <ref name="qandaentry.attlist"/>
         <optional>
            <ref name="revhistory"/>
         </optional>
         <ref name="question"/>
         <zeroOrMore>
            <ref name="answer"/>
         </zeroOrMore>
      </element>
   </define>
   <define name="qandaentry.attlist">
      <ref name="common.attrib"/>
      <ref name="qandaentry.role.attrib"/>
   </define>
   <define name="question.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="question">
      <element name="question">
         <ref name="question.attlist"/>
         <optional>
            <ref name="label"/>
         </optional>
         <oneOrMore>
            <ref name="qandaset.mix"/>
         </oneOrMore>
      </element>
   </define>
   <define name="question.attlist">
      <ref name="common.attrib"/>
      <ref name="question.role.attrib"/>
   </define>
   <define name="answer.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="answer">
      <element name="answer">
         <ref name="answer.attlist"/>
         <optional>
            <ref name="label"/>
         </optional>
         <zeroOrMore>
            <ref name="qandaset.mix"/>
         </zeroOrMore>
         <zeroOrMore>
            <ref name="qandaentry"/>
         </zeroOrMore>
      </element>
   </define>
   <define name="answer.attlist">
      <ref name="common.attrib"/>
      <ref name="answer.role.attrib"/>
   </define>
   <define name="label.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="label">
      <element name="label">
         <ref name="label.attlist"/>
         <mixed>
            <zeroOrMore>
               <ref name="word.char.mix"/>
            </zeroOrMore>
         </mixed>
      </element>
   </define>
   <define name="label.attlist">
      <ref name="common.attrib"/>
      <ref name="label.role.attrib"/>
   </define>
   <define name="procedure.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="procedure">
      <element name="procedure">
         <ref name="procedure.attlist"/>
         <optional>
            <ref name="formalobject.title.content"/>
         </optional>
         <zeroOrMore>
            <ref name="component.mix"/>
         </zeroOrMore>
         <oneOrMore>
            <ref name="step"/>
         </oneOrMore>
      </element>
   </define>
   <define name="procedure.attlist">
      <ref name="common.attrib"/>
      <ref name="procedure.role.attrib"/>
   </define>
   <define name="step.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="step">
      <element name="step">
         <ref name="step.attlist"/>
         <optional>
            <ref name="title"/>
         </optional>
         <choice>
            <group>
               <oneOrMore>
                  <ref name="component.mix"/>
               </oneOrMore>
               <optional>
                  <ref name="substeps"/>
                  <zeroOrMore>
                     <ref name="component.mix"/>
                  </zeroOrMore>
               </optional>
            </group>
            <group>
               <ref name="substeps"/>
               <zeroOrMore>
                  <ref name="component.mix"/>
               </zeroOrMore>
            </group>
         </choice>
      </element>
   </define>
   <define name="step.attlist">
      <ref name="common.attrib"/>
      <ref name="step.role.attrib"/>
      <optional>
         <attribute name="performance">
            <choice>
               <value>optional</value>
               <value>required</value>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="substeps.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="substeps">
      <element name="substeps">
         <ref name="substeps.attlist"/>
         <oneOrMore>
            <ref name="step"/>
         </oneOrMore>
      </element>
   </define>
   <define name="substeps.attlist">
      <ref name="common.attrib"/>
      <ref name="substeps.role.attrib"/>
      <optional>
         <attribute name="performance">
            <choice>
               <value>optional</value>
               <value>required</value>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="sidebarinfo.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="sidebarinfo">
      <element name="sidebarinfo">
         <ref name="sidebarinfo.attlist"/>
         <text/>
      </element>
   </define>
   <define name="sidebarinfo.attlist">
      <ref name="common.attrib"/>
      <ref name="sidebarinfo.role.attrib"/>
   </define>
   <define name="sidebar.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="sidebar">
      <element name="sidebar">
         <ref name="sidebar.attlist"/>
         <optional>
            <ref name="sidebarinfo"/>
         </optional>
         <optional>
            <ref name="formalobject.title.content"/>
         </optional>
         <oneOrMore>
            <ref name="sidebar.mix"/>
         </oneOrMore>
      </element>
   </define>
   <define name="sidebar.attlist">
      <ref name="common.attrib"/>
      <ref name="sidebar.role.attrib"/>
   </define>
   <define name="abstract.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="abstract">
      <element name="abstract">
         <ref name="abstract.attlist"/>
         <optional>
            <ref name="title"/>
         </optional>
         <oneOrMore>
            <ref name="para.class"/>
         </oneOrMore>
      </element>
   </define>
   <define name="abstract.attlist">
      <ref name="common.attrib"/>
      <ref name="abstract.role.attrib"/>
   </define>
   <define name="authorblurb.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="authorblurb">
      <element name="authorblurb">
         <ref name="authorblurb.attlist"/>
         <optional>
            <ref name="title"/>
         </optional>
         <oneOrMore>
            <ref name="para.class"/>
         </oneOrMore>
      </element>
   </define>
   <define name="authorblurb.attlist">
      <ref name="common.attrib"/>
      <ref name="authorblurb.role.attrib"/>
   </define>
   <define name="blockquote.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="blockquote">
      <element name="blockquote">
         <ref name="blockquote.attlist"/>
         <optional>
            <ref name="title"/>
         </optional>
         <optional>
            <ref name="attribution"/>
         </optional>
         <oneOrMore>
            <ref name="component.mix"/>
         </oneOrMore>
      </element>
   </define>
   <define name="blockquote.attlist">
      <ref name="common.attrib"/>
      <ref name="blockquote.role.attrib"/>
   </define>
   <define name="attribution.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="attribution">
      <element name="attribution">
         <ref name="attribution.attlist"/>
         <mixed>
            <zeroOrMore>
               <ref name="para.char.mix"/>
            </zeroOrMore>
         </mixed>
      </element>
   </define>
   <define name="attribution.attlist">
      <ref name="common.attrib"/>
      <ref name="attribution.role.attrib"/>
   </define>
   <define name="bridgehead.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="bridgehead">
      <element name="bridgehead">
         <ref name="bridgehead.attlist"/>
         <mixed>
            <zeroOrMore>
               <ref name="title.char.mix"/>
            </zeroOrMore>
         </mixed>
      </element>
   </define>
   <define name="bridgehead.attlist">
      <ref name="common.attrib"/>
      <ref name="bridgehead.role.attrib"/>
      <optional>
         <attribute name="renderas">
            <choice>
               <value>other</value>
               <value>sect1</value>
               <value>sect2</value>
               <value>sect3</value>
               <value>sect4</value>
               <value>sect5</value>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="remark.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="remark">
      <element name="remark">
         <ref name="remark.attlist"/>
         <mixed>
            <zeroOrMore>
               <ref name="para.char.mix"/>
            </zeroOrMore>
         </mixed>
      </element>
   </define>
   <define name="remark.attlist">
      <ref name="common.attrib"/>
      <ref name="remark.role.attrib"/>
   </define>
   <define name="epigraph.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="epigraph">
      <element name="epigraph">
         <ref name="epigraph.attlist"/>
         <optional>
            <ref name="attribution"/>
         </optional>
         <oneOrMore>
            <ref name="para.class"/>
         </oneOrMore>
      </element>
   </define>
   <define name="epigraph.attlist">
      <ref name="common.attrib"/>
      <ref name="epigraph.role.attrib"/>
   </define>
   <define name="footnote.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="footnote">
      <element name="footnote">
         <ref name="footnote.attlist"/>
         <oneOrMore>
            <ref name="footnote.mix"/>
         </oneOrMore>
      </element>
   </define>
   <define name="footnote.attlist">
      <ref name="label.attrib"/>
      <ref name="common.attrib"/>
      <ref name="footnote.role.attrib"/>
   </define>
   <define name="highlights.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="highlights">
      <element name="highlights">
         <ref name="highlights.attlist"/>
         <oneOrMore>
            <ref name="highlights.mix"/>
         </oneOrMore>
      </element>
   </define>
   <define name="highlights.attlist">
      <ref name="common.attrib"/>
      <ref name="highlights.role.attrib"/>
   </define>
   <define name="formalpara.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="formalpara">
      <element name="formalpara">
         <ref name="formalpara.attlist"/>
         <ref name="title"/>
         <zeroOrMore>
            <ref name="ndxterm.class"/>
         </zeroOrMore>
         <ref name="para"/>
      </element>
   </define>
   <define name="formalpara.attlist">
      <ref name="common.attrib"/>
      <ref name="formalpara.role.attrib"/>
   </define>
   <define name="para.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="para">
      <element name="para">
         <ref name="para.attlist"/>
         <mixed>
            <zeroOrMore>
               <choice>
                  <ref name="para.char.mix"/>
                  <ref name="para.mix"/>
               </choice>
            </zeroOrMore>
         </mixed>
      </element>
   </define>
   <define name="para.attlist">
      <ref name="common.attrib"/>
      <ref name="para.role.attrib"/>
   </define>
   <define name="simpara.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="simpara">
      <element name="simpara">
         <ref name="simpara.attlist"/>
         <mixed>
            <zeroOrMore>
               <ref name="para.char.mix"/>
            </zeroOrMore>
         </mixed>
      </element>
   </define>
   <define name="simpara.attlist">
      <ref name="common.attrib"/>
      <ref name="simpara.role.attrib"/>
   </define>
   <define name="admon.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="admonitionType">
      <optional>
         <ref name="title"/>
      </optional>
      <oneOrMore>
         <ref name="admon.mix"/>
      </oneOrMore>
   </define>
   <define name="important">
      <element name="important">
         <ref name="important.attlist"/>
         <ref name="admonitionType"/>
      </element>
   </define>
   <define name="important.attlist">
      <ref name="common.attrib"/>
      <ref name="admon.role.attrib"/>
   </define>
   <define name="warning">
      <element name="warning">
         <ref name="warning.attlist"/>
         <ref name="admonitionType"/>
      </element>
   </define>
   <define name="warning.attlist">
      <ref name="common.attrib"/>
      <ref name="admon.role.attrib"/>
   </define>
   <define name="caution">
      <element name="caution">
         <ref name="caution.attlist"/>
         <ref name="admonitionType"/>
      </element>
   </define>
   <define name="caution.attlist">
      <ref name="common.attrib"/>
      <ref name="admon.role.attrib"/>
   </define>
   <define name="note">
      <element name="note">
         <ref name="note.attlist"/>
         <ref name="admonitionType"/>
      </element>
   </define>
   <define name="note.attlist">
      <ref name="common.attrib"/>
      <ref name="admon.role.attrib"/>
   </define>
   <define name="tip">
      <element name="tip">
         <ref name="tip.attlist"/>
         <ref name="admonitionType"/>
      </element>
   </define>
   <define name="tip.attlist">
      <ref name="common.attrib"/>
      <ref name="admon.role.attrib"/>
   </define>
   <define name="glosslist.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="glosslist">
      <element name="glosslist">
         <ref name="glosslist.attlist"/>
         <oneOrMore>
            <ref name="glossentry"/>
         </oneOrMore>
      </element>
   </define>
   <define name="glosslist.attlist">
      <ref name="common.attrib"/>
      <ref name="glosslist.role.attrib"/>
   </define>
   <define name="glossentry.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="glossentry">
      <element name="glossentry">
         <ref name="glossentry.attlist"/>
         <ref name="glossterm"/>
         <optional>
            <ref name="acronym"/>
         </optional>
         <optional>
            <ref name="abbrev"/>
         </optional>
         <zeroOrMore>
            <ref name="ndxterm.class"/>
         </zeroOrMore>
         <optional>
            <ref name="revhistory"/>
         </optional>
         <choice>
            <ref name="glosssee"/>
            <oneOrMore>
               <ref name="glossdef"/>
            </oneOrMore>
         </choice>
      </element>
   </define>
   <define name="glossentry.attlist">
      <ref name="common.attrib"/>
      <ref name="glossentry.role.attrib"/>
      <optional>
         <attribute name="sortas">
            <data type="string"/>
         </attribute>
      </optional>
   </define>
   <define name="glossdef.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="glossdef">
      <element name="glossdef">
         <ref name="glossdef.attlist"/>
         <oneOrMore>
            <ref name="glossdef.mix"/>
         </oneOrMore>
         <oneOrMore>
            <ref name="glossseealso"/>
         </oneOrMore>
      </element>
   </define>
   <define name="glossdef.attlist">
      <ref name="common.attrib"/>
      <ref name="glossdef.role.attrib"/>
      <optional>
         <attribute name="subject">
            <data type="string"/>
         </attribute>
      </optional>
   </define>
   <define name="glosssee.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="glosssee">
      <element name="glosssee">
         <ref name="glosssee.attlist"/>
         <mixed>
            <zeroOrMore>
               <ref name="para.char.mix"/>
            </zeroOrMore>
         </mixed>
      </element>
   </define>
   <define name="glosssee.attlist">
      <ref name="common.attrib"/>
      <ref name="glosssee.role.attrib"/>
      <optional>
         <attribute name="otherterm">
            <data type="IDREF"/>
         </attribute>
      </optional>
   </define>
   <define name="glossseealso.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="glossseealso">
      <element name="glossseealso">
         <ref name="glossseealso.attlist"/>
         <mixed>
            <zeroOrMore>
               <ref name="para.char.mix"/>
            </zeroOrMore>
         </mixed>
      </element>
   </define>
   <define name="glossseealso.attlist">
      <ref name="common.attrib"/>
      <ref name="glossseealso.role.attrib"/>
      <optional>
         <attribute name="otherterm">
            <data type="IDREF"/>
         </attribute>
      </optional>
   </define>
   <define name="itemizedlist.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="itemizedlist">
      <element name="itemizedlist">
         <ref name="itemizedlist.attlist"/>
         <optional>
            <ref name="formalobject.title.content"/>
         </optional>
         <oneOrMore>
            <ref name="listitem"/>
         </oneOrMore>
      </element>
   </define>
   <define name="itemizedlist.attlist">
      <ref name="mark.attrib"/>
      <ref name="common.attrib"/>
      <ref name="itemizedlist.role.attrib"/>
      <optional>
         <attribute name="spacing">
            <choice>
               <value>normal</value>
               <value>compact</value>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="orderedlist.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="orderedlist">
      <element name="orderedlist">
         <ref name="orderedlist.attlist"/>
         <optional>
            <ref name="formalobject.title.content"/>
         </optional>
         <oneOrMore>
            <ref name="listitem"/>
         </oneOrMore>
      </element>
   </define>
   <define name="orderedlist.attlist">
      <ref name="common.attrib"/>
      <ref name="orderedlist.role.attrib"/>
      <optional>
         <attribute name="numeration">
            <choice>
               <value>arabic</value>
               <value>upperalpha</value>
               <value>loweralpha</value>
               <value>upperroman</value>
               <value>lowerroman</value>
            </choice>
         </attribute>
      </optional>
      <optional>
         <attribute name="inheritnum">
            <choice>
               <value>inherit</value>
               <value>ignore</value>
            </choice>
         </attribute>
      </optional>
      <optional>
         <attribute name="continuation">
            <choice>
               <value>continues</value>
               <value>restarts</value>
            </choice>
         </attribute>
      </optional>
      <optional>
         <attribute name="spacing">
            <choice>
               <value>normal</value>
               <value>compact</value>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="listitem.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="listitem">
      <element name="listitem">
         <ref name="listitem.attlist"/>
         <oneOrMore>
            <ref name="component.mix"/>
         </oneOrMore>
      </element>
   </define>
   <define name="listitem.attlist">
      <ref name="common.attrib"/>
      <ref name="listitem.role.attrib"/>
      <optional>
         <attribute name="override">
            <data type="string"/>
         </attribute>
      </optional>
   </define>
   <define name="segmentedlist.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="segmentedlist">
      <element name="segmentedlist">
         <ref name="segmentedlist.attlist"/>
         <optional>
            <ref name="formalobject.title.content"/>
         </optional>
         <ref name="segtitle"/>
         <zeroOrMore>
            <ref name="segtitle"/>
         </zeroOrMore>
         <oneOrMore>
            <ref name="seglistitem"/>
         </oneOrMore>
      </element>
   </define>
   <define name="segmentedlist.attlist">
      <ref name="common.attrib"/>
      <ref name="segmentedlist.role.attrib"/>
   </define>
   <define name="segtitle.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="segtitle">
      <element name="segtitle">
         <ref name="segtitle.attlist"/>
         <mixed>
            <zeroOrMore>
               <ref name="title.char.mix"/>
            </zeroOrMore>
         </mixed>
      </element>
   </define>
   <define name="segtitle.attlist">
      <ref name="common.attrib"/>
      <ref name="segtitle.role.attrib"/>
   </define>
   <define name="seglistitem.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="seglistitem">
      <element name="seglistitem">
         <ref name="seglistitem.attlist"/>
         <ref name="seg"/>
         <zeroOrMore>
            <ref name="seg"/>
         </zeroOrMore>
      </element>
   </define>
   <define name="seglistitem.attlist">
      <ref name="common.attrib"/>
      <ref name="seglistitem.role.attrib"/>
   </define>
   <define name="seg.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="seg">
      <element name="seg">
         <ref name="seg.attlist"/>
         <mixed>
            <zeroOrMore>
               <ref name="para.char.mix"/>
            </zeroOrMore>
         </mixed>
      </element>
   </define>
   <define name="seg.attlist">
      <ref name="common.attrib"/>
      <ref name="seg.role.attrib"/>
   </define>
   <define name="simplelist.role.attrib">
      <ref name="role.attrib"/>
   </define>
   <define name="simplelist">
      <element name="simplelist">
         <ref name="simplelist.attlist"/>
         <oneOrMore>
            <ref name="member"/>
         </oneOrMore>
      </element>
   </define>
   <define name="simplelist.attlist">
      <ref name="common.attrib"/>
      <ref name="simplelist.role.attrib"/>
      <optional>
         <attribute name="columns">
            <data type="integer"/>
         </attribute>
      </optional>
      <optional>
         <attribute name="type">
            <choice>
               <value>inline</value>
               <value>vert</value>
               <value>horiz</value>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="member.role.attrib">