blob: 85a6aed4d2a8e9483a625974f1132798bd50c420 [file] [log] [blame]
<?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">
<ref name="role.attrib"/>
</define>
<define name="member">
<element name="member">
<ref name="member.attlist"/>
<mixed>
<zeroOrMore>
<ref name="para.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="member.attlist">
<ref name="common.attrib"/>
<ref name="member.role.attrib"/>
</define>
<define name="variablelist.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="variablelist">
<element name="variablelist">
<ref name="variablelist.attlist"/>
<optional>
<ref name="formalobject.title.content"/>
</optional>
<oneOrMore>
<ref name="varlistentry"/>
</oneOrMore>
</element>
</define>
<define name="variablelist.attlist">
<ref name="common.attrib"/>
<ref name="variablelist.role.attrib"/>
<optional>
<attribute name="termlength">
<data type="string"/>
</attribute>
</optional>
</define>
<define name="varlistentry.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="varlistentry">
<element name="varlistentry">
<ref name="varlistentry.attlist"/>
<oneOrMore>
<ref name="term"/>
</oneOrMore>
<ref name="listitem"/>
</element>
</define>
<define name="varlistentry.attlist">
<ref name="common.attrib"/>
<ref name="varlistentry.role.attrib"/>
</define>
<define name="term.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="term">
<element name="term">
<ref name="term.attlist"/>
<mixed>
<zeroOrMore>
<ref name="para.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="term.attlist">
<ref name="common.attrib"/>
<ref name="term.role.attrib"/>
</define>
<define name="calloutlist.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="calloutlist">
<element name="calloutlist">
<ref name="calloutlist.attlist"/>
<optional>
<ref name="formalobject.title.content"/>
</optional>
<oneOrMore>
<ref name="callout"/>
</oneOrMore>
</element>
</define>
<define name="calloutlist.attlist">
<ref name="common.attrib"/>
<ref name="calloutlist.role.attrib"/>
</define>
<define name="callout.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="callout">
<element name="callout">
<ref name="callout.attlist"/>
<oneOrMore>
<ref name="component.mix"/>
</oneOrMore>
</element>
</define>
<define name="callout.attlist">
<ref name="common.attrib"/>
<ref name="callout.role.attrib"/>
<optional>
<attribute name="arearefs">
<data type="IDREFS"/>
</attribute>
</optional>
</define>
<define name="example.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="example">
<element name="example">
<ref name="example.attlist"/>
<optional>
<ref name="formalobject.title.content"/>
</optional>
<oneOrMore>
<ref name="example.mix"/>
</oneOrMore>
</element>
</define>
<define name="example.attlist">
<ref name="label.attrib"/>
<ref name="width.attrib"/>
<ref name="common.attrib"/>
<ref name="example.role.attrib"/>
</define>
<define name="informalexample.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="informalexample">
<element name="informalexample">
<ref name="informalexample.attlist"/>
<oneOrMore>
<ref name="example.mix"/>
</oneOrMore>
</element>
</define>
<define name="informalexample.attlist">
<ref name="width.attrib"/>
<ref name="common.attrib"/>
<ref name="informalexample.role.attrib"/>
</define>
<define name="programlistingco.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="programlistingco">
<element name="programlistingco">
<ref name="programlistingco.attlist"/>
<ref name="areaspec"/>
<ref name="programlisting"/>
<zeroOrMore>
<ref name="calloutlist"/>
</zeroOrMore>
</element>
</define>
<define name="programlistingco.attlist">
<ref name="common.attrib"/>
<ref name="programlistingco.role.attrib"/>
</define>
<define name="areaspec.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="areaspec">
<element name="areaspec">
<ref name="areaspec.attlist"/>
<oneOrMore>
<choice>
<ref name="area"/>
<ref name="areaset"/>
</choice>
</oneOrMore>
</element>
</define>
<define name="areaspec.attlist">
<ref name="common.attrib"/>
<ref name="areaspec.role.attrib"/>
<optional>
<attribute name="units">
<choice>
<value>calspair</value>
<value>linecolumn</value>
<value>linerange</value>
<value>linecolumnpair</value>
<value>other</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="otherunits">
<data type="NMTOKEN"/>
</attribute>
</optional>
</define>
<define name="area.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="area">
<element name="area">
<ref name="area.attlist"/>
</element>
</define>
<define name="area.attlist">
<ref name="label.attrib"/>
<ref name="linkends.attrib"/>
<ref name="idreq.common.attrib"/>
<ref name="area.role.attrib"/>
<optional>
<attribute name="units">
<choice>
<value>calspair</value>
<value>linecolumn</value>
<value>linerange</value>
<value>linecolumnpair</value>
<value>other</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="otherunits">
<data type="NMTOKEN"/>
</attribute>
</optional>
<attribute name="coords">
<data type="string"/>
</attribute>
</define>
<define name="areaset.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="areaset">
<element name="areaset">
<ref name="areaset.attlist"/>
<oneOrMore>
<ref name="area"/>
</oneOrMore>
</element>
</define>
<define name="areaset.attlist">
<ref name="label.attrib"/>
<ref name="idreq.common.attrib"/>
<ref name="areaset.role.attrib"/>
<optional>
<attribute name="units">
<choice>
<value>calspair</value>
<value>linecolumn</value>
<value>linerange</value>
<value>linecolumnpair</value>
<value>other</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="otherunits">
<data type="NMTOKEN"/>
</attribute>
</optional>
<attribute name="coords">
<data type="string"/>
</attribute>
</define>
<define name="programlisting.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="programlisting">
<element name="programlisting">
<ref name="programlisting.attlist"/>
<mixed>
<zeroOrMore>
<choice>
<ref name="para.char.mix"/>
<ref name="co"/>
<ref name="lineannotation"/>
</choice>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="programlisting.attlist">
<ref name="width.attrib"/>
<ref name="linespecific.attrib"/>
<ref name="common.attrib"/>
<ref name="programlisting.role.attrib"/>
</define>
<define name="literallayout.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="literallayout">
<element name="literallayout">
<ref name="literallayout.attlist"/>
<mixed>
<zeroOrMore>
<choice>
<ref name="para.char.mix"/>
<ref name="co"/>
<ref name="lineannotation"/>
</choice>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="literallayout.attlist">
<ref name="width.attrib"/>
<ref name="linespecific.attrib"/>
<ref name="common.attrib"/>
<ref name="literallayout.role.attrib"/>
<optional>
<attribute name="class">
<choice>
<value>monospaced</value>
<value>normal</value>
</choice>
</attribute>
</optional>
</define>
<define name="screenco.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="screenco">
<element name="screenco">
<ref name="screenco.attlist"/>
<ref name="areaspec"/>
<ref name="screen"/>
<zeroOrMore>
<ref name="calloutlist"/>
</zeroOrMore>
</element>
</define>
<define name="screenco.attlist">
<ref name="common.attrib"/>
<ref name="screenco.role.attrib"/>
</define>
<define name="screen.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="screen">
<element name="screen">
<ref name="screen.attlist"/>
<mixed>
<zeroOrMore>
<choice>
<ref name="para.char.mix"/>
<ref name="co"/>
<ref name="lineannotation"/>
</choice>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="screen.attlist">
<ref name="width.attrib"/>
<ref name="linespecific.attrib"/>
<ref name="common.attrib"/>
<ref name="screen.role.attrib"/>
</define>
<define name="screenshot.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="screenshot">
<element name="screenshot">
<ref name="screenshot.attlist"/>
<optional>
<ref name="screeninfo"/>
</optional>
<choice>
<ref name="graphic"/>
<ref name="graphicco"/>
<ref name="mediaobject"/>
<ref name="mediaobjectco"/>
</choice>
</element>
</define>
<define name="screenshot.attlist">
<ref name="common.attrib"/>
<ref name="screenshot.role.attrib"/>
</define>
<define name="screeninfo.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="screeninfo">
<element name="screeninfo">
<ref name="screeninfo.attlist"/>
<mixed>
<zeroOrMore>
<ref name="para.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="screeninfo.attlist">
<ref name="common.attrib"/>
<ref name="screeninfo.role.attrib"/>
</define>
<define name="figure.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="figure">
<element name="figure">
<ref name="figure.attlist"/>
<optional>
<ref name="formalobject.title.content"/>
</optional>
<oneOrMore>
<choice>
<ref name="figure.mix"/>
<ref name="link.char.class"/>
</choice>
</oneOrMore>
</element>
</define>
<define name="figure.attlist">
<ref name="label.attrib"/>
<ref name="common.attrib"/>
<ref name="figure.role.attrib"/>
<optional>
<attribute name="float">
<choice>
<value>0</value>
<value>1</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="pgwide">
<choice>
<value>0</value>
<value>1</value>
</choice>
</attribute>
</optional>
</define>
<define name="informalfigure.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="informalfigure">
<element name="informalfigure">
<ref name="informalfigure.attlist"/>
<oneOrMore>
<choice>
<ref name="figure.mix"/>
<ref name="link.char.class"/>
</choice>
</oneOrMore>
</element>
</define>
<define name="informalfigure.attlist">
<ref name="label.attrib"/>
<ref name="common.attrib"/>
<ref name="informalfigure.role.attrib"/>
<optional>
<attribute name="float">
<choice>
<value>0</value>
<value>1</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="pgwide">
<choice>
<value>0</value>
<value>1</value>
</choice>
</attribute>
</optional>
</define>
<define name="graphicco.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="graphicco">
<element name="graphicco">
<ref name="graphicco.attlist"/>
<ref name="areaspec"/>
<ref name="graphic"/>
<zeroOrMore>
<ref name="calloutlist"/>
</zeroOrMore>
</element>
</define>
<define name="graphicco.attlist">
<ref name="common.attrib"/>
<ref name="graphicco.role.attrib"/>
</define>
<define name="graphic.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="graphic">
<element name="graphic">
<ref name="graphic.attlist"/>
</element>
</define>
<define name="graphic.attlist">
<ref name="graphics.attrib"/>
<ref name="common.attrib"/>
<ref name="graphic.role.attrib"/>
</define>
<define name="inlinegraphic.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="inlinegraphic">
<element name="inlinegraphic">
<ref name="inlinegraphic.attlist"/>
</element>
</define>
<define name="inlinegraphic.attlist">
<ref name="graphics.attrib"/>
<ref name="common.attrib"/>
<ref name="inlinegraphic.role.attrib"/>
</define>
<define name="mediaobject.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="mediaobject">
<element name="mediaobject">
<ref name="mediaobject.attlist"/>
<optional>
<ref name="objectinfo"/>
</optional>
<ref name="mediaobject.mix"/>
<zeroOrMore>
<choice>
<ref name="mediaobject.mix"/>
<ref name="textobject"/>
</choice>
</zeroOrMore>
<optional>
<ref name="caption"/>
</optional>
</element>
</define>
<define name="mediaobject.attlist">
<ref name="common.attrib"/>
<ref name="mediaobject.role.attrib"/>
</define>
<define name="inlinemediaobject.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="inlinemediaobject">
<element name="inlinemediaobject">
<ref name="inlinemediaobject.attlist"/>
<optional>
<ref name="objectinfo"/>
</optional>
<ref name="mediaobject.mix"/>
<zeroOrMore>
<choice>
<ref name="mediaobject.mix"/>
<ref name="textobject"/>
</choice>
</zeroOrMore>
</element>
</define>
<define name="inlinemediaobject.attlist">
<ref name="common.attrib"/>
<ref name="inlinemediaobject.role.attrib"/>
</define>
<define name="videoobject.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="videoobject">
<element name="videoobject">
<ref name="videoobject.attlist"/>
<optional>
<ref name="objectinfo"/>
</optional>
<ref name="videodata"/>
</element>
</define>
<define name="videoobject.attlist">
<ref name="common.attrib"/>
<ref name="videoobject.role.attrib"/>
</define>
<define name="audioobject.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="audioobject">
<element name="audioobject">
<ref name="audioobject.attlist"/>
<optional>
<ref name="objectinfo"/>
</optional>
<ref name="audiodata"/>
</element>
</define>
<define name="audioobject.attlist">
<ref name="common.attrib"/>
<ref name="audioobject.role.attrib"/>
</define>
<define name="imageobject.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="imageobject">
<element name="imageobject">
<ref name="imageobject.attlist"/>
<optional>
<ref name="objectinfo"/>
</optional>
<ref name="imagedata"/>
</element>
</define>
<define name="imageobject.attlist">
<ref name="common.attrib"/>
<ref name="imageobject.role.attrib"/>
</define>
<define name="textobject.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="textobject">
<element name="textobject">
<ref name="textobject.attlist"/>
<optional>
<ref name="objectinfo"/>
</optional>
<choice>
<ref name="phrase"/>
<oneOrMore>
<ref name="textobject.mix"/>
</oneOrMore>
</choice>
</element>
</define>
<define name="textobject.attlist">
<ref name="common.attrib"/>
<ref name="textobject.role.attrib"/>
</define>
<define name="objectinfo.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="objectinfo">
<element name="objectinfo">
<ref name="objectinfo.attlist"/>
<ref name="infoContentModel"/>
</element>
</define>
<define name="objectinfo.attlist">
<ref name="common.attrib"/>
<ref name="objectinfo.role.attrib"/>
</define>
<define name="objectdata.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>
</define>
<define name="videodata.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="videodata">
<element name="videodata">
<ref name="videodata.attlist"/>
</element>
</define>
<define name="videodata.attlist">
<ref name="common.attrib"/>
<ref name="objectdata.attrib"/>
<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="audiodata.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="audiodata">
<element name="audiodata">
<ref name="audiodata.attlist"/>
</element>
</define>
<define name="audiodata.attlist">
<ref name="common.attrib"/>
<ref name="objectdata.attrib"/>
<ref name="audiodata.role.attrib"/>
</define>
<define name="imagedata.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="imagedata">
<element name="imagedata">
<ref name="imagedata.attlist"/>
</element>
</define>
<define name="imagedata.attlist">
<ref name="common.attrib"/>
<ref name="objectdata.attrib"/>
<ref name="imagedata.role.attrib"/>
<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="caption.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="caption">
<element name="caption">
<ref name="caption.attlist"/>
<zeroOrMore>
<ref name="textobject.mix"/>
</zeroOrMore>
</element>
</define>
<define name="caption.attlist">
<ref name="common.attrib"/>
<ref name="caption.role.attrib"/>
</define>
<define name="mediaobjectco.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="mediaobjectco">
<element name="mediaobjectco">
<ref name="mediaobjectco.attlist"/>
<optional>
<ref name="objectinfo"/>
</optional>
<ref name="imageobjectco"/>
<zeroOrMore>
<choice>
<ref name="imageobjectco"/>
<ref name="textobject"/>
</choice>
</zeroOrMore>
</element>
</define>
<define name="mediaobjectco.attlist">
<ref name="common.attrib"/>
<ref name="mediaobjectco.role.attrib"/>
</define>
<define name="imageobjectco.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="imageobjectco">
<element name="imageobjectco">
<ref name="imageobjectco.attlist"/>
<ref name="areaspec"/>
<ref name="imageobject"/>
<zeroOrMore>
<ref name="calloutlist"/>
</zeroOrMore>
</element>
</define>
<define name="imageobjectco.attlist">
<ref name="common.attrib"/>
<ref name="imageobjectco.role.attrib"/>
</define>
<define name="equation.content">
<optional>
<ref name="alt"/>
</optional>
<choice>
<oneOrMore>
<ref name="graphic"/>
</oneOrMore>
<oneOrMore>
<ref name="mediaobject"/>
</oneOrMore>
</choice>
</define>
<define name="inlineequation.content">
<optional>
<ref name="alt"/>
</optional>
<choice>
<oneOrMore>
<ref name="graphic"/>
</oneOrMore>
<oneOrMore>
<ref name="inlinemediaobject"/>
</oneOrMore>
</choice>
</define>
<define name="equation.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="equation">
<element name="equation">
<ref name="equation.attlist"/>
<optional>
<ref name="formalobject.title.content"/>
</optional>
<choice>
<ref name="informalequation"/>
<ref name="equation.content"/>
</choice>
</element>
</define>
<define name="equation.attlist">
<ref name="label.attrib"/>
<ref name="common.attrib"/>
<ref name="equation.role.attrib"/>
</define>
<define name="informalequation.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="informalequation">
<element name="informalequation">
<ref name="informalequation.attlist"/>
<ref name="equation.content"/>
</element>
</define>
<define name="informalequation.attlist">
<ref name="common.attrib"/>
<ref name="informalequation.role.attrib"/>
</define>
<define name="inlineequation.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="inlineequation">
<element name="inlineequation">
<ref name="inlineequation.attlist"/>
<ref name="inlineequation.content"/>
</element>
</define>
<define name="inlineequation.attlist">
<ref name="common.attrib"/>
<ref name="inlineequation.role.attrib"/>
</define>
<define name="alt.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="alt">
<element name="alt">
<ref name="alt.attlist"/>
<text/>
</element>
</define>
<define name="alt.attlist">
<ref name="common.attrib"/>
<ref name="alt.role.attrib"/>
</define>
<define name="synopsis.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="synopsis">
<element name="synopsis">
<ref name="synopsis.attlist"/>
<mixed>
<zeroOrMore>
<choice>
<ref name="para.char.mix"/>
<ref name="graphic"/>
<ref name="mediaobject"/>
<ref name="lineannotation"/>
<ref name="co"/>
</choice>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="synopsis.attlist">
<ref name="label.attrib"/>
<ref name="linespecific.attrib"/>
<ref name="common.attrib"/>
<ref name="synopsis.role.attrib"/>
</define>
<define name="cmdsynopsis.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="cmdsynopsis">
<element name="cmdsynopsis">
<ref name="cmdsynopsis.attlist"/>
<oneOrMore>
<choice>
<ref name="command"/>
<ref name="arg"/>
<ref name="group"/>
<ref name="sbr"/>
</choice>
</oneOrMore>
<zeroOrMore>
<ref name="synopfragment"/>
</zeroOrMore>
</element>
</define>
<define name="cmdsynopsis.attlist">
<ref name="label.attrib"/>
<ref name="common.attrib"/>
<ref name="cmdsynopsis.role.attrib"/>
<optional>
<attribute name="sepchar">
<data type="string"/>
</attribute>
</optional>
<optional>
<attribute name="cmdlength">
<data type="integer"/>
</attribute>
</optional>
</define>
<define name="arg.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="arg">
<element name="arg">
<ref name="arg.attlist"/>
<mixed>
<zeroOrMore>
<choice>
<ref name="arg"/>
<ref name="group"/>
<ref name="option"/>
<ref name="synopfragmentref"/>
<ref name="replaceable"/>
<ref name="sbr"/>
</choice>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="arg.attlist">
<ref name="common.attrib"/>
<ref name="arg.role.attrib"/>
<optional>
<attribute name="choice">
<choice>
<value>opt</value>
<value>req</value>
<value>plain</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="rep">
<choice>
<value>norepeat</value>
<value>repeat</value>
</choice>
</attribute>
</optional>
</define>
<define name="group.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="group">
<element name="group">
<ref name="group.attlist"/>
<oneOrMore>
<choice>
<ref name="arg"/>
<ref name="group"/>
<ref name="option"/>
<ref name="synopfragmentref"/>
<ref name="replaceable"/>
<ref name="sbr"/>
</choice>
</oneOrMore>
</element>
</define>
<define name="group.attlist">
<ref name="common.attrib"/>
<ref name="group.role.attrib"/>
<optional>
<attribute name="choice">
<choice>
<value>opt</value>
<value>req</value>
<value>plain</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="rep">
<choice>
<value>norepeat</value>
<value>repeat</value>
</choice>
</attribute>
</optional>
</define>
<define name="sbr.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="sbr">
<element name="sbr">
<ref name="sbr.attlist"/>
</element>
</define>
<define name="sbr.attlist">
<ref name="common.attrib"/>
<ref name="sbr.role.attrib"/>
</define>
<define name="synopfragmentref.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="synopfragmentref">
<element name="synopfragmentref">
<ref name="synopfragmentref.attlist"/>
<text/>
</element>
</define>
<define name="synopfragmentref.attlist">
<ref name="linkendreq.attrib"/>
<ref name="common.attrib"/>
<ref name="synopfragmentref.role.attrib"/>
</define>
<define name="synopfragment.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="synopfragment">
<element name="synopfragment">
<ref name="synopfragment.attlist"/>
<oneOrMore>
<choice>
<ref name="arg"/>
<ref name="group"/>
</choice>
</oneOrMore>
</element>
</define>
<define name="synopfragment.attlist">
<ref name="idreq.common.attrib"/>
<ref name="synopfragment.role.attrib"/>
</define>
<define name="funcsynopsis.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="funcsynopsis">
<element name="funcsynopsis">
<ref name="funcsynopsis.attlist"/>
<oneOrMore>
<choice>
<ref name="funcsynopsisinfo"/>
<ref name="funcprototype"/>
</choice>
</oneOrMore>
</element>
</define>
<define name="funcsynopsis.attlist">
<ref name="label.attrib"/>
<ref name="common.attrib"/>
<ref name="funcsynopsis.role.attrib"/>
</define>
<define name="funcsynopsisinfo.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="funcsynopsisinfo">
<element name="funcsynopsisinfo">
<ref name="funcsynopsisinfo.attlist"/>
<mixed>
<zeroOrMore>
<choice>
<ref name="cptr.char.mix"/>
<ref name="lineannotation"/>
</choice>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="funcsynopsisinfo.attlist">
<ref name="linespecific.attrib"/>
<ref name="common.attrib"/>
<ref name="funcsynopsisinfo.role.attrib"/>
</define>
<define name="funcprototype.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="funcprototype">
<element name="funcprototype">
<ref name="funcprototype.attlist"/>
<ref name="funcdef"/>
<oneOrMore>
<choice>
<ref name="void"/>
<ref name="varargs"/>
<ref name="paramdef"/>
</choice>
</oneOrMore>
</element>
</define>
<define name="funcprototype.attlist">
<ref name="common.attrib"/>
<ref name="funcprototype.role.attrib"/>
</define>
<define name="funcdef.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="funcdef">
<element name="funcdef">
<ref name="funcdef.attlist"/>
<mixed>
<zeroOrMore>
<choice>
<ref name="replaceable"/>
<ref name="function"/>
</choice>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="funcdef.attlist">
<ref name="common.attrib"/>
<ref name="funcdef.role.attrib"/>
</define>
<define name="void.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="void">
<element name="void">
<ref name="void.attlist"/>
</element>
</define>
<define name="void.attlist">
<ref name="common.attrib"/>
<ref name="void.role.attrib"/>
</define>
<define name="varargs.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="varargs">
<element name="varargs">
<ref name="varargs.attlist"/>
</element>
</define>
<define name="varargs.attlist">
<ref name="common.attrib"/>
<ref name="varargs.role.attrib"/>
</define>
<define name="paramdef.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="paramdef">
<element name="paramdef">
<ref name="paramdef.attlist"/>
<mixed>
<zeroOrMore>
<choice>
<ref name="replaceable"/>
<ref name="parameter"/>
<ref name="funcparams"/>
</choice>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="paramdef.attlist">
<ref name="common.attrib"/>
<ref name="paramdef.role.attrib"/>
</define>
<define name="funcparams.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="funcparams">
<element name="funcparams">
<ref name="funcparams.attlist"/>
<mixed>
<zeroOrMore>
<ref name="cptr.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="funcparams.attlist">
<ref name="common.attrib"/>
<ref name="funcparams.role.attrib"/>
</define>
<define name="classsynopsis.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="classsynopsis">
<element name="classsynopsis">
<ref name="classsynopsis.attlist"/>
<oneOrMore>
<choice>
<ref name="ooclass"/>
<ref name="oointerface"/>
<ref name="ooexception"/>
</choice>
</oneOrMore>
<zeroOrMore>
<choice>
<ref name="classsynopsisinfo"/>
<ref name="fieldsynopsis"/>
<ref name="method.synop.class"/>
</choice>
</zeroOrMore>
</element>
</define>
<define name="classsynopsis.attlist">
<ref name="common.attrib"/>
<ref name="classsynopsis.role.attrib"/>
<optional>
<attribute name="language">
<data type="string"/>
</attribute>
</optional>
<optional>
<attribute name="class">
<choice>
<value>class</value>
<value>interface</value>
</choice>
</attribute>
</optional>
</define>
<define name="classsynopsisinfo.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="classsynopsisinfo">
<element name="classsynopsisinfo">
<ref name="classsynopsisinfo.attlist"/>
<mixed>
<zeroOrMore>
<choice>
<ref name="cptr.char.mix"/>
<ref name="lineannotation"/>
</choice>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="classsynopsisinfo.attlist">
<ref name="linespecific.attrib"/>
<ref name="common.attrib"/>
<ref name="classsynopsisinfo.role.attrib"/>
</define>
<define name="ooclass.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="ooclass">
<element name="ooclass">
<ref name="ooclass.attlist"/>
<zeroOrMore>
<ref name="modifier"/>
</zeroOrMore>
<ref name="classname"/>
</element>
</define>
<define name="ooclass.attlist">
<ref name="common.attrib"/>
<ref name="ooclass.role.attrib"/>
</define>
<define name="oointerface.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="oointerface">
<element name="oointerface">
<ref name="oointerface.attlist"/>
<zeroOrMore>
<ref name="modifier"/>
</zeroOrMore>
<ref name="interfacename"/>
</element>
</define>
<define name="oointerface.attlist">
<ref name="common.attrib"/>
<ref name="oointerface.role.attrib"/>
</define>
<define name="ooexception.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="ooexception">
<element name="ooexception">
<ref name="ooexception.attlist"/>
<zeroOrMore>
<ref name="modifier"/>
</zeroOrMore>
<ref name="exceptionname"/>
</element>
</define>
<define name="ooexception.attlist">
<ref name="common.attrib"/>
<ref name="ooexception.role.attrib"/>
</define>
<define name="modifier.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="modifier">
<element name="modifier">
<ref name="modifier.attlist"/>
<mixed>
<zeroOrMore>
<ref name="smallcptr.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="modifier.attlist">
<ref name="common.attrib"/>
<ref name="modifier.role.attrib"/>
</define>
<define name="interfacename.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="interfacename">
<element name="interfacename">
<ref name="interfacename.attlist"/>
<mixed>
<zeroOrMore>
<ref name="smallcptr.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="interfacename.attlist">
<ref name="common.attrib"/>
<ref name="interfacename.role.attrib"/>
</define>
<define name="exceptionname.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="exceptionname">
<element name="exceptionname">
<ref name="exceptionname.attlist"/>
<mixed>
<zeroOrMore>
<ref name="smallcptr.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="exceptionname.attlist">
<ref name="common.attrib"/>
<ref name="exceptionname.role.attrib"/>
</define>
<define name="fieldsynopsis.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="fieldsynopsis">
<element name="fieldsynopsis">
<ref name="fieldsynopsis.attlist"/>
<zeroOrMore>
<ref name="modifier"/>
</zeroOrMore>
<optional>
<ref name="type"/>
</optional>
<ref name="varname"/>
<optional>
<ref name="initializer"/>
</optional>
</element>
</define>
<define name="fieldsynopsis.attlist">
<ref name="common.attrib"/>
<ref name="fieldsynopsis.role.attrib"/>
</define>
<define name="initializer.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="initializer">
<element name="initializer">
<ref name="initializer.attlist"/>
<mixed>
<zeroOrMore>
<ref name="smallcptr.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="initializer.attlist">
<ref name="common.attrib"/>
<ref name="initializer.role.attrib"/>
</define>
<define name="constructorsynopsis.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="constructorsynopsis">
<element name="constructorsynopsis">
<ref name="constructorsynopsis.attlist"/>
<zeroOrMore>
<ref name="modifier"/>
</zeroOrMore>
<optional>
<ref name="methodname"/>
</optional>
<choice>
<oneOrMore>
<ref name="methodparam"/>
</oneOrMore>
<ref name="void"/>
</choice>
<zeroOrMore>
<ref name="exceptionname"/>
</zeroOrMore>
</element>
</define>
<define name="constructorsynopsis.attlist">
<ref name="common.attrib"/>
<ref name="constructorsynopsis.role.attrib"/>
</define>
<define name="destructorsynopsis.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="destructorsynopsis">
<element name="destructorsynopsis">
<ref name="destructorsynopsis.attlist"/>
<zeroOrMore>
<ref name="modifier"/>
</zeroOrMore>
<optional>
<ref name="methodname"/>
</optional>
<choice>
<oneOrMore>
<ref name="methodparam"/>
</oneOrMore>
<ref name="void"/>
</choice>
<zeroOrMore>
<ref name="exceptionname"/>
</zeroOrMore>
</element>
</define>
<define name="destructorsynopsis.attlist">
<ref name="common.attrib"/>
<ref name="destructorsynopsis.role.attrib"/>
</define>
<define name="methodsynopsis.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="methodsynopsis">
<element name="methodsynopsis">
<ref name="methodsynopsis.attlist"/>
<zeroOrMore>
<ref name="modifier"/>
</zeroOrMore>
<optional>
<choice>
<ref name="type"/>
<ref name="void"/>
</choice>
</optional>
<optional>
<ref name="methodname"/>
</optional>
<choice>
<oneOrMore>
<ref name="methodparam"/>
</oneOrMore>
<ref name="void"/>
</choice>
<zeroOrMore>
<ref name="exceptionname"/>
</zeroOrMore>
<zeroOrMore>
<ref name="modifier"/>
</zeroOrMore>
</element>
</define>
<define name="methodsynopsis.attlist">
<ref name="common.attrib"/>
<ref name="methodsynopsis.role.attrib"/>
</define>
<define name="methodname.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="methodname">
<element name="methodname">
<ref name="methodname.attlist"/>
<mixed>
<zeroOrMore>
<ref name="smallcptr.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="methodname.attlist">
<ref name="common.attrib"/>
<ref name="methodname.role.attrib"/>
</define>
<define name="methodparam.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="methodparam">
<element name="methodparam">
<ref name="methodparam.attlist"/>
<zeroOrMore>
<element name="modifier">
<text/>
</element>
</zeroOrMore>
<optional>
<element name="type">
<text/>
</element>
</optional>
<choice>
<group>
<element name="parameter">
<text/>
</element>
<optional>
<element name="initializer">
<text/>
</element>
</optional>
</group>
<element name="funcparams">
<text/>
</element>
</choice>
<zeroOrMore>
<element name="modifier">
<text/>
</element>
</zeroOrMore>
</element>
</define>
<define name="methodparam.attlist">
<ref name="common.attrib"/>
<ref name="methodparam.role.attrib"/>
<optional>
<attribute name="choice">
<choice>
<value>opt</value>
<value>req</value>
<value>plain</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="rep">
<choice>
<value>norepeat</value>
<value>repeat</value>
</choice>
</attribute>
</optional>
</define>
<define name="ackno.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="ackno">
<element name="ackno">
<ref name="ackno.attlist"/>
<mixed>
<zeroOrMore>
<ref name="docinfo.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="ackno.attlist">
<ref name="common.attrib"/>
<ref name="ackno.role.attrib"/>
</define>
<define name="address.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="address">
<element name="address">
<ref name="address.attlist"/>
<mixed>
<zeroOrMore>
<choice>
<ref name="person.ident.mix"/>
<ref name="street"/>
<ref name="pob"/>
<ref name="postcode"/>
<ref name="city"/>
<ref name="state"/>
<ref name="country"/>
<ref name="phone"/>
<ref name="fax"/>
<ref name="email"/>
<ref name="otheraddr"/>
</choice>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="address.attlist">
<ref name="linespecific.attrib"/>
<ref name="common.attrib"/>
<ref name="address.role.attrib"/>
</define>
<define name="street.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="street">
<element name="street">
<ref name="street.attlist"/>
<mixed>
<zeroOrMore>
<ref name="docinfo.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="street.attlist">
<ref name="common.attrib"/>
<ref name="street.role.attrib"/>
</define>
<define name="pob.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="pob">
<element name="pob">
<ref name="pob.attlist"/>
<mixed>
<zeroOrMore>
<ref name="docinfo.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="pob.attlist">
<ref name="common.attrib"/>
<ref name="pob.role.attrib"/>
</define>
<define name="postcode.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="postcode">
<element name="postcode">
<ref name="postcode.attlist"/>
<mixed>
<zeroOrMore>
<ref name="docinfo.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="postcode.attlist">
<ref name="common.attrib"/>
<ref name="postcode.role.attrib"/>
</define>
<define name="city.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="city">
<element name="city">
<ref name="city.attlist"/>
<mixed>
<zeroOrMore>
<ref name="docinfo.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="city.attlist">
<ref name="common.attrib"/>
<ref name="city.role.attrib"/>
</define>
<define name="state.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="state">
<element name="state">
<ref name="state.attlist"/>
<mixed>
<zeroOrMore>
<ref name="docinfo.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="state.attlist">
<ref name="common.attrib"/>
<ref name="state.role.attrib"/>
</define>
<define name="country.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="country">
<element name="country">
<ref name="country.attlist"/>
<mixed>
<zeroOrMore>
<ref name="docinfo.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="country.attlist">
<ref name="common.attrib"/>
<ref name="country.role.attrib"/>
</define>
<define name="phone.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="phone">
<element name="phone">
<ref name="phone.attlist"/>
<mixed>
<zeroOrMore>
<ref name="docinfo.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="phone.attlist">
<ref name="common.attrib"/>
<ref name="phone.role.attrib"/>
</define>
<define name="fax.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="fax">
<element name="fax">
<ref name="fax.attlist"/>
<mixed>
<zeroOrMore>
<ref name="docinfo.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="fax.attlist">
<ref name="common.attrib"/>
<ref name="fax.role.attrib"/>
</define>
<define name="otheraddr.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="otheraddr">
<element name="otheraddr">
<ref name="otheraddr.attlist"/>
<mixed>
<zeroOrMore>
<ref name="docinfo.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="otheraddr.attlist">
<ref name="common.attrib"/>
<ref name="otheraddr.role.attrib"/>
</define>
<define name="affiliation.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="affiliation">
<element name="affiliation">
<ref name="affiliation.attlist"/>
<optional>
<ref name="shortaffil"/>
</optional>
<zeroOrMore>
<ref name="jobtitle"/>
</zeroOrMore>
<optional>
<ref name="orgname"/>
</optional>
<zeroOrMore>
<ref name="orgdiv"/>
</zeroOrMore>
<zeroOrMore>
<ref name="address"/>
</zeroOrMore>
</element>
</define>
<define name="affiliation.attlist">
<ref name="common.attrib"/>
<ref name="affiliation.role.attrib"/>
</define>
<define name="shortaffil.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="shortaffil">
<element name="shortaffil">
<ref name="shortaffil.attlist"/>
<mixed>
<zeroOrMore>
<ref name="docinfo.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="shortaffil.attlist">
<ref name="common.attrib"/>
<ref name="shortaffil.role.attrib"/>
</define>
<define name="jobtitle.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="jobtitle">
<element name="jobtitle">
<ref name="jobtitle.attlist"/>
<mixed>
<zeroOrMore>
<ref name="docinfo.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="jobtitle.attlist">
<ref name="common.attrib"/>
<ref name="jobtitle.role.attrib"/>
</define>
<define name="orgdiv.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="orgdiv">
<element name="orgdiv">
<ref name="orgdiv.attlist"/>
<mixed>
<zeroOrMore>
<ref name="docinfo.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="orgdiv.attlist">
<ref name="common.attrib"/>
<ref name="orgdiv.role.attrib"/>
</define>
<define name="artpagenums.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="artpagenums">
<element name="artpagenums">
<ref name="artpagenums.attlist"/>
<mixed>
<zeroOrMore>
<ref name="docinfo.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="artpagenums.attlist">
<ref name="common.attrib"/>
<ref name="artpagenums.role.attrib"/>
</define>
<define name="author.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="author">
<element name="author">
<ref name="author.attlist"/>
<oneOrMore>
<ref name="person.ident.mix"/>
</oneOrMore>
</element>
</define>
<define name="author.attlist">
<ref name="common.attrib"/>
<ref name="author.role.attrib"/>
</define>
<define name="authorgroup.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="authorgroup">
<element name="authorgroup">
<ref name="authorgroup.attlist"/>
<oneOrMore>
<choice>
<ref name="author"/>
<ref name="editor"/>
<ref name="collab"/>
<ref name="corpauthor"/>
<ref name="othercredit"/>
</choice>
</oneOrMore>
</element>
</define>
<define name="authorgroup.attlist">
<ref name="common.attrib"/>
<ref name="authorgroup.role.attrib"/>
</define>
<define name="collab.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="collab">
<element name="collab">
<ref name="collab.attlist"/>
<ref name="collabname"/>
<zeroOrMore>
<ref name="affiliation"/>
</zeroOrMore>
</element>
</define>
<define name="collab.attlist">
<ref name="common.attrib"/>
<ref name="collab.role.attrib"/>
</define>
<define name="collabname.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="collabname">
<element name="collabname">
<ref name="collabname.attlist"/>
<mixed>
<zeroOrMore>
<ref name="docinfo.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="collabname.attlist">
<ref name="common.attrib"/>
<ref name="collabname.role.attrib"/>
</define>
<define name="authorinitials.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="authorinitials">
<element name="authorinitials">
<ref name="authorinitials.attlist"/>
<mixed>
<zeroOrMore>
<ref name="docinfo.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="authorinitials.attlist">
<ref name="common.attrib"/>
<ref name="authorinitials.role.attrib"/>
</define>
<define name="confgroup.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="confgroup">
<element name="confgroup">
<ref name="confgroup.attlist"/>
<zeroOrMore>
<choice>
<ref name="confdates"/>
<ref name="conftitle"/>
<ref name="confnum"/>
<ref name="address"/>
<ref name="confsponsor"/>
</choice>
</zeroOrMore>
</element>
</define>
<define name="confgroup.attlist">
<ref name="common.attrib"/>
<ref name="confgroup.role.attrib"/>
</define>
<define name="confdates.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="confdates">
<element name="confdates">
<ref name="confdates.attlist"/>
<mixed>
<zeroOrMore>
<ref name="docinfo.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="confdates.attlist">
<ref name="common.attrib"/>
<ref name="confdates.role.attrib"/>
</define>
<define name="conftitle.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="conftitle">
<element name="conftitle">
<ref name="conftitle.attlist"/>
<mixed>
<zeroOrMore>
<ref name="docinfo.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="conftitle.attlist">
<ref name="common.attrib"/>
<ref name="conftitle.role.attrib"/>
</define>
<define name="confnum.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="confnum">
<element name="confnum">
<ref name="confnum.attlist"/>
<mixed>
<zeroOrMore>
<ref name="docinfo.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="confnum.attlist">
<ref name="common.attrib"/>
<ref name="confnum.role.attrib"/>
</define>
<define name="confsponsor.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="confsponsor">
<element name="confsponsor">
<ref name="confsponsor.attlist"/>
<mixed>
<zeroOrMore>
<ref name="docinfo.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="confsponsor.attlist">
<ref name="common.attrib"/>
<ref name="confsponsor.role.attrib"/>
</define>
<define name="contractnum.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="contractnum">
<element name="contractnum">
<ref name="contractnum.attlist"/>
<mixed>
<zeroOrMore>
<ref name="docinfo.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="contractnum.attlist">
<ref name="common.attrib"/>
<ref name="contractnum.role.attrib"/>
</define>
<define name="contractsponsor.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="contractsponsor">
<element name="contractsponsor">
<ref name="contractsponsor.attlist"/>
<mixed>
<zeroOrMore>
<ref name="docinfo.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="contractsponsor.attlist">
<ref name="common.attrib"/>
<ref name="contractsponsor.role.attrib"/>
</define>
<define name="copyright.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="copyright">
<element name="copyright">
<ref name="copyright.attlist"/>
<oneOrMore>
<ref name="year"/>
</oneOrMore>
<zeroOrMore>
<ref name="holder"/>
</zeroOrMore>
</element>
</define>
<define name="copyright.attlist">
<ref name="common.attrib"/>
<ref name="copyright.role.attrib"/>
</define>
<define name="year.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="year">
<element name="year">
<ref name="year.attlist"/>
<mixed>
<zeroOrMore>
<ref name="docinfo.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="year.attlist">
<ref name="common.attrib"/>
<ref name="year.role.attrib"/>
</define>
<define name="holder.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="holder">
<element name="holder">
<ref name="holder.attlist"/>
<mixed>
<zeroOrMore>
<ref name="docinfo.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="holder.attlist">
<ref name="common.attrib"/>
<ref name="holder.role.attrib"/>
</define>
<define name="corpauthor.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="corpauthor">
<element name="corpauthor">
<ref name="corpauthor.attlist"/>
<mixed>
<zeroOrMore>
<ref name="docinfo.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="corpauthor.attlist">
<ref name="common.attrib"/>
<ref name="corpauthor.role.attrib"/>
</define>
<define name="corpname.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="corpname">
<element name="corpname">
<ref name="corpname.attlist"/>
<mixed>
<zeroOrMore>
<ref name="docinfo.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="corpname.attlist">
<ref name="common.attrib"/>
<ref name="corpname.role.attrib"/>
</define>
<define name="date.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="date">
<element name="date">
<ref name="date.attlist"/>
<mixed>
<zeroOrMore>
<ref name="docinfo.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="date.attlist">
<ref name="common.attrib"/>
<ref name="date.role.attrib"/>
</define>
<define name="edition.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="edition">
<element name="edition">
<ref name="edition.attlist"/>
<mixed>
<zeroOrMore>
<ref name="docinfo.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="edition.attlist">
<ref name="common.attrib"/>
<ref name="edition.role.attrib"/>
</define>
<define name="editor.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="editor">
<element name="editor">
<ref name="editor.attlist"/>
<oneOrMore>
<ref name="person.ident.mix"/>
</oneOrMore>
</element>
</define>
<define name="editor.attlist">
<ref name="common.attrib"/>
<ref name="editor.role.attrib"/>
</define>
<define name="isbn.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="isbn">
<element name="isbn">
<ref name="isbn.attlist"/>
<mixed>
<zeroOrMore>
<ref name="docinfo.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="isbn.attlist">
<ref name="common.attrib"/>
<ref name="isbn.role.attrib"/>
</define>
<define name="issn.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="issn">
<element name="issn">
<ref name="issn.attlist"/>
<mixed>
<zeroOrMore>
<ref name="docinfo.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="issn.attlist">
<ref name="common.attrib"/>
<ref name="issn.role.attrib"/>
</define>
<define name="invpartnumber.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="invpartnumber">
<element name="invpartnumber">
<ref name="invpartnumber.attlist"/>
<mixed>
<zeroOrMore>
<ref name="docinfo.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="invpartnumber.attlist">
<ref name="common.attrib"/>
<ref name="invpartnumber.role.attrib"/>
</define>
<define name="issuenum.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="issuenum">
<element name="issuenum">
<ref name="issuenum.attlist"/>
<mixed>
<zeroOrMore>
<ref name="docinfo.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="issuenum.attlist">
<ref name="common.attrib"/>
<ref name="issuenum.role.attrib"/>
</define>
<define name="legalnotice.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="legalnotice">
<element name="legalnotice">
<ref name="legalnotice.attlist"/>
<optional>
<ref name="title"/>
</optional>
<oneOrMore>
<ref name="legalnotice.mix"/>
</oneOrMore>
</element>
</define>
<define name="legalnotice.attlist">
<ref name="common.attrib"/>
<ref name="legalnotice.role.attrib"/>
</define>
<define name="modespec.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="modespec">
<element name="modespec">
<ref name="modespec.attlist"/>
<mixed>
<zeroOrMore>
<ref name="docinfo.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="modespec.attlist">
<ref name="common.attrib"/>
<ref name="modespec.role.attrib"/>
<optional>
<attribute name="application">
<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>
</define>
<define name="orgname.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="orgname">
<element name="orgname">
<ref name="orgname.attlist"/>
<mixed>
<zeroOrMore>
<ref name="docinfo.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="orgname.attlist">
<ref name="common.attrib"/>
<ref name="orgname.role.attrib"/>
</define>
<define name="othercredit.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="othercredit">
<element name="othercredit">
<ref name="othercredit.attlist"/>
<oneOrMore>
<ref name="person.ident.mix"/>
</oneOrMore>
</element>
</define>
<define name="othercredit.attlist">
<ref name="common.attrib"/>
<ref name="othercredit.role.attrib"/>
</define>
<define name="pagenums.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="pagenums">
<element name="pagenums">
<ref name="pagenums.attlist"/>
<mixed>
<zeroOrMore>
<ref name="docinfo.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="pagenums.attlist">
<ref name="common.attrib"/>
<ref name="pagenums.role.attrib"/>
</define>
<define name="contrib.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="contrib">
<element name="contrib">
<ref name="contrib.attlist"/>
<mixed>
<zeroOrMore>
<ref name="docinfo.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="contrib.attlist">
<ref name="common.attrib"/>
<ref name="contrib.role.attrib"/>
</define>
<define name="firstname.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="firstname">
<element name="firstname">
<ref name="firstname.attlist"/>
<mixed>
<zeroOrMore>
<ref name="docinfo.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="firstname.attlist">
<ref name="common.attrib"/>
<ref name="firstname.role.attrib"/>
</define>
<define name="honorific.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="honorific">
<element name="honorific">
<ref name="honorific.attlist"/>
<mixed>
<zeroOrMore>
<ref name="docinfo.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="honorific.attlist">
<ref name="common.attrib"/>
<ref name="honorific.role.attrib"/>
</define>
<define name="lineage.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="lineage">
<element name="lineage">
<ref name="lineage.attlist"/>
<mixed>
<zeroOrMore>
<ref name="docinfo.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="lineage.attlist">
<ref name="common.attrib"/>
<ref name="lineage.role.attrib"/>
</define>
<define name="othername.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="othername">
<element name="othername">
<ref name="othername.attlist"/>
<mixed>
<zeroOrMore>
<ref name="docinfo.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="othername.attlist">
<ref name="common.attrib"/>
<ref name="othername.role.attrib"/>
</define>
<define name="surname.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="surname">
<element name="surname">
<ref name="surname.attlist"/>
<mixed>
<zeroOrMore>
<ref name="docinfo.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="surname.attlist">
<ref name="common.attrib"/>
<ref name="surname.role.attrib"/>
</define>
<define name="printhistory.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="printhistory">
<element name="printhistory">
<ref name="printhistory.attlist"/>
<oneOrMore>
<ref name="para.class"/>
</oneOrMore>
</element>
</define>
<define name="printhistory.attlist">
<ref name="common.attrib"/>
<ref name="printhistory.role.attrib"/>
</define>
<define name="productname.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="productname">
<element name="productname">
<ref name="productname.attlist"/>
<mixed>
<zeroOrMore>
<ref name="para.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="productname.attlist">
<ref name="common.attrib"/>
<ref name="productname.role.attrib"/>
<optional>
<attribute name="class">
<choice>
<value>service</value>
<value>trade</value>
<value>registered</value>
<value>copyright</value>
</choice>
</attribute>
</optional>
</define>
<define name="productnumber.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="productnumber">
<element name="productnumber">
<ref name="productnumber.attlist"/>
<mixed>
<zeroOrMore>
<ref name="docinfo.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="productnumber.attlist">
<ref name="common.attrib"/>
<ref name="productnumber.role.attrib"/>
</define>
<define name="pubdate.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="pubdate">
<element name="pubdate">
<ref name="pubdate.attlist"/>
<mixed>
<zeroOrMore>
<ref name="docinfo.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="pubdate.attlist">
<ref name="common.attrib"/>
<ref name="pubdate.role.attrib"/>
</define>
<define name="publisher.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="publisher">
<element name="publisher">
<ref name="publisher.attlist"/>
<ref name="publishername"/>
<zeroOrMore>
<ref name="address"/>
</zeroOrMore>
</element>
</define>
<define name="publisher.attlist">
<ref name="common.attrib"/>
<ref name="publisher.role.attrib"/>
</define>
<define name="publishername.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="publishername">
<element name="publishername">
<ref name="publishername.attlist"/>
<mixed>
<zeroOrMore>
<ref name="docinfo.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="publishername.attlist">
<ref name="common.attrib"/>
<ref name="publishername.role.attrib"/>
</define>
<define name="pubsnumber.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="pubsnumber">
<element name="pubsnumber">
<ref name="pubsnumber.attlist"/>
<mixed>
<zeroOrMore>
<ref name="docinfo.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="pubsnumber.attlist">
<ref name="common.attrib"/>
<ref name="pubsnumber.role.attrib"/>
</define>
<define name="releaseinfo.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="releaseinfo">
<element name="releaseinfo">
<ref name="releaseinfo.attlist"/>
<mixed>
<zeroOrMore>
<ref name="docinfo.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="releaseinfo.attlist">
<ref name="common.attrib"/>
<ref name="releaseinfo.role.attrib"/>
</define>
<define name="revhistory.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="revhistory">
<element name="revhistory">
<ref name="revhistory.attlist"/>
<oneOrMore>
<ref name="revision"/>
</oneOrMore>
</element>
</define>
<define name="revhistory.attlist">
<ref name="common.attrib"/>
<ref name="revhistory.role.attrib"/>
</define>
<define name="revision.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="revision">
<element name="revision">
<ref name="revision.attlist"/>
<ref name="revnumber"/>
<ref name="date"/>
<zeroOrMore>
<ref name="authorinitials"/>
</zeroOrMore>
<optional>
<choice>
<ref name="revremark"/>
<ref name="revdescription"/>
</choice>
</optional>
</element>
</define>
<define name="revision.attlist">
<ref name="common.attrib"/>
<ref name="revision.role.attrib"/>
</define>
<define name="revnumber.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="revnumber">
<element name="revnumber">
<ref name="revnumber.attlist"/>
<mixed>
<zeroOrMore>
<ref name="docinfo.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="revnumber.attlist">
<ref name="common.attrib"/>
<ref name="revnumber.role.attrib"/>
</define>
<define name="revremark.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="revremark">
<element name="revremark">
<ref name="revremark.attlist"/>
<mixed>
<zeroOrMore>
<ref name="docinfo.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="revremark.attlist">
<ref name="common.attrib"/>
<ref name="revremark.role.attrib"/>
</define>
<define name="revdescription.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="revdescription">
<element name="revdescription">
<ref name="revdescription.attlist"/>
<oneOrMore>
<ref name="revdescription.mix"/>
</oneOrMore>
</element>
</define>
<define name="revdescription.attlist">
<ref name="common.attrib"/>
<ref name="revdescription.role.attrib"/>
</define>
<define name="seriesvolnums.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="seriesvolnums">
<element name="seriesvolnums">
<ref name="seriesvolnums.attlist"/>
<mixed>
<zeroOrMore>
<ref name="docinfo.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="seriesvolnums.attlist">
<ref name="common.attrib"/>
<ref name="seriesvolnums.role.attrib"/>
</define>
<define name="volumenum.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="volumenum">
<element name="volumenum">
<ref name="volumenum.attlist"/>
<mixed>
<zeroOrMore>
<ref name="docinfo.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="volumenum.attlist">
<ref name="common.attrib"/>
<ref name="volumenum.role.attrib"/>
</define>
<define name="accel.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="accel">
<element name="accel">
<ref name="accel.attlist"/>
<mixed>
<zeroOrMore>
<ref name="smallcptr.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="accel.attlist">
<ref name="common.attrib"/>
<ref name="accel.role.attrib"/>
</define>
<define name="action.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="action">
<element name="action">
<ref name="action.attlist"/>
<mixed>
<zeroOrMore>
<ref name="smallcptr.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="action.attlist">
<ref name="moreinfo.attrib"/>
<ref name="common.attrib"/>
<ref name="action.role.attrib"/>
</define>
<define name="application.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="application">
<element name="application">
<ref name="application.attlist"/>
<mixed>
<zeroOrMore>
<ref name="para.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="application.attlist">
<ref name="moreinfo.attrib"/>
<ref name="common.attrib"/>
<ref name="application.role.attrib"/>
<optional>
<attribute name="class">
<choice>
<value>hardware</value>
<value>software</value>
</choice>
</attribute>
</optional>
</define>
<define name="classname.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="classname">
<element name="classname">
<ref name="classname.attlist"/>
<mixed>
<zeroOrMore>
<ref name="smallcptr.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="classname.attlist">
<ref name="common.attrib"/>
<ref name="classname.role.attrib"/>
</define>
<define name="co.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="co">
<element name="co">
<ref name="co.attlist"/>
</element>
</define>
<define name="co.attlist">
<ref name="label.attrib"/>
<ref name="linkends.attrib"/>
<ref name="idreq.common.attrib"/>
<ref name="co.role.attrib"/>
</define>
<define name="command.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="command">
<element name="command">
<ref name="command.attlist"/>
<mixed>
<zeroOrMore>
<ref name="cptr.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="command.attlist">
<ref name="moreinfo.attrib"/>
<ref name="common.attrib"/>
<ref name="command.role.attrib"/>
</define>
<define name="computeroutput.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="computeroutput">
<element name="computeroutput">
<ref name="computeroutput.attlist"/>
<mixed>
<zeroOrMore>
<ref name="cptr.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="computeroutput.attlist">
<ref name="moreinfo.attrib"/>
<ref name="common.attrib"/>
<ref name="computeroutput.role.attrib"/>
</define>
<define name="database.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="database">
<element name="database">
<ref name="database.attlist"/>
<mixed>
<zeroOrMore>
<ref name="smallcptr.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="database.attlist">
<ref name="common.attrib"/>
<ref name="database.role.attrib"/>
<ref name="moreinfo.attrib"/>
<optional>
<attribute name="class">
<choice>
<value>name</value>
<value>table</value>
<value>field</value>
<value>key1</value>
<value>key2</value>
<value>record</value>
</choice>
</attribute>
</optional>
</define>
<define name="email.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="email">
<element name="email">
<ref name="email.attlist"/>
<mixed>
<zeroOrMore>
<ref name="docinfo.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="email.attlist">
<ref name="common.attrib"/>
<ref name="email.role.attrib"/>
</define>
<define name="envar.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="envar">
<element name="envar">
<ref name="envar.attlist"/>
<mixed>
<zeroOrMore>
<ref name="docinfo.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="envar.attlist">
<ref name="common.attrib"/>
<ref name="envar.role.attrib"/>
</define>
<define name="errorcode.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="errorcode">
<element name="errorcode">
<ref name="errorcode.attlist"/>
<mixed>
<zeroOrMore>
<ref name="smallcptr.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="errorcode.attlist">
<ref name="moreinfo.attrib"/>
<ref name="common.attrib"/>
<ref name="errorcode.role.attrib"/>
</define>
<define name="errorname.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="errorname">
<element name="errorname">
<ref name="errorname.attlist"/>
<mixed>
<zeroOrMore>
<ref name="smallcptr.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="errorname.attlist">
<ref name="common.attrib"/>
<ref name="errorname.role.attrib"/>
</define>
<define name="errortype.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="errortype">
<element name="errortype">
<ref name="errortype.attlist"/>
<mixed>
<zeroOrMore>
<ref name="smallcptr.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="errortype.attlist">
<ref name="common.attrib"/>
<ref name="errortype.role.attrib"/>
</define>
<define name="filename.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="filename">
<element name="filename">
<ref name="filename.attlist"/>
<mixed>
<zeroOrMore>
<ref name="smallcptr.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="filename.attlist">
<ref name="moreinfo.attrib"/>
<ref name="common.attrib"/>
<ref name="filename.role.attrib"/>
<optional>
<attribute name="class">
<choice>
<value>headerfile</value>
<value>devicefile</value>
<value>libraryfile</value>
<value>directory</value>
<value>symlink</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="path">
<data type="string"/>
</attribute>
</optional>
</define>
<define name="function.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="function">
<element name="function">
<ref name="function.attlist"/>
<mixed>
<zeroOrMore>
<ref name="cptr.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="function.attlist">
<ref name="moreinfo.attrib"/>
<ref name="common.attrib"/>
<ref name="function.role.attrib"/>
</define>
<define name="guibutton.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="guibutton">
<element name="guibutton">
<ref name="guibutton.attlist"/>
<mixed>
<zeroOrMore>
<choice>
<ref name="smallcptr.char.mix"/>
<ref name="accel"/>
</choice>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="guibutton.attlist">
<ref name="moreinfo.attrib"/>
<ref name="common.attrib"/>
<ref name="guibutton.role.attrib"/>
</define>
<define name="guiicon.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="guiicon">
<element name="guiicon">
<ref name="guiicon.attlist"/>
<mixed>
<zeroOrMore>
<choice>
<ref name="smallcptr.char.mix"/>
<ref name="accel"/>
</choice>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="guiicon.attlist">
<ref name="moreinfo.attrib"/>
<ref name="common.attrib"/>
<ref name="guiicon.role.attrib"/>
</define>
<define name="guilabel.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="guilabel">
<element name="guilabel">
<ref name="guilabel.attlist"/>
<mixed>
<zeroOrMore>
<choice>
<ref name="smallcptr.char.mix"/>
<ref name="accel"/>
</choice>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="guilabel.attlist">
<ref name="moreinfo.attrib"/>
<ref name="common.attrib"/>
<ref name="guilabel.role.attrib"/>
</define>
<define name="guimenu.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="guimenu">
<element name="guimenu">
<ref name="guimenu.attlist"/>
<mixed>
<zeroOrMore>
<choice>
<ref name="smallcptr.char.mix"/>
<ref name="accel"/>
</choice>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="guimenu.attlist">
<ref name="moreinfo.attrib"/>
<ref name="common.attrib"/>
<ref name="guimenu.role.attrib"/>
</define>
<define name="guimenuitem.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="guimenuitem">
<element name="guimenuitem">
<ref name="guimenuitem.attlist"/>
<mixed>
<zeroOrMore>
<choice>
<ref name="smallcptr.char.mix"/>
<ref name="accel"/>
</choice>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="guimenuitem.attlist">
<ref name="moreinfo.attrib"/>
<ref name="common.attrib"/>
<ref name="guimenuitem.role.attrib"/>
</define>
<define name="guisubmenu.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="guisubmenu">
<element name="guisubmenu">
<ref name="guisubmenu.attlist"/>
<mixed>
<zeroOrMore>
<choice>
<ref name="smallcptr.char.mix"/>
<ref name="accel"/>
</choice>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="guisubmenu.attlist">
<ref name="moreinfo.attrib"/>
<ref name="common.attrib"/>
<ref name="guisubmenu.role.attrib"/>
</define>
<define name="hardware.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="hardware">
<element name="hardware">
<ref name="hardware.attlist"/>
<mixed>
<zeroOrMore>
<ref name="smallcptr.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="hardware.attlist">
<ref name="moreinfo.attrib"/>
<ref name="common.attrib"/>
<ref name="hardware.role.attrib"/>
</define>
<define name="interface.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="interface">
<element name="interface">
<ref name="interface.attlist"/>
<mixed>
<zeroOrMore>
<choice>
<ref name="smallcptr.char.mix"/>
<ref name="accel"/>
</choice>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="interface.attlist">
<ref name="moreinfo.attrib"/>
<ref name="common.attrib"/>
<ref name="interface.role.attrib"/>
</define>
<define name="keycap.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="keycap">
<element name="keycap">
<ref name="keycap.attlist"/>
<mixed>
<zeroOrMore>
<ref name="smallcptr.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="keycap.attlist">
<ref name="moreinfo.attrib"/>
<ref name="common.attrib"/>
<ref name="keycap.role.attrib"/>
</define>
<define name="keycode.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="keycode">
<element name="keycode">
<ref name="keycode.attlist"/>
<mixed>
<zeroOrMore>
<ref name="smallcptr.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="keycode.attlist">
<ref name="common.attrib"/>
<ref name="keycode.role.attrib"/>
</define>
<define name="keycombo.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="keycombo">
<element name="keycombo">
<ref name="keycombo.attlist"/>
<oneOrMore>
<choice>
<ref name="keycap"/>
<ref name="keycombo"/>
<ref name="keysym"/>
<ref name="mousebutton"/>
</choice>
</oneOrMore>
</element>
</define>
<define name="keycombo.attlist">
<ref name="keyaction.attrib"/>
<ref name="moreinfo.attrib"/>
<ref name="common.attrib"/>
<ref name="keycombo.role.attrib"/>
</define>
<define name="keysysm.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="keysym">
<element name="keysym">
<ref name="keysym.attlist"/>
<mixed>
<zeroOrMore>
<ref name="smallcptr.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="keysym.attlist">
<ref name="common.attrib"/>
<ref name="keysysm.role.attrib"/>
</define>
<define name="lineannotation.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="lineannotation">
<element name="lineannotation">
<ref name="lineannotation.attlist"/>
<mixed>
<zeroOrMore>
<ref name="para.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="lineannotation.attlist">
<ref name="common.attrib"/>
<ref name="lineannotation.role.attrib"/>
</define>
<define name="literal.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="literal">
<element name="literal">
<ref name="literal.attlist"/>
<mixed>
<zeroOrMore>
<ref name="cptr.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="literal.attlist">
<ref name="moreinfo.attrib"/>
<ref name="common.attrib"/>
<ref name="literal.role.attrib"/>
</define>
<define name="constant.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="constant">
<element name="constant">
<ref name="constant.attlist"/>
<mixed>
<zeroOrMore>
<ref name="smallcptr.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="constant.attlist">
<ref name="common.attrib"/>
<ref name="constant.role.attrib"/>
<optional>
<attribute name="class">
<value>limit</value>
</attribute>
</optional>
</define>
<define name="varname.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="varname">
<element name="varname">
<ref name="varname.attlist"/>
<mixed>
<zeroOrMore>
<ref name="smallcptr.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="varname.attlist">
<ref name="common.attrib"/>
<ref name="varname.role.attrib"/>
</define>
<define name="markup.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="markup">
<element name="markup">
<ref name="markup.attlist"/>
<mixed>
<zeroOrMore>
<ref name="smallcptr.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="markup.attlist">
<ref name="common.attrib"/>
<ref name="markup.role.attrib"/>
</define>
<define name="medialabel.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="medialabel">
<element name="medialabel">
<ref name="medialabel.attlist"/>
<mixed>
<zeroOrMore>
<ref name="smallcptr.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="medialabel.attlist">
<ref name="common.attrib"/>
<ref name="medialabel.role.attrib"/>
<optional>
<attribute name="class">
<choice>
<value>cartridge</value>
<value>cdrom</value>
<value>disk</value>
<value>tape</value>
</choice>
</attribute>
</optional>
</define>
<define name="menuchoice.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="menuchoice">
<element name="menuchoice">
<ref name="menuchoice.attlist"/>
<optional>
<ref name="shortcut"/>
</optional>
<oneOrMore>
<choice>
<ref name="guibutton"/>
<ref name="guiicon"/>
<ref name="guilabel"/>
<ref name="guimenu"/>
<ref name="guimenuitem"/>
<ref name="guisubmenu"/>
<ref name="interface"/>
</choice>
</oneOrMore>
</element>
</define>
<define name="menuchoice.attlist">
<ref name="moreinfo.attrib"/>
<ref name="common.attrib"/>
<ref name="menuchoice.role.attrib"/>
</define>
<define name="shortcut.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="shortcut">
<element name="shortcut">
<ref name="shortcut.attlist"/>
<oneOrMore>
<choice>
<ref name="keycap"/>
<ref name="keycombo"/>
<ref name="keysym"/>
<ref name="mousebutton"/>
</choice>
</oneOrMore>
</element>
</define>
<define name="shortcut.attlist">
<ref name="keyaction.attrib"/>
<ref name="moreinfo.attrib"/>
<ref name="common.attrib"/>
<ref name="shortcut.role.attrib"/>
</define>
<define name="mousebutton.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="mousebutton">
<element name="mousebutton">
<ref name="mousebutton.attlist"/>
<mixed>
<zeroOrMore>
<ref name="smallcptr.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="mousebutton.attlist">
<ref name="moreinfo.attrib"/>
<ref name="common.attrib"/>
<ref name="mousebutton.role.attrib"/>
</define>
<define name="msgtext.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="msgtext">
<element name="msgtext">
<ref name="msgtext.attlist"/>
<oneOrMore>
<ref name="component.mix"/>
</oneOrMore>
</element>
</define>
<define name="msgtext.attlist">
<ref name="common.attrib"/>
<ref name="msgtext.role.attrib"/>
</define>
<define name="option.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="option">
<element name="option">
<ref name="option.attlist"/>
<mixed>
<zeroOrMore>
<ref name="smallcptr.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="option.attlist">
<ref name="common.attrib"/>
<ref name="option.role.attrib"/>
</define>
<define name="optional.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="optional">
<element name="optional">
<ref name="optional.attlist"/>
<mixed>
<zeroOrMore>
<ref name="cptr.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="optional.attlist">
<ref name="common.attrib"/>
<ref name="optional.role.attrib"/>
</define>
<define name="parameter.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="parameter">
<element name="parameter">
<ref name="parameter.attlist"/>
<mixed>
<zeroOrMore>
<ref name="smallcptr.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="parameter.attlist">
<ref name="moreinfo.attrib"/>
<ref name="common.attrib"/>
<ref name="parameter.role.attrib"/>
<optional>
<attribute name="class">
<choice>
<value>command</value>
<value>function</value>
<value>option</value>
</choice>
</attribute>
</optional>
</define>
<define name="prompt.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="prompt">
<element name="prompt">
<ref name="prompt.attlist"/>
<mixed>
<zeroOrMore>
<ref name="smallcptr.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="prompt.attlist">
<ref name="moreinfo.attrib"/>
<ref name="common.attrib"/>
<ref name="prompt.role.attrib"/>
</define>
<define name="property.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="property">
<element name="property">
<ref name="property.attlist"/>
<mixed>
<zeroOrMore>
<ref name="smallcptr.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="property.attlist">
<ref name="moreinfo.attrib"/>
<ref name="common.attrib"/>
<ref name="property.role.attrib"/>
</define>
<define name="replaceable.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="replaceable">
<element name="replaceable">
<ref name="replaceable.attlist"/>
<mixed>
<zeroOrMore>
<choice>
<ref name="link.char.class"/>
<ref name="optional"/>
<ref name="base.char.class"/>
<ref name="other.char.class"/>
<ref name="inlinegraphic"/>
<ref name="inlinemediaobject"/>
</choice>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="replaceable.attlist">
<ref name="common.attrib"/>
<ref name="replaceable.role.attrib"/>
<optional>
<attribute name="class">
<choice>
<value>command</value>
<value>function</value>
<value>option</value>
<value>parameter</value>
</choice>
</attribute>
</optional>
</define>
<define name="returnvalue.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="returnvalue">
<element name="returnvalue">
<ref name="returnvalue.attlist"/>
<mixed>
<zeroOrMore>
<ref name="smallcptr.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="returnvalue.attlist">
<ref name="common.attrib"/>
<ref name="returnvalue.role.attrib"/>
</define>
<define name="sgmltag.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="sgmltag">
<element name="sgmltag">
<ref name="sgmltag.attlist"/>
<mixed>
<zeroOrMore>
<ref name="smallcptr.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="sgmltag.attlist">
<ref name="common.attrib"/>
<ref name="sgmltag.role.attrib"/>
<optional>
<attribute name="class">
<choice>
<value>attribute</value>
<value>attvalue</value>
<value>element</value>
<value>endtag</value>
<value>emptytag</value>
<value>genentity</value>
<value>numcharref</value>
<value>paramentity</value>
<value>pi</value>
<value>xmlpi</value>
<value>starttag</value>
<value>sgmlcomment</value>
</choice>
</attribute>
</optional>
</define>
<define name="structfield.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="structfield">
<element name="structfield">
<ref name="structfield.attlist"/>
<mixed>
<zeroOrMore>
<ref name="smallcptr.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="structfield.attlist">
<ref name="common.attrib"/>
<ref name="structfield.role.attrib"/>
</define>
<define name="structname.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="structname">
<element name="structname">
<ref name="structname.attlist"/>
<mixed>
<zeroOrMore>
<ref name="smallcptr.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="structname.attlist">
<ref name="common.attrib"/>
<ref name="structname.role.attrib"/>
</define>
<define name="symbol.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="symbol">
<element name="symbol">
<ref name="symbol.attlist"/>
<mixed>
<zeroOrMore>
<ref name="smallcptr.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="symbol.attlist">
<ref name="common.attrib"/>
<ref name="symbol.role.attrib"/>
<optional>
<attribute name="class">
<value>limit</value>
</attribute>
</optional>
</define>
<define name="systemitem.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="systemitem">
<element name="systemitem">
<ref name="systemitem.attlist"/>
<mixed>
<zeroOrMore>
<choice>
<ref name="smallcptr.char.mix"/>
<ref name="acronym"/>
</choice>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="systemitem.attlist">
<ref name="moreinfo.attrib"/>
<ref name="common.attrib"/>
<ref name="systemitem.role.attrib"/>
<optional>
<attribute name="class">
<choice>
<value>constant</value>
<value>groupname</value>
<value>library</value>
<value>macro</value>
<value>osname</value>
<value>resource</value>
<value>systemname</value>
<value>username</value>
</choice>
</attribute>
</optional>
</define>
<define name="token.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="token">
<element name="token">
<ref name="token.attlist"/>
<mixed>
<zeroOrMore>
<ref name="smallcptr.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="token.attlist">
<ref name="common.attrib"/>
<ref name="token.role.attrib"/>
</define>
<define name="type.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="type">
<element name="type">
<ref name="type.attlist"/>
<mixed>
<zeroOrMore>
<ref name="smallcptr.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="type.attlist">
<ref name="common.attrib"/>
<ref name="type.role.attrib"/>
</define>
<define name="userinput.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="userinput">
<element name="userinput">
<ref name="userinput.attlist"/>
<mixed>
<zeroOrMore>
<ref name="cptr.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="userinput.attlist">
<ref name="moreinfo.attrib"/>
<ref name="common.attrib"/>
<ref name="userinput.role.attrib"/>
</define>
<define name="abbrev.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="abbrev">
<element name="abbrev">
<ref name="abbrev.attlist"/>
<mixed>
<zeroOrMore>
<ref name="word.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="abbrev.attlist">
<ref name="common.attrib"/>
<ref name="abbrev.role.attrib"/>
</define>
<define name="acronym.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="acronym">
<element name="acronym">
<ref name="acronym.attlist"/>
<mixed>
<zeroOrMore>
<ref name="word.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="acronym.attlist">
<ref name="common.attrib"/>
<ref name="acronym.role.attrib"/>
</define>
<define name="citation.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="citation">
<element name="citation">
<ref name="citation.attlist"/>
<mixed>
<zeroOrMore>
<ref name="para.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="citation.attlist">
<ref name="common.attrib"/>
<ref name="citation.role.attrib"/>
</define>
<define name="citerefentry.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="citerefentry">
<element name="citerefentry">
<ref name="citerefentry.attlist"/>
<ref name="refentrytitle"/>
<optional>
<ref name="manvolnum"/>
</optional>
</element>
</define>
<define name="citerefentry.attlist">
<ref name="common.attrib"/>
<ref name="citerefentry.role.attrib"/>
</define>
<define name="refentrytitle.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="refentrytitle">
<element name="refentrytitle">
<ref name="refentrytitle.attlist"/>
<mixed>
<zeroOrMore>
<ref name="para.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="refentrytitle.attlist">
<ref name="common.attrib"/>
<ref name="refentrytitle.role.attrib"/>
</define>
<define name="namvolnum.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="manvolnum">
<element name="manvolnum">
<ref name="manvolnum.attlist"/>
<mixed>
<zeroOrMore>
<ref name="word.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="manvolnum.attlist">
<ref name="common.attrib"/>
<ref name="namvolnum.role.attrib"/>
</define>
<define name="citetitle.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="citetitle">
<element name="citetitle">
<ref name="citetitle.attlist"/>
<mixed>
<zeroOrMore>
<ref name="para.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="citetitle.attlist">
<ref name="common.attrib"/>
<ref name="citetitle.role.attrib"/>
<optional>
<attribute name="pubwork">
<choice>
<value>article</value>
<value>book</value>
<value>chapter</value>
<value>part</value>
<value>refentry</value>
<value>section</value>
<value>journal</value>
<value>series</value>
<value>set</value>
<value>manuscript</value>
</choice>
</attribute>
</optional>
</define>
<define name="emphasis.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="emphasis">
<element name="emphasis">
<ref name="emphasis.attlist"/>
<mixed>
<zeroOrMore>
<ref name="para.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="emphasis.attlist">
<ref name="common.attrib"/>
<ref name="emphasis.role.attrib"/>
</define>
<define name="firstterm.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="firstterm">
<element name="firstterm">
<ref name="firstterm.attlist"/>
<mixed>
<zeroOrMore>
<ref name="word.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="firstterm.attlist">
<ref name="common.attrib"/>
<ref name="firstterm.role.attrib"/>
<ref name="linkend.attrib"/>
</define>
<define name="foreignphrase.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="foreignphrase">
<element name="foreignphrase">
<ref name="foreignphrase.attlist"/>
<mixed>
<zeroOrMore>
<ref name="para.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="foreignphrase.attlist">
<ref name="common.attrib"/>
<ref name="foreignphrase.role.attrib"/>
</define>
<define name="glossterm.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="glossterm">
<element name="glossterm">
<ref name="glossterm.attlist"/>
<mixed>
<zeroOrMore>
<ref name="para.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="glossterm.attlist">
<ref name="common.attrib"/>
<ref name="glossterm.role.attrib"/>
<ref name="linkend.attrib"/>
<optional>
<attribute name="baseform">
<data type="string"/>
</attribute>
</optional>
</define>
<define name="phrase.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="phrase">
<element name="phrase">
<ref name="phrase.attlist"/>
<mixed>
<zeroOrMore>
<ref name="para.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="phrase.attlist">
<ref name="common.attrib"/>
<ref name="phrase.role.attrib"/>
</define>
<define name="quote.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="quote">
<element name="quote">
<ref name="quote.attlist"/>
<mixed>
<zeroOrMore>
<ref name="para.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="quote.attlist">
<ref name="common.attrib"/>
<ref name="quote.role.attrib"/>
</define>
<define name="ssscript.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="subscriptContentModel">
<zeroOrMore>
<choice>
<ref name="link.char.class"/>
<ref name="emphasis"/>
<ref name="replaceable"/>
<ref name="symbol"/>
<ref name="inlinegraphic"/>
<ref name="inlinemediaobject"/>
<ref name="base.char.class"/>
<ref name="other.char.class"/>
</choice>
</zeroOrMore>
</define>
<define name="subscript">
<element name="subscript">
<ref name="subscript.attlist"/>
<mixed>
<zeroOrMore>
<ref name="subscriptContentModel"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="subscript.attlist">
<ref name="common.attrib"/>
<ref name="ssscript.role.attrib"/>
</define>
<define name="superscript">
<element name="superscript">
<ref name="superscript.attlist"/>
<mixed>
<zeroOrMore>
<ref name="subscriptContentModel"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="superscript.attlist">
<ref name="common.attrib"/>
<ref name="ssscript.role.attrib"/>
</define>
<define name="trademark.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="trademark">
<element name="trademark">
<ref name="trademark.attlist"/>
<mixed>
<zeroOrMore>
<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="emphasis"/>
</choice>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="trademark.attlist">
<ref name="common.attrib"/>
<ref name="trademark.role.attrib"/>
<optional>
<attribute name="class">
<choice>
<value>service</value>
<value>trade</value>
<value>registered</value>
<value>copyright</value>
</choice>
</attribute>
</optional>
</define>
<define name="wordasword.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="wordasword">
<element name="wordasword">
<ref name="wordasword.attlist"/>
<mixed>
<zeroOrMore>
<ref name="word.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="wordasword.attlist">
<ref name="common.attrib"/>
<ref name="wordasword.role.attrib"/>
</define>
<define name="link.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="link">
<element name="link">
<ref name="link.attlist"/>
<mixed>
<zeroOrMore>
<ref name="para.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="link.attlist">
<ref name="linkendreq.attrib"/>
<ref name="common.attrib"/>
<ref name="link.role.attrib"/>
<optional>
<attribute name="endterm">
<data type="IDREF"/>
</attribute>
</optional>
<optional>
<attribute name="type">
<data type="string"/>
</attribute>
</optional>
</define>
<define name="olink.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="olink">
<element name="olink">
<ref name="olink.attlist"/>
<mixed>
<zeroOrMore>
<ref name="para.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="olink.attlist">
<ref name="common.attrib"/>
<ref name="olink.role.attrib"/>
<optional>
<attribute name="linkmode">
<data type="IDREF"/>
</attribute>
</optional>
<optional>
<attribute name="localinfo">
<data type="string"/>
</attribute>
</optional>
<optional>
<attribute name="type">
<data type="string"/>
</attribute>
</optional>
</define>
<define name="ulink.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="ulink">
<element name="ulink">
<ref name="ulink.attlist"/>
<mixed>
<zeroOrMore>
<ref name="para.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="ulink.attlist">
<ref name="common.attrib"/>
<ref name="ulink.role.attrib"/>
<attribute name="url">
<data type="string"/>
</attribute>
<optional>
<attribute name="type">
<data type="string"/>
</attribute>
</optional>
</define>
<define name="footnoteref.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="footnoteref">
<element name="footnoteref">
<ref name="footnoteref.attlist"/>
</element>
</define>
<define name="footnoteref.attlist">
<ref name="linkendreq.attrib"/>
<ref name="label.attrib"/>
<ref name="common.attrib"/>
<ref name="footnoteref.role.attrib"/>
</define>
<define name="xref.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="xref">
<element name="xref">
<ref name="xref.attlist"/>
</element>
</define>
<define name="xref.attlist">
<ref name="linkendreq.attrib"/>
<ref name="common.attrib"/>
<ref name="xref.role.attrib"/>
<optional>
<attribute name="endterm">
<data type="IDREF"/>
</attribute>
</optional>
</define>
<define name="anchor.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="anchor">
<element name="anchor">
<ref name="anchor.attlist"/>
</element>
</define>
<define name="anchor.attlist">
<ref name="idreq.attrib"/>
<ref name="pagenum.attrib"/>
<ref name="remap.attrib"/>
<ref name="xreflabel.attrib"/>
<ref name="revisionflag.attrib"/>
<ref name="effectivity.attrib"/>
<ref name="anchor.role.attrib"/>
</define>
<define name="beginpage.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="beginpage">
<element name="beginpage">
<ref name="beginpage.attlist"/>
</element>
</define>
<define name="beginpage.attlist">
<ref name="pagenum.attrib"/>
<ref name="common.attrib"/>
<ref name="beginpage.role.attrib"/>
</define>
<define name="indexterm.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="indexterm">
<element name="indexterm">
<ref name="indexterm.attlist"/>
<optional>
<ref name="primary"/>
</optional>
<optional>
<choice>
<group>
<ref name="secondary"/>
<optional>
<choice>
<group>
<ref name="tertiary"/>
<optional>
<choice>
<ref name="see"/>
<oneOrMore>
<ref name="seealso"/>
</oneOrMore>
</choice>
</optional>
</group>
<ref name="see"/>
<oneOrMore>
<ref name="seealso"/>
</oneOrMore>
</choice>
</optional>
</group>
<ref name="see"/>
<oneOrMore>
<ref name="seealso"/>
</oneOrMore>
</choice>
</optional>
</element>
</define>
<define name="indexterm.attlist">
<ref name="common.attrib"/>
<ref name="indexterm.role.attrib"/>
<ref name="pagenum.attrib"/>
<optional>
<attribute name="scope">
<choice>
<value>all</value>
<value>global</value>
<value>local</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="significance">
<choice>
<value>preferred</value>
<value>normal</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="class">
<choice>
<value>singular</value>
<value>startofrange</value>
<value>endofrange</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="startref">
<data type="IDREF"/>
</attribute>
</optional>
<optional>
<attribute name="zone">
<data type="IDREFS"/>
</attribute>
</optional>
</define>
<define name="primsecter.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="primary">
<element name="primary">
<ref name="primary.attlist"/>
<mixed>
<zeroOrMore>
<ref name="ndxterm.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="primary.attlist">
<ref name="common.attrib"/>
<ref name="primsecter.role.attrib"/>
<optional>
<attribute name="sortas">
<data type="string"/>
</attribute>
</optional>
</define>
<define name="secondary">
<element name="secondary">
<ref name="secondary.attlist"/>
<mixed>
<zeroOrMore>
<ref name="ndxterm.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="secondary.attlist">
<ref name="common.attrib"/>
<ref name="primsecter.role.attrib"/>
<optional>
<attribute name="sortas">
<data type="string"/>
</attribute>
</optional>
</define>
<define name="tertiary">
<element name="tertiary">
<ref name="tertiary.attlist"/>
<mixed>
<zeroOrMore>
<ref name="ndxterm.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="tertiary.attlist">
<ref name="common.attrib"/>
<ref name="primsecter.role.attrib"/>
<optional>
<attribute name="sortas">
<data type="string"/>
</attribute>
</optional>
</define>
<define name="seeseealso.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="see">
<element name="see">
<ref name="see.attlist"/>
<mixed>
<zeroOrMore>
<ref name="ndxterm.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="see.attlist">
<ref name="common.attrib"/>
<ref name="seeseealso.role.attrib"/>
</define>
<define name="seealso">
<element name="seealso">
<ref name="seealso.attlist"/>
<mixed>
<zeroOrMore>
<ref name="ndxterm.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="seealso.attlist">
<ref name="common.attrib"/>
<ref name="seeseealso.role.attrib"/>
</define>
<define name="appendix.class">
<ref name="appendix"/>
</define>
<define name="article.class">
<ref name="article"/>
</define>
<define name="book.class">
<ref name="book"/>
</define>
<define name="chapter.class">
<ref name="chapter"/>
</define>
<define name="index.class">
<choice>
<ref name="index"/>
<ref name="setindex"/>
</choice>
</define>
<define name="refentry.class">
<ref name="refentry"/>
</define>
<define name="nav.class">
<choice>
<ref name="toc"/>
<ref name="lot"/>
<ref name="index"/>
<ref name="glossary"/>
<ref name="bibliography"/>
</choice>
</define>
<define name="divcomponent.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="refcomponent.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="indexdivcomponent.mix">
<choice>
<ref name="itemizedlist"/>
<ref name="orderedlist"/>
<ref name="variablelist"/>
<ref name="simplelist"/>
<ref name="linespecific.class"/>
<ref name="synop.class"/>
<ref name="para.class"/>
<ref name="informal.class"/>
<ref name="anchor"/>
<ref name="remark"/>
<ref name="link.char.class"/>
<ref name="beginpage"/>
</choice>
</define>
<define name="refname.char.mix">
<ref name="tech.char.class"/>
</define>
<define name="partcontent.mix">
<choice>
<ref name="appendix.class"/>
<ref name="chapter.class"/>
<ref name="nav.class"/>
<ref name="article.class"/>
<ref name="preface"/>
<ref name="refentry.class"/>
<ref name="reference"/>
</choice>
</define>
<define name="refinline.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="ndxterm.class"/>
<ref name="beginpage"/>
</choice>
</define>
<define name="refclass.char.mix">
<ref name="application"/>
</define>
<define name="div.title.content">
<ref name="title"/>
<optional>
<ref name="subtitle"/>
</optional>
<optional>
<ref name="titleabbrev"/>
</optional>
</define>
<define name="bookcomponent.title.content">
<ref name="title"/>
<optional>
<ref name="subtitle"/>
</optional>
<optional>
<ref name="titleabbrev"/>
</optional>
</define>
<define name="sect.title.content">
<ref name="title"/>
<optional>
<ref name="subtitle"/>
</optional>
<optional>
<ref name="titleabbrev"/>
</optional>
</define>
<define name="refsect.title.content">
<ref name="title"/>
<optional>
<ref name="subtitle"/>
</optional>
<optional>
<ref name="titleabbrev"/>
</optional>
</define>
<define name="bookcomponent.content">
<choice>
<group>
<oneOrMore>
<ref name="divcomponent.mix"/>
</oneOrMore>
<choice>
<zeroOrMore>
<ref name="sect1"/>
</zeroOrMore>
<zeroOrMore>
<ref name="refentry.class"/>
</zeroOrMore>
<zeroOrMore>
<ref name="simplesect"/>
</zeroOrMore>
<zeroOrMore>
<ref name="section"/>
</zeroOrMore>
</choice>
</group>
<choice>
<oneOrMore>
<ref name="sect1"/>
</oneOrMore>
<oneOrMore>
<ref name="refentry.class"/>
</oneOrMore>
<oneOrMore>
<ref name="simplesect"/>
</oneOrMore>
<oneOrMore>
<ref name="section"/>
</oneOrMore>
</choice>
</choice>
</define>
<define name="set.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="set">
<element name="set">
<ref name="set.attlist"/>
<optional>
<ref name="div.title.content"/>
</optional>
<optional>
<ref name="setinfo"/>
</optional>
<optional>
<ref name="toc"/>
</optional>
<oneOrMore>
<ref name="book.class"/>
</oneOrMore>
<optional>
<ref name="setindex"/>
</optional>
</element>
</define>
<define name="set.attlist">
<ref name="status.attrib"/>
<ref name="common.attrib"/>
<ref name="set.role.attrib"/>
<optional>
<attribute name="fpi">
<data type="string"/>
</attribute>
</optional>
</define>
<define name="setinfo.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="setinfo">
<element name="setinfo">
<ref name="setinfo.attlist"/>
<ref name="infoContentModel"/>
</element>
</define>
<define name="setinfo.attlist">
<ref name="common.attrib"/>
<ref name="setinfo.role.attrib"/>
<optional>
<attribute name="contents">
<data type="IDREFS"/>
</attribute>
</optional>
</define>
<define name="book.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="book">
<element name="book">
<ref name="book.attlist"/>
<optional>
<ref name="div.title.content"/>
</optional>
<optional>
<ref name="bookinfo"/>
</optional>
<zeroOrMore>
<choice>
<ref name="dedication"/>
<ref name="toc"/>
<ref name="lot"/>
<ref name="glossary"/>
<ref name="bibliography"/>
<ref name="preface"/>
<ref name="chapter.class"/>
<ref name="reference"/>
<ref name="part"/>
<ref name="article.class"/>
<ref name="appendix.class"/>
<ref name="index.class"/>
<ref name="colophon"/>
</choice>
</zeroOrMore>
</element>
</define>
<define name="book.attlist">
<ref name="label.attrib"/>
<ref name="status.attrib"/>
<ref name="common.attrib"/>
<ref name="book.role.attrib"/>
<optional>
<attribute name="fpi">
<data type="string"/>
</attribute>
</optional>
</define>
<define name="bookinfo.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="bookinfo">
<element name="bookinfo">
<ref name="bookinfo.attlist"/>
<ref name="infoContentModel"/>
</element>
</define>
<define name="bookinfo.attlist">
<ref name="common.attrib"/>
<ref name="bookinfo.role.attrib"/>
<optional>
<attribute name="contents">
<data type="IDREFS"/>
</attribute>
</optional>
</define>
<define name="dedication.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="dedication">
<element name="dedication">
<ref name="dedication.attlist"/>
<optional>
<ref name="sect.title.content"/>
</optional>
<oneOrMore>
<ref name="legalnotice.mix"/>
</oneOrMore>
</element>
</define>
<define name="dedication.attlist">
<ref name="status.attrib"/>
<ref name="common.attrib"/>
<ref name="dedication.role.attrib"/>
</define>
<define name="colophon.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="colophon">
<element name="colophon">
<ref name="colophon.attlist"/>
<optional>
<ref name="sect.title.content"/>
</optional>
<oneOrMore>
<ref name="textobject.mix"/>
</oneOrMore>
</element>
</define>
<define name="colophon.attlist">
<ref name="status.attrib"/>
<ref name="common.attrib"/>
<ref name="colophon.role.attrib"/>
</define>
<define name="toc.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="toc">
<element name="toc">
<ref name="toc.attlist"/>
<optional>
<ref name="bookcomponent.title.content"/>
</optional>
<zeroOrMore>
<ref name="tocfront"/>
</zeroOrMore>
<zeroOrMore>
<choice>
<ref name="tocpart"/>
<ref name="tocchap"/>
</choice>
</zeroOrMore>
<zeroOrMore>
<ref name="tocback"/>
</zeroOrMore>
</element>
</define>
<define name="toc.attlist">
<ref name="pagenum.attrib"/>
<ref name="common.attrib"/>
<ref name="toc.role.attrib"/>
</define>
<define name="tocfront.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="tocfront">
<element name="tocfront">
<ref name="tocfront.attlist"/>
<mixed>
<zeroOrMore>
<ref name="para.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="tocfront.attlist">
<ref name="label.attrib"/>
<ref name="linkend.attrib"/>
<ref name="pagenum.attrib"/>
<ref name="common.attrib"/>
<ref name="tocfront.role.attrib"/>
</define>
<define name="tocentry.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="tocentry">
<element name="tocentry">
<ref name="tocentry.attlist"/>
<mixed>
<zeroOrMore>
<ref name="para.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="tocentry.attlist">
<ref name="linkend.attrib"/>
<ref name="pagenum.attrib"/>
<ref name="common.attrib"/>
<ref name="tocentry.role.attrib"/>
</define>
<define name="tocpart.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="tocpart">
<element name="tocpart">
<ref name="tocpart.attlist"/>
<oneOrMore>
<ref name="tocentry"/>
</oneOrMore>
<zeroOrMore>
<ref name="tocchap"/>
</zeroOrMore>
</element>
</define>
<define name="tocpart.attlist">
<ref name="common.attrib"/>
<ref name="tocpart.role.attrib"/>
</define>
<define name="tocchap.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="tocchap">
<element name="tocchap">
<ref name="tocchap.attlist"/>
<oneOrMore>
<ref name="tocentry"/>
</oneOrMore>
<zeroOrMore>
<ref name="toclevel1"/>
</zeroOrMore>
</element>
</define>
<define name="tocchap.attlist">
<ref name="label.attrib"/>
<ref name="common.attrib"/>
<ref name="tocchap.role.attrib"/>
</define>
<define name="toclevel1.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="toclevel1">
<element name="toclevel1">
<ref name="toclevel1.attlist"/>
<oneOrMore>
<ref name="tocentry"/>
</oneOrMore>
<zeroOrMore>
<ref name="toclevel2"/>
</zeroOrMore>
</element>
</define>
<define name="toclevel1.attlist">
<ref name="common.attrib"/>
<ref name="toclevel1.role.attrib"/>
</define>
<define name="toclevel2.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="toclevel2">
<element name="toclevel2">
<ref name="toclevel2.attlist"/>
<oneOrMore>
<ref name="tocentry"/>
</oneOrMore>
<zeroOrMore>
<ref name="toclevel3"/>
</zeroOrMore>
</element>
</define>
<define name="toclevel2.attlist">
<ref name="common.attrib"/>
<ref name="toclevel2.role.attrib"/>
</define>
<define name="toclevel3.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="toclevel3">
<element name="toclevel3">
<ref name="toclevel3.attlist"/>
<oneOrMore>
<ref name="tocentry"/>
</oneOrMore>
<zeroOrMore>
<ref name="toclevel4"/>
</zeroOrMore>
</element>
</define>
<define name="toclevel3.attlist">
<ref name="common.attrib"/>
<ref name="toclevel3.role.attrib"/>
</define>
<define name="toclevel4.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="toclevel4">
<element name="toclevel4">
<ref name="toclevel4.attlist"/>
<oneOrMore>
<ref name="tocentry"/>
</oneOrMore>
<zeroOrMore>
<ref name="toclevel5"/>
</zeroOrMore>
</element>
</define>
<define name="toclevel4.attlist">
<ref name="common.attrib"/>
<ref name="toclevel4.role.attrib"/>
</define>
<define name="toclevel5.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="toclevel5">
<element name="toclevel5">
<ref name="toclevel5.attlist"/>
<oneOrMore>
<ref name="tocentry"/>
</oneOrMore>
</element>
</define>
<define name="toclevel5.attlist">
<ref name="common.attrib"/>
<ref name="toclevel5.role.attrib"/>
</define>
<define name="tocback.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="tocback">
<element name="tocback">
<ref name="tocback.attlist"/>
<mixed>
<zeroOrMore>
<ref name="para.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="tocback.attlist">
<ref name="label.attrib"/>
<ref name="linkend.attrib"/>
<ref name="pagenum.attrib"/>
<ref name="common.attrib"/>
<ref name="tocback.role.attrib"/>
</define>
<define name="lot.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="lot">
<element name="lot">
<ref name="lot.attlist"/>
<optional>
<ref name="bookcomponent.title.content"/>
</optional>
<zeroOrMore>
<ref name="lotentry"/>
</zeroOrMore>
</element>
</define>
<define name="lot.attlist">
<ref name="label.attrib"/>
<ref name="common.attrib"/>
<ref name="lot.role.attrib"/>
</define>
<define name="lotentry.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="lotentry">
<element name="lotentry">
<ref name="lotentry.attlist"/>
<mixed>
<zeroOrMore>
<ref name="para.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="lotentry.attlist">
<ref name="pagenum.attrib"/>
<ref name="common.attrib"/>
<ref name="linkend.attrib"/>
<ref name="lotentry.role.attrib"/>
<optional>
<attribute name="srccredit">
<data type="string"/>
</attribute>
</optional>
</define>
<define name="appendix.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="appendix">
<element name="appendix">
<ref name="appendix.attlist"/>
<optional>
<ref name="appendixinfo"/>
</optional>
<ref name="bookcomponent.title.content"/>
<zeroOrMore>
<ref name="nav.class"/>
</zeroOrMore>
<optional>
<ref name="tocchap"/>
</optional>
<ref name="bookcomponent.content"/>
<zeroOrMore>
<ref name="nav.class"/>
</zeroOrMore>
</element>
</define>
<define name="appendix.attlist">
<ref name="label.attrib"/>
<ref name="status.attrib"/>
<ref name="common.attrib"/>
<ref name="appendix.role.attrib"/>
</define>
<define name="chapter.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="chapter">
<element name="chapter">
<ref name="chapter.attlist"/>
<optional>
<ref name="chapterinfo"/>
</optional>
<ref name="bookcomponent.title.content"/>
<zeroOrMore>
<ref name="nav.class"/>
</zeroOrMore>
<optional>
<ref name="tocchap"/>
</optional>
<ref name="bookcomponent.content"/>
<zeroOrMore>
<ref name="nav.class"/>
</zeroOrMore>
</element>
</define>
<define name="chapter.attlist">
<ref name="label.attrib"/>
<ref name="status.attrib"/>
<ref name="common.attrib"/>
<ref name="chapter.role.attrib"/>
</define>
<define name="part.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="part">
<element name="part">
<ref name="part.attlist"/>
<optional>
<ref name="partinfo"/>
</optional>
<ref name="bookcomponent.title.content"/>
<optional>
<ref name="partintro"/>
</optional>
<oneOrMore>
<ref name="partcontent.mix"/>
</oneOrMore>
</element>
</define>
<define name="part.attlist">
<ref name="label.attrib"/>
<ref name="status.attrib"/>
<ref name="common.attrib"/>
<ref name="part.role.attrib"/>
</define>
<define name="preface.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="preface">
<element name="preface">
<ref name="preface.attlist"/>
<optional>
<ref name="prefaceinfo"/>
</optional>
<ref name="bookcomponent.title.content"/>
<zeroOrMore>
<ref name="nav.class"/>
</zeroOrMore>
<optional>
<ref name="tocchap"/>
</optional>
<ref name="bookcomponent.content"/>
<zeroOrMore>
<ref name="nav.class"/>
</zeroOrMore>
</element>
</define>
<define name="preface.attlist">
<ref name="status.attrib"/>
<ref name="common.attrib"/>
<ref name="preface.role.attrib"/>
</define>
<define name="reference.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="reference">
<element name="reference">
<ref name="reference.attlist"/>
<optional>
<ref name="referenceinfo"/>
</optional>
<ref name="bookcomponent.title.content"/>
<optional>
<ref name="partintro"/>
</optional>
<oneOrMore>
<ref name="refentry.class"/>
</oneOrMore>
</element>
</define>
<define name="reference.attlist">
<ref name="label.attrib"/>
<ref name="status.attrib"/>
<ref name="common.attrib"/>
<ref name="reference.role.attrib"/>
</define>
<define name="partintro.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="partintro">
<element name="partintro">
<ref name="partintro.attlist"/>
<optional>
<ref name="div.title.content"/>
</optional>
<ref name="bookcomponent.content"/>
</element>
</define>
<define name="partintro.attlist">
<ref name="label.attrib"/>
<ref name="common.attrib"/>
<ref name="partintro.role.attrib"/>
</define>
<define name="appendixinfo.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="appendixinfo">
<element name="appendixinfo">
<ref name="appendixinfo.attlist"/>
<ref name="infoContentModel"/>
</element>
</define>
<define name="appendixinfo.attlist">
<ref name="common.attrib"/>
<ref name="appendixinfo.role.attrib"/>
</define>
<define name="bibliographyinfo.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="bibliographyinfo">
<element name="bibliographyinfo">
<ref name="bibliographyinfo.attlist"/>
<ref name="infoContentModel"/>
</element>
</define>
<define name="bibliographyinfo.attlist">
<ref name="common.attrib"/>
<ref name="bibliographyinfo.role.attrib"/>
</define>
<define name="chapterinfo.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="chapterinfo">
<element name="chapterinfo">
<ref name="chapterinfo.attlist"/>
<ref name="infoContentModel"/>
</element>
</define>
<define name="chapterinfo.attlist">
<ref name="common.attrib"/>
<ref name="chapterinfo.role.attrib"/>
</define>
<define name="glossaryinfo.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="glossaryinfo">
<element name="glossaryinfo">
<ref name="glossaryinfo.attlist"/>
<ref name="infoContentModel"/>
</element>
</define>
<define name="glossaryinfo.attlist">
<ref name="common.attrib"/>
<ref name="glossaryinfo.role.attrib"/>
</define>
<define name="indexinfo.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="indexinfo">
<element name="indexinfo">
<ref name="indexinfo.attlist"/>
<ref name="infoContentModel"/>
</element>
</define>
<define name="indexinfo.attlist">
<ref name="common.attrib"/>
<ref name="indexinfo.role.attrib"/>
</define>
<define name="setindexinfo.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="setindexinfo">
<element name="setindexinfo">
<ref name="setindexinfo.attlist"/>
<ref name="infoContentModel"/>
</element>
</define>
<define name="setindexinfo.attlist">
<ref name="common.attrib"/>
<ref name="setindexinfo.role.attrib"/>
</define>
<define name="partinfo.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="partinfo">
<element name="partinfo">
<ref name="partinfo.attlist"/>
<ref name="infoContentModel"/>
</element>
</define>
<define name="partinfo.attlist">
<ref name="common.attrib"/>
<ref name="partinfo.role.attrib"/>
</define>
<define name="prefaceinfo.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="prefaceinfo">
<element name="prefaceinfo">
<ref name="prefaceinfo.attlist"/>
<ref name="infoContentModel"/>
</element>
</define>
<define name="prefaceinfo.attlist">
<ref name="common.attrib"/>
<ref name="prefaceinfo.role.attrib"/>
</define>
<define name="refentryinfo.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="refentryinfo">
<element name="refentryinfo">
<ref name="refentryinfo.attlist"/>
<ref name="infoContentModel"/>
</element>
</define>
<define name="refentryinfo.attlist">
<ref name="common.attrib"/>
<ref name="refentryinfo.role.attrib"/>
</define>
<define name="refsect1info.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="refsect1info">
<element name="refsect1info">
<ref name="refsect1info.attlist"/>
<ref name="infoContentModel"/>
</element>
</define>
<define name="refsect1info.attlist">
<ref name="common.attrib"/>
<ref name="refsect1info.role.attrib"/>
</define>
<define name="refsect2info.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="refsect2info">
<element name="refsect2info">
<ref name="refsect2info.attlist"/>
<ref name="infoContentModel"/>
</element>
</define>
<define name="refsect2info.attlist">
<ref name="common.attrib"/>
<ref name="refsect2info.role.attrib"/>
</define>
<define name="refsect3info.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="refsect3info">
<element name="refsect3info">
<ref name="refsect3info.attlist"/>
<ref name="infoContentModel"/>
</element>
</define>
<define name="refsect3info.attlist">
<ref name="common.attrib"/>
<ref name="refsect3info.role.attrib"/>
</define>
<define name="refsynopsisdivinfo.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="refsynopsisdivinfo">
<element name="refsynopsisdivinfo">
<ref name="refsynopsisdivinfo.attlist"/>
<ref name="infoContentModel"/>
</element>
</define>
<define name="refsynopsisdivinfo.attlist">
<ref name="common.attrib"/>
<ref name="refsynopsisdivinfo.role.attrib"/>
</define>
<define name="referenceinfo.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="referenceinfo">
<element name="referenceinfo">
<ref name="referenceinfo.attlist"/>
<ref name="infoContentModel"/>
</element>
</define>
<define name="referenceinfo.attlist">
<ref name="common.attrib"/>
<ref name="referenceinfo.role.attrib"/>
</define>
<define name="sect1info.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="sect1info">
<element name="sect1info">
<ref name="sect1info.attlist"/>
<ref name="infoContentModel"/>
</element>
</define>
<define name="sect1info.attlist">
<ref name="common.attrib"/>
<ref name="sect1info.role.attrib"/>
</define>
<define name="sect2info.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="sect2info">
<element name="sect2info">
<ref name="sect2info.attlist"/>
<ref name="infoContentModel"/>
</element>
</define>
<define name="sect2info.attlist">
<ref name="common.attrib"/>
<ref name="sect2info.role.attrib"/>
</define>
<define name="sect3info.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="sect3info">
<element name="sect3info">
<ref name="sect3info.attlist"/>
<ref name="infoContentModel"/>
</element>
</define>
<define name="sect3info.attlist">
<ref name="common.attrib"/>
<ref name="sect3info.role.attrib"/>
</define>
<define name="sect4info.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="sect4info">
<element name="sect4info">
<ref name="sect4info.attlist"/>
<ref name="infoContentModel"/>
</element>
</define>
<define name="sect4info.attlist">
<ref name="common.attrib"/>
<ref name="sect4info.role.attrib"/>
</define>
<define name="sect5info.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="sect5info">
<element name="sect5info">
<ref name="sect5info.attlist"/>
<ref name="infoContentModel"/>
</element>
</define>
<define name="sect5info.attlist">
<ref name="common.attrib"/>
<ref name="sect5info.role.attrib"/>
</define>
<define name="section.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="section">
<element name="section">
<ref name="section.attlist"/>
<optional>
<ref name="sectioninfo"/>
</optional>
<ref name="sect.title.content"/>
<zeroOrMore>
<ref name="nav.class"/>
</zeroOrMore>
<choice>
<group>
<oneOrMore>
<ref name="divcomponent.mix"/>
</oneOrMore>
<choice>
<zeroOrMore>
<ref name="refentry.class"/>
</zeroOrMore>
<zeroOrMore>
<ref name="section"/>
</zeroOrMore>
</choice>
</group>
<choice>
<oneOrMore>
<ref name="refentry.class"/>
</oneOrMore>
<oneOrMore>
<ref name="section"/>
</oneOrMore>
</choice>
</choice>
<zeroOrMore>
<ref name="nav.class"/>
</zeroOrMore>
</element>
</define>
<define name="section.attlist">
<ref name="label.attrib"/>
<ref name="status.attrib"/>
<ref name="common.attrib"/>
<ref name="section.role.attrib"/>
</define>
<define name="sectioninfo.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="sectioninfo">
<element name="sectioninfo">
<ref name="sectioninfo.attlist"/>
<ref name="infoContentModel"/>
</element>
</define>
<define name="sectioninfo.attlist">
<ref name="common.attrib"/>
<ref name="sectioninfo.role.attrib"/>
</define>
<define name="sect1.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="sect1">
<element name="sect1">
<ref name="sect1.attlist"/>
<optional>
<ref name="sect1info"/>
</optional>
<ref name="sect.title.content"/>
<zeroOrMore>
<ref name="nav.class"/>
</zeroOrMore>
<choice>
<group>
<oneOrMore>
<ref name="divcomponent.mix"/>
</oneOrMore>
<choice>
<zeroOrMore>
<ref name="refentry.class"/>
</zeroOrMore>
<zeroOrMore>
<ref name="sect2"/>
</zeroOrMore>
<zeroOrMore>
<ref name="simplesect"/>
</zeroOrMore>
</choice>
</group>
<choice>
<oneOrMore>
<ref name="refentry.class"/>
</oneOrMore>
<oneOrMore>
<ref name="sect2"/>
</oneOrMore>
<oneOrMore>
<ref name="simplesect"/>
</oneOrMore>
</choice>
</choice>
<zeroOrMore>
<ref name="nav.class"/>
</zeroOrMore>
</element>
</define>
<define name="sect1.attlist">
<ref name="label.attrib"/>
<ref name="status.attrib"/>
<ref name="common.attrib"/>
<ref name="sect1.role.attrib"/>
<optional>
<attribute name="renderas">
<choice>
<value>sect2</value>
<value>sect3</value>
<value>sect4</value>
<value>sect5</value>
</choice>
</attribute>
</optional>
</define>
<define name="sect2.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="sect2">
<element name="sect2">
<ref name="sect2.attlist"/>
<optional>
<ref name="sect2info"/>
</optional>
<ref name="sect.title.content"/>
<zeroOrMore>
<ref name="nav.class"/>
</zeroOrMore>
<choice>
<group>
<oneOrMore>
<ref name="divcomponent.mix"/>
</oneOrMore>
<choice>
<zeroOrMore>
<ref name="refentry.class"/>
</zeroOrMore>
<zeroOrMore>
<ref name="sect3"/>
</zeroOrMore>
<zeroOrMore>
<ref name="simplesect"/>
</zeroOrMore>
</choice>
</group>
<choice>
<oneOrMore>
<ref name="refentry.class"/>
</oneOrMore>
<oneOrMore>
<ref name="sect3"/>
</oneOrMore>
<oneOrMore>
<ref name="simplesect"/>
</oneOrMore>
</choice>
</choice>
<zeroOrMore>
<ref name="nav.class"/>
</zeroOrMore>
</element>
</define>
<define name="sect2.attlist">
<ref name="label.attrib"/>
<ref name="status.attrib"/>
<ref name="common.attrib"/>
<ref name="sect2.role.attrib"/>
<optional>
<attribute name="renderas">
<choice>
<value>sect1</value>
<value>sect3</value>
<value>sect4</value>
<value>sect5</value>
</choice>
</attribute>
</optional>
</define>
<define name="sect3.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="sect3">
<element name="sect3">
<ref name="sect3.attlist"/>
<optional>
<ref name="sect3info"/>
</optional>
<ref name="sect.title.content"/>
<zeroOrMore>
<ref name="nav.class"/>
</zeroOrMore>
<choice>
<group>
<oneOrMore>
<ref name="divcomponent.mix"/>
</oneOrMore>
<choice>
<zeroOrMore>
<ref name="refentry.class"/>
</zeroOrMore>
<zeroOrMore>
<ref name="sect4"/>
</zeroOrMore>
<zeroOrMore>
<ref name="simplesect"/>
</zeroOrMore>
</choice>
</group>
<choice>
<oneOrMore>
<ref name="refentry.class"/>
</oneOrMore>
<oneOrMore>
<ref name="sect4"/>
</oneOrMore>
<oneOrMore>
<ref name="simplesect"/>
</oneOrMore>
</choice>
</choice>
<zeroOrMore>
<ref name="nav.class"/>
</zeroOrMore>
</element>
</define>
<define name="sect3.attlist">
<ref name="label.attrib"/>
<ref name="status.attrib"/>
<ref name="common.attrib"/>
<ref name="sect3.role.attrib"/>
<optional>
<attribute name="renderas">
<choice>
<value>sect1</value>
<value>sect2</value>
<value>sect4</value>
<value>sect5</value>
</choice>
</attribute>
</optional>
</define>
<define name="sect4.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="sect4">
<element name="sect4">
<ref name="sect4.attlist"/>
<optional>
<ref name="sect4info"/>
</optional>
<ref name="sect.title.content"/>
<zeroOrMore>
<ref name="nav.class"/>
</zeroOrMore>
<choice>
<group>
<oneOrMore>
<ref name="divcomponent.mix"/>
</oneOrMore>
<choice>
<zeroOrMore>
<ref name="refentry.class"/>
</zeroOrMore>
<zeroOrMore>
<ref name="sect5"/>
</zeroOrMore>
<zeroOrMore>
<ref name="simplesect"/>
</zeroOrMore>
</choice>
</group>
<choice>
<oneOrMore>
<ref name="refentry.class"/>
</oneOrMore>
<oneOrMore>
<ref name="sect5"/>
</oneOrMore>
<oneOrMore>
<ref name="simplesect"/>
</oneOrMore>
</choice>
</choice>
<zeroOrMore>
<ref name="nav.class"/>
</zeroOrMore>
</element>
</define>
<define name="sect4.attlist">
<ref name="label.attrib"/>
<ref name="status.attrib"/>
<ref name="common.attrib"/>
<ref name="sect4.role.attrib"/>
<optional>
<attribute name="renderas">
<choice>
<value>sect1</value>
<value>sect2</value>
<value>sect3</value>
<value>sect5</value>
</choice>
</attribute>
</optional>
</define>
<define name="sect5.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="sect5">
<element name="sect5">
<ref name="sect5.attlist"/>
<optional>
<ref name="sect5info"/>
</optional>
<ref name="sect.title.content"/>
<zeroOrMore>
<ref name="nav.class"/>
</zeroOrMore>
<choice>
<group>
<oneOrMore>
<ref name="divcomponent.mix"/>
</oneOrMore>
<choice>
<zeroOrMore>
<ref name="refentry.class"/>
</zeroOrMore>
<zeroOrMore>
<ref name="simplesect"/>
</zeroOrMore>
</choice>
</group>
<choice>
<oneOrMore>
<ref name="refentry.class"/>
</oneOrMore>
<oneOrMore>
<ref name="simplesect"/>
</oneOrMore>
</choice>
</choice>
<zeroOrMore>
<ref name="nav.class"/>
</zeroOrMore>
</element>
</define>
<define name="sect5.attlist">
<ref name="label.attrib"/>
<ref name="status.attrib"/>
<ref name="common.attrib"/>
<ref name="sect5.role.attrib"/>
<optional>
<attribute name="renderas">
<choice>
<value>sect1</value>
<value>sect2</value>
<value>sect3</value>
<value>sect4</value>
</choice>
</attribute>
</optional>
</define>
<define name="simplesect.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="simplesect">
<element name="simplesect">
<ref name="simplesect.attlist"/>
<ref name="sect.title.content"/>
<oneOrMore>
<ref name="divcomponent.mix"/>
</oneOrMore>
</element>
</define>
<define name="simplesect.attlist">
<ref name="common.attrib"/>
<ref name="simplesect.role.attrib"/>
</define>
<define name="bibliography.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="bibliography">
<element name="bibliography">
<ref name="bibliography.attlist"/>
<zeroOrMore>
<ref name="bibliographyinfo"/>
</zeroOrMore>
<optional>
<ref name="bookcomponent.title.content"/>
</optional>
<zeroOrMore>
<ref name="component.mix"/>
</zeroOrMore>
<choice>
<oneOrMore>
<ref name="bibliodiv"/>
</oneOrMore>
<oneOrMore>
<choice>
<ref name="biblioentry"/>
<ref name="bibliomixed"/>
</choice>
</oneOrMore>
</choice>
</element>
</define>
<define name="bibliography.attlist">
<ref name="status.attrib"/>
<ref name="common.attrib"/>
<ref name="bibliography.role.attrib"/>
</define>
<define name="bibliodiv.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="bibliodiv">
<element name="bibliodiv">
<ref name="bibliodiv.attlist"/>
<optional>
<ref name="sect.title.content"/>
</optional>
<zeroOrMore>
<ref name="component.mix"/>
</zeroOrMore>
<oneOrMore>
<choice>
<ref name="biblioentry"/>
<ref name="bibliomixed"/>
</choice>
</oneOrMore>
</element>
</define>
<define name="bibliodiv.attlist">
<ref name="status.attrib"/>
<ref name="common.attrib"/>
<ref name="bibliodiv.role.attrib"/>
</define>
<define name="glossary.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="glossary">
<element name="glossary">
<ref name="glossary.attlist"/>
<zeroOrMore>
<ref name="glossaryinfo"/>
</zeroOrMore>
<optional>
<ref name="bookcomponent.title.content"/>
</optional>
<zeroOrMore>
<ref name="component.mix"/>
</zeroOrMore>
<choice>
<oneOrMore>
<ref name="glossdiv"/>
</oneOrMore>
<oneOrMore>
<ref name="glossentry"/>
</oneOrMore>
</choice>
<optional>
<ref name="bibliography"/>
</optional>
</element>
</define>
<define name="glossary.attlist">
<ref name="status.attrib"/>
<ref name="common.attrib"/>
<ref name="glossary.role.attrib"/>
</define>
<define name="glossdiv.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="glossdiv">
<element name="glossdiv">
<ref name="glossdiv.attlist"/>
<optional>
<ref name="sect.title.content"/>
</optional>
<zeroOrMore>
<ref name="component.mix"/>
</zeroOrMore>
<oneOrMore>
<ref name="glossentry"/>
</oneOrMore>
</element>
</define>
<define name="glossdiv.attlist">
<ref name="status.attrib"/>
<ref name="common.attrib"/>
<ref name="glossdiv.role.attrib"/>
</define>
<define name="indexes.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="index">
<element name="index">
<ref name="index.attlist"/>
<zeroOrMore>
<ref name="indexinfo"/>
</zeroOrMore>
<optional>
<ref name="bookcomponent.title.content"/>
</optional>
<zeroOrMore>
<ref name="component.mix"/>
</zeroOrMore>
<choice>
<oneOrMore>
<ref name="indexdiv"/>
</oneOrMore>
<oneOrMore>
<ref name="indexentry"/>
</oneOrMore>
</choice>
</element>
</define>
<define name="index.attlist">
<ref name="common.attrib"/>
<ref name="indexes.role.attrib"/>
</define>
<define name="setindex">
<element name="setindex">
<ref name="setindex.attlist"/>
<zeroOrMore>
<ref name="setindexinfo"/>
</zeroOrMore>
<optional>
<ref name="bookcomponent.title.content"/>
</optional>
<zeroOrMore>
<ref name="component.mix"/>
</zeroOrMore>
<choice>
<oneOrMore>
<ref name="indexdiv"/>
</oneOrMore>
<oneOrMore>
<ref name="indexentry"/>
</oneOrMore>
</choice>
</element>
</define>
<define name="setindex.attlist">
<ref name="common.attrib"/>
<ref name="indexes.role.attrib"/>
</define>
<define name="indexdiv.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="indexdiv">
<element name="indexdiv">
<ref name="indexdiv.attlist"/>
<optional>
<ref name="sect.title.content"/>
</optional>
<zeroOrMore>
<ref name="indexdivcomponent.mix"/>
</zeroOrMore>
<zeroOrMore>
<ref name="indexentry"/>
</zeroOrMore>
<ref name="segmentedlist"/>
</element>
</define>
<define name="indexdiv.attlist">
<ref name="common.attrib"/>
<ref name="indexdiv.role.attrib"/>
</define>
<define name="indexentry.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="indexentry">
<element name="indexentry">
<ref name="indexentry.attlist"/>
<ref name="primaryie"/>
<zeroOrMore>
<choice>
<ref name="seeie"/>
<ref name="seealsoie"/>
</choice>
</zeroOrMore>
<zeroOrMore>
<ref name="secondaryie"/>
<zeroOrMore>
<choice>
<ref name="seeie"/>
<ref name="seealsoie"/>
<ref name="tertiaryie"/>
</choice>
</zeroOrMore>
</zeroOrMore>
</element>
</define>
<define name="indexentry.attlist">
<ref name="common.attrib"/>
<ref name="indexentry.role.attrib"/>
</define>
<define name="primsecterie.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="primaryie">
<element name="primaryie">
<ref name="primaryie.attlist"/>
<mixed>
<zeroOrMore>
<ref name="ndxterm.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="primaryie.attlist">
<ref name="linkends.attrib"/>
<ref name="common.attrib"/>
<ref name="primsecterie.role.attrib"/>
</define>
<define name="secondaryie">
<element name="secondaryie">
<ref name="secondaryie.attlist"/>
<mixed>
<zeroOrMore>
<ref name="ndxterm.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="secondaryie.attlist">
<ref name="linkends.attrib"/>
<ref name="common.attrib"/>
<ref name="primsecterie.role.attrib"/>
</define>
<define name="tertiaryie">
<element name="tertiaryie">
<ref name="tertiaryie.attlist"/>
<mixed>
<zeroOrMore>
<ref name="ndxterm.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="tertiaryie.attlist">
<ref name="linkends.attrib"/>
<ref name="common.attrib"/>
<ref name="primsecterie.role.attrib"/>
</define>
<define name="seeie.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="seeie">
<element name="seeie">
<ref name="seeie.attlist"/>
<mixed>
<zeroOrMore>
<ref name="ndxterm.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="seeie.attlist">
<ref name="linkend.attrib"/>
<ref name="common.attrib"/>
<ref name="seeie.role.attrib"/>
</define>
<define name="seealsoie.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="seealsoie">
<element name="seealsoie">
<ref name="seealsoie.attlist"/>
<zeroOrMore>
<ref name="ndxterm.char.mix"/>
</zeroOrMore>
</element>
</define>
<define name="seealsoie.attlist">
<ref name="linkends.attrib"/>
<ref name="common.attrib"/>
<ref name="seealsoie.role.attrib"/>
</define>
<define name="refentry.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="refentry">
<element name="refentry">
<ref name="refentry.attlist"/>
<zeroOrMore>
<ref name="ndxterm.class"/>
</zeroOrMore>
<optional>
<ref name="refentryinfo"/>
</optional>
<optional>
<ref name="refmeta"/>
</optional>
<zeroOrMore>
<choice>
<ref name="remark"/>
<ref name="link.char.class"/>
</choice>
</zeroOrMore>
<ref name="refnamediv"/>
<optional>
<ref name="refsynopsisdiv"/>
</optional>
<oneOrMore>
<ref name="refsect1"/>
</oneOrMore>
</element>
</define>
<define name="refentry.attlist">
<ref name="status.attrib"/>
<ref name="common.attrib"/>
<ref name="refentry.role.attrib"/>
</define>
<define name="refmeta.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="refmeta">
<element name="refmeta">
<ref name="refmeta.attlist"/>
<zeroOrMore>
<ref name="ndxterm.class"/>
</zeroOrMore>
<ref name="refentrytitle"/>
<optional>
<ref name="manvolnum"/>
</optional>
<zeroOrMore>
<ref name="refmiscinfo"/>
</zeroOrMore>
<zeroOrMore>
<ref name="ndxterm.class"/>
</zeroOrMore>
</element>
</define>
<define name="refmeta.attlist">
<ref name="common.attrib"/>
<ref name="refmeta.role.attrib"/>
</define>
<define name="refmiscinfo.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="refmiscinfo">
<element name="refmiscinfo">
<ref name="refmiscinfo.attlist"/>
<mixed>
<zeroOrMore>
<ref name="docinfo.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="refmiscinfo.attlist">
<ref name="common.attrib"/>
<ref name="refmiscinfo.role.attrib"/>
<optional>
<attribute name="class">
<data type="string"/>
</attribute>
</optional>
</define>
<define name="refnamediv.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="refnamediv">
<element name="refnamediv">
<ref name="refnamediv.attlist"/>
<optional>
<ref name="refdescriptor"/>
</optional>
<oneOrMore>
<ref name="refname"/>
</oneOrMore>
<ref name="refpurpose"/>
<zeroOrMore>
<choice>
<ref name="remark"/>
<ref name="link.char.class"/>
</choice>
</zeroOrMore>
</element>
</define>
<define name="refnamediv.attlist">
<ref name="common.attrib"/>
<ref name="refnamediv.role.attrib"/>
</define>
<define name="refdescriptor.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="refdescriptor">
<element name="refdescriptor">
<ref name="refdescriptor.attlist"/>
<mixed>
<zeroOrMore>
<ref name="refname.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="refdescriptor.attlist">
<ref name="common.attrib"/>
<ref name="refdescriptor.role.attrib"/>
</define>
<define name="refname.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="refname">
<element name="refname">
<ref name="refname.attlist"/>
<mixed>
<zeroOrMore>
<ref name="refname.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="refname.attlist">
<ref name="common.attrib"/>
<ref name="refname.role.attrib"/>
</define>
<define name="refpurpose.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="refpurpose">
<element name="refpurpose">
<ref name="refpurpose.attlist"/>
<mixed>
<zeroOrMore>
<ref name="refinline.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="refpurpose.attlist">
<ref name="common.attrib"/>
<ref name="refpurpose.role.attrib"/>
</define>
<define name="refclass.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="refclass">
<element name="refclass">
<ref name="refclass.attlist"/>
<mixed>
<zeroOrMore>
<ref name="refclass.char.mix"/>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="refclass.attlist">
<ref name="common.attrib"/>
<ref name="refclass.role.attrib"/>
</define>
<define name="refsynopsisdiv.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="refsynopsisdiv">
<element name="refsynopsisdiv">
<ref name="refsynopsisdiv.attlist"/>
<optional>
<ref name="refsynopsisdivinfo"/>
</optional>
<optional>
<ref name="refsect.title.content"/>
</optional>
<choice>
<group>
<oneOrMore>
<ref name="refcomponent.mix"/>
</oneOrMore>
<zeroOrMore>
<ref name="refsect2"/>
</zeroOrMore>
</group>
<oneOrMore>
<ref name="refsect2"/>
</oneOrMore>
</choice>
</element>
</define>
<define name="refsynopsisdiv.attlist">
<ref name="common.attrib"/>
<ref name="refsynopsisdiv.role.attrib"/>
</define>
<define name="refsect1.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="refsect1">
<element name="refsect1">
<ref name="refsect1.attlist"/>
<optional>
<ref name="refsect1info"/>
</optional>
<ref name="refsect.title.content"/>
<choice>
<group>
<oneOrMore>
<ref name="refcomponent.mix"/>
</oneOrMore>
<zeroOrMore>
<ref name="refsect2"/>
</zeroOrMore>
</group>
<oneOrMore>
<ref name="refsect2"/>
</oneOrMore>
</choice>
</element>
</define>
<define name="refsect1.attlist">
<ref name="status.attrib"/>
<ref name="common.attrib"/>
<ref name="refsect1.role.attrib"/>
</define>
<define name="refsect2.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="refsect2">
<element name="refsect2">
<ref name="refsect2.attlist"/>
<optional>
<ref name="refsect2info"/>
</optional>
<ref name="refsect.title.content"/>
<choice>
<group>
<oneOrMore>
<ref name="refcomponent.mix"/>
</oneOrMore>
<zeroOrMore>
<ref name="refsect3"/>
</zeroOrMore>
</group>
<oneOrMore>
<ref name="refsect3"/>
</oneOrMore>
</choice>
</element>
</define>
<define name="refsect2.attlist">
<ref name="status.attrib"/>
<ref name="common.attrib"/>
<ref name="refsect2.role.attrib"/>
</define>
<define name="refsect3.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="refsect3">
<element name="refsect3">
<ref name="refsect3.attlist"/>
<optional>
<ref name="refsect3info"/>
</optional>
<ref name="refsect.title.content"/>
<oneOrMore>
<ref name="refcomponent.mix"/>
</oneOrMore>
</element>
</define>
<define name="refsect3.attlist">
<ref name="status.attrib"/>
<ref name="common.attrib"/>
<ref name="refsect3.role.attrib"/>
</define>
<define name="article.role.attrib">
<ref name="role.attrib"/>
</define>
<define name="article">
<element name="article">
<ref name="article.attlist"/>
<optional>
<ref name="div.title.content"/>
</optional>
<optional>
<ref name="articleinfo"/>
</optional>
<optional>
<ref name="tocchap"/>
</optional>
<zeroOrMore>
<ref name="lot"/>
</zeroOrMore>
<ref name="bookcomponent.content"/>
<zeroOrMore>
<choice>
<ref name="nav.class"/>
<ref name="appendix.class"/>
<ref name="ackno"/>
</choice>
</zeroOrMore>
</element>
</define>
<define name="article.attlist">
<ref name="status.attrib"/>
<ref name="common.attrib"/>
<ref name="article.role.attrib"/>
<optional>
<attribute name="class">
<choice>
<value>journalarticle</value>
<value>productsheet</value>
<value>whitepaper</value>
<value>techreport</value>
<value>specification</value>
<value>faq</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="parentbook">
<data type="IDREF"/>
</attribute>
</optional>
</define>
<define name="table.att">
<empty/>
</define>
<define name="tgroup.att">
<empty/>
</define>
<define name="colspec.att">
<empty/>
</define>
<define name="thead.att">
<empty/>
</define>
<define name="tbody.att">
<empty/>
</define>
<define name="row.att">
<empty/>
</define>
<define name="entry.att">
<empty/>
</define>
<define name="table">
<element name="table">
<ref name="table.attlist"/>
<ref name="formalobject.title.content"/>
<optional>
<ref name="ndxterm.class"/>
</optional>
<choice>
<oneOrMore>
<ref name="graphic"/>
</oneOrMore>
<oneOrMore>
<ref name="mediaobject"/>
</oneOrMore>
<oneOrMore>
<ref name="tgroup"/>
</oneOrMore>
</choice>
</element>
</define>
<define name="table.attlist">
<ref name="table.att"/>
<optional>
<attribute name="frame">
<choice>
<value>top</value>
<value>bottom</value>
<value>topbot</value>
<value>all</value>
<value>sides</value>
<value>none</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="colsep">
<choice>
<value>0</value>
<value>1</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="rowsep">
<choice>
<value>0</value>
<value>1</value>
</choice>
</attribute>
</optional>
</define>
<define name="informaltable">
<element name="informaltable">
<ref name="informaltable.attlist"/>
<choice>
<oneOrMore>
<ref name="graphic"/>
</oneOrMore>
<oneOrMore>
<ref name="mediaobject"/>
</oneOrMore>
<oneOrMore>
<ref name="tgroup"/>
</oneOrMore>
</choice>
</element>
</define>
<define name="informaltable.attlist">
<ref name="table.att"/>
<optional>
<attribute name="frame">
<choice>
<value>top</value>
<value>bottom</value>
<value>topbot</value>
<value>all</value>
<value>sides</value>
<value>none</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="colsep">
<choice>
<value>0</value>
<value>1</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="rowsep">
<choice>
<value>0</value>
<value>1</value>
</choice>
</attribute>
</optional>
</define>
<define name="tgroup">
<element name="tgroup">
<ref name="tgroup.attlist"/>
<zeroOrMore>
<ref name="colspec"/>
</zeroOrMore>
<optional>
<ref name="thead"/>
</optional>
<ref name="tbody"/>
</element>
</define>
<define name="tgroup.attlist">
<ref name="tgroup.att"/>
<attribute name="cols">
<data type="integer"/>
</attribute>
<optional>
<attribute name="colsep">
<choice>
<value>0</value>
<value>1</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="rowsep">
<choice>
<value>0</value>
<value>1</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="align">
<choice>
<value>left</value>
<value>right</value>
<value>center</value>
<value>justify</value>
</choice>
</attribute>
</optional>
</define>
<define name="colspec">
<element name="colspec">
<ref name="colspec.attlist"/>
</element>
</define>
<define name="colspec.attlist">
<ref name="colspec.att"/>
<optional>
<attribute name="colnum">
<data type="integer"/>
</attribute>
</optional>
<optional>
<attribute name="colname">
<data type="NMTOKEN"/>
</attribute>
</optional>
<optional>
<attribute name="colwidth">
<data type="string"/>
</attribute>
</optional>
<optional>
<attribute name="colsep">
<choice>
<value>0</value>
<value>1</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="rowsep">
<choice>
<value>0</value>
<value>1</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="align">
<choice>
<value>left</value>
<value>right</value>
<value>center</value>
<value>justify</value>
<value>char</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="char">
<data type="string"/>
</attribute>
</optional>
<optional>
<attribute name="charoff">
<data type="NMTOKEN"/>
</attribute>
</optional>
</define>
<define name="thead">
<element name="thead">
<ref name="thead.attlist"/>
<oneOrMore>
<ref name="row"/>
</oneOrMore>
</element>
</define>
<define name="thead.attlist">
<ref name="thead.att"/>
<optional>
<attribute name="valign">
<choice>
<value>top</value>
<value>middle</value>
<value>bottom</value>
</choice>
</attribute>
</optional>
</define>
<define name="tbody">
<element name="tbody">
<ref name="tbody.attlist"/>
<oneOrMore>
<ref name="row"/>
</oneOrMore>
</element>
</define>
<define name="tbody.attlist">
<ref name="tbody.att"/>
<optional>
<attribute name="valign">
<choice>
<value>top</value>
<value>middle</value>
<value>bottom</value>
</choice>
</attribute>
</optional>
</define>
<define name="row">
<element name="row">
<ref name="row.attlist"/>
<oneOrMore>
<ref name="entry"/>
</oneOrMore>
</element>
</define>
<define name="row.attlist">
<ref name="row.att"/>
<optional>
<attribute name="rowsep">
<choice>
<value>0</value>
<value>1</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="valign">
<choice>
<value>top</value>
<value>middle</value>
<value>bottom</value>
</choice>
</attribute>
</optional>
</define>
<define name="entry">
<element name="entry">
<ref name="entry.attlist"/>
<mixed>
<zeroOrMore>
<choice>
<ref name="para.char.mix"/>
<ref name="tabentry.mix"/>
</choice>
</zeroOrMore>
</mixed>
</element>
</define>
<define name="entry.attlist">
<ref name="entry.att"/>
<optional>
<attribute name="colname">
<data type="NMTOKEN"/>
</attribute>
</optional>
<optional>
<attribute name="namest">
<data type="NMTOKEN"/>
</attribute>
</optional>
<optional>
<attribute name="nameend">
<data type="NMTOKEN"/>
</attribute>
</optional>
<optional>
<attribute name="morerows">
<data type="integer"/>
</attribute>
</optional>
<optional>
<attribute name="colsep">
<choice>
<value>0</value>
<value>1</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="rowsep">
<choice>
<value>0</value>
<value>1</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="align">
<choice>
<value>left</value>
<value>right</value>
<value>center</value>
<value>justify</value>
<value>char</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="char">
<data type="string"/>
</attribute>
</optional>
<optional>
<attribute name="charoff">
<data type="NMTOKEN"/>
</attribute>
</optional>
<optional>
<attribute name="valign">
<choice>
<value>top</value>
<value>middle</value>
<value>bottom</value>
</choice>
</attribute>
</optional>
</define>
</grammar>