<?xml version="1.0" encoding="utf-8"?>
<grammar xmlns="http://relaxng.org/ns/structure/1.0" xmlns:ws="http://docbook.org/docbook-ng/website" xmlns:db="http://docbook.org/docbook-ng" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes" ns="http://docbook.org/docbook-ng"><!-- DocBook NG: The "Bourbon" Release --><!-- See http://docbook.org/docbook-ng/ -->
   <define name="rddl">
      <choice>
         <notAllowed/>
         <ref xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" xmlns:rddl="http://www.rddl.org/" xmlns:xlink="http://www.w3.org/1999/xlink" name="rddl.resource"/>
      </choice>
   </define>
   <div>
      <db:refname>qandaset</db:refname>
      <db:refpurpose/>
      <define name="local.qandaset.attributes">
         <empty/>
      </define>
      <define name="qandaset.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="qandaset.attlist">
         <interleave>
            <optional>
               <ref name="qandaset.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <optional>
               <attribute name="defaultlabel">
                  <choice>
                     <value>none</value>
                     <value>number</value>
                     <value>qanda</value>
                  </choice>
               </attribute>
            </optional>
            <ref name="local.qandaset.attributes"/>
         </interleave>
      </define>
      <define name="qandaset.info">
         <ref name="docbook.info.titleonly"/>
      </define>
      <define name="db.qandaset">
         <element name="qandaset">
            <ref name="qandaset.attlist"/>
            <ref name="qandaset.info"/>
            <zeroOrMore>
               <ref name="blocks"/>
            </zeroOrMore>
            <choice>
               <oneOrMore>
                  <ref name="db.qandadiv"/>
               </oneOrMore>
               <oneOrMore>
                  <ref name="db.qandaentry"/>
               </oneOrMore>
            </choice>
         </element>
      </define>
   </div>
   <div>
      <db:refname>qandadiv</db:refname>
      <db:refpurpose/>
      <define name="local.qandadiv.attributes">
         <empty/>
      </define>
      <define name="qandadiv.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="qandadiv.attlist">
         <interleave>
            <optional>
               <ref name="qandadiv.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.qandadiv.attributes"/>
         </interleave>
      </define>
      <define name="qandadiv.info">
         <ref name="docbook.info.titleonly"/>
      </define>
      <define name="db.qandadiv">
         <element name="qandadiv">
            <ref name="qandadiv.attlist"/>
            <ref name="qandadiv.info"/>
            <zeroOrMore>
               <ref name="blocks"/>
            </zeroOrMore>
            <choice>
               <oneOrMore>
                  <ref name="db.qandadiv"/>
               </oneOrMore>
               <oneOrMore>
                  <ref name="db.qandaentry"/>
               </oneOrMore>
            </choice>
         </element>
      </define>
   </div>
   <div>
      <db:refname>qandaentry</db:refname>
      <db:refpurpose/>
      <define name="local.qandaentry.attributes">
         <empty/>
      </define>
      <define name="qandaentry.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="qandaentry.attlist">
         <interleave>
            <optional>
               <ref name="qandaentry.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.qandaentry.attributes"/>
         </interleave>
      </define>
      <define name="qandaentry.info">
         <ref name="docbook.info.titleforbidden"/>
      </define>
      <define name="db.qandaentry">
         <element name="qandaentry">
            <ref name="qandaentry.attlist"/>
            <ref name="qandaentry.info"/>
            <ref name="db.question"/>
            <zeroOrMore>
               <ref name="db.answer"/>
            </zeroOrMore>
         </element>
      </define>
   </div>
   <div>
      <db:refname>question</db:refname>
      <db:refpurpose/>
      <define name="local.question.attributes">
         <empty/>
      </define>
      <define name="question.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="question.attlist">
         <interleave>
            <optional>
               <ref name="question.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.question.attributes"/>
         </interleave>
      </define>
      <define name="db.question">
         <element name="question">
            <ref name="question.attlist"/>
            <optional>
               <ref name="db.label"/>
            </optional>
            <oneOrMore>
               <ref name="blocks"/>
            </oneOrMore>
         </element>
      </define>
   </div>
   <div>
      <db:refname>answer</db:refname>
      <db:refpurpose/>
      <define name="local.answer.attributes">
         <empty/>
      </define>
      <define name="answer.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="answer.attlist">
         <interleave>
            <optional>
               <ref name="answer.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.answer.attributes"/>
         </interleave>
      </define>
      <define name="db.answer">
         <element name="answer">
            <ref name="answer.attlist"/>
            <optional>
               <ref name="db.label"/>
            </optional>
            <oneOrMore>
               <ref name="blocks"/>
            </oneOrMore>
         </element>
      </define>
   </div>
   <div>
      <db:refname>label</db:refname>
      <db:refpurpose/>
      <define name="local.label.attributes">
         <empty/>
      </define>
      <define name="label.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="label.attlist">
         <interleave>
            <optional>
               <ref name="label.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.label.attributes"/>
         </interleave>
      </define>
      <define name="db.label">
         <element name="label">
            <ref name="label.attlist"/>
            <ref name="docbook.text"/>
         </element>
      </define>
   </div>
   <div xmlns:html="http://www.w3.org/1999/xhtml">
      <db:refname>html:form</db:refname>
      <db:refpurpose/>
      <define name="local.html.form.attributes">
         <empty/>
      </define>
      <define name="html.form.attlist">
         <interleave>
            <ref name="html.attrs"/>
            <attribute name="action"/>
            <optional>
               <attribute name="method">
                  <choice>
                     <value>GET</value>
                     <value>POST</value>
                  </choice>
               </attribute>
            </optional>
            <optional>
               <attribute name="onsubmit"/>
            </optional>
            <optional>
               <attribute name="onreset"/>
            </optional>
            <ref name="local.html.form.attributes"/>
         </interleave>
      </define>
      <define name="html.form">
         <element name="html:form">
            <ref name="html.form.attlist"/>
            <oneOrMore>
               <choice>
                  <ref name="blocks"/>
                  <ref name="html.input"/>
                  <ref name="html.button"/>
                  <ref name="html.label"/>
                  <ref name="html.select"/>
                  <ref name="html.textarea"/>
               </choice>
            </oneOrMore>
         </element>
      </define>
   </div>
   <div xmlns:html="http://www.w3.org/1999/xhtml">
      <db:refname>html:input</db:refname>
      <db:refpurpose/>
      <define name="local.html.input.attributes">
         <empty/>
      </define>
      <define name="html.input.attlist">
         <interleave>
            <ref name="html.attrs"/>
            <optional>
               <attribute name="type">
                  <choice>
                     <value>text</value>
                     <value>password</value>
                     <value>checkbox</value>
                     <value>radio</value>
                     <value>submit</value>
                     <value>reset</value>
                     <value>file</value>
                     <value>hidden</value>
                     <value>image</value>
                     <value>button</value>
                  </choice>
               </attribute>
            </optional>
            <optional>
               <attribute name="name"/>
            </optional>
            <optional>
               <attribute name="value"/>
            </optional>
            <optional>
               <attribute name="checked">
                  <value>checked</value>
               </attribute>
            </optional>
            <optional>
               <attribute name="disabled">
                  <value>disabled</value>
               </attribute>
            </optional>
            <optional>
               <attribute name="readonly">
                  <value>readonly</value>
               </attribute>
            </optional>
            <optional>
               <attribute name="size"/>
            </optional>
            <optional>
               <attribute name="maxlength"/>
            </optional>
            <optional>
               <attribute name="src"/>
            </optional>
            <optional>
               <attribute name="alt"/>
            </optional>
            <optional>
               <attribute name="usemap"/>
            </optional>
            <optional>
               <attribute name="tabindex"/>
            </optional>
            <optional>
               <attribute name="accesskey"/>
            </optional>
            <optional>
               <attribute name="onfocus"/>
            </optional>
            <optional>
               <attribute name="onblur"/>
            </optional>
            <optional>
               <attribute name="onselect"/>
            </optional>
            <optional>
               <attribute name="onchange"/>
            </optional>
            <ref name="local.html.input.attributes"/>
         </interleave>
      </define>
      <define name="html.input">
         <element name="html:input">
            <ref name="html.input.attlist"/>
            <empty/>
         </element>
      </define>
   </div>
   <div xmlns:html="http://www.w3.org/1999/xhtml">
      <db:refname>html:button</db:refname>
      <db:refpurpose/>
      <define name="local.html.button.attributes">
         <empty/>
      </define>
      <define name="html.button.attlist">
         <interleave>
            <ref name="html.attrs"/>
            <optional>
               <attribute name="name"/>
            </optional>
            <optional>
               <attribute name="value"/>
            </optional>
            <optional>
               <attribute name="type">
                  <choice>
                     <value>button</value>
                     <value>submit</value>
                     <value>reset</value>
                  </choice>
               </attribute>
            </optional>
            <optional>
               <attribute name="disabled">
                  <value>disabled</value>
               </attribute>
            </optional>
            <optional>
               <attribute name="tabindex"/>
            </optional>
            <optional>
               <attribute name="accesskey"/>
            </optional>
            <optional>
               <attribute name="onfocus"/>
            </optional>
            <optional>
               <attribute name="onblur"/>
            </optional>
            <ref name="local.html.button.attributes"/>
         </interleave>
      </define>
      <define name="html.button">
         <element name="html:button">
            <ref name="html.button.attlist"/>
            <zeroOrMore>
               <ref name="inlines"/>
            </zeroOrMore>
         </element>
      </define>
   </div>
   <div xmlns:html="http://www.w3.org/1999/xhtml">
      <db:refname>html:label</db:refname>
      <db:refpurpose/>
      <define name="local.html.label.attributes">
         <empty/>
      </define>
      <define name="html.label.attlist">
         <interleave>
            <ref name="html.attrs"/>
            <optional>
               <attribute name="accesskey"/>
            </optional>
            <optional>
               <attribute name="onfocus"/>
            </optional>
            <optional>
               <attribute name="onblur"/>
            </optional>
            <ref name="local.html.label.attributes"/>
         </interleave>
      </define>
      <define name="html.label">
         <element name="html:label">
            <ref name="html.label.attlist"/>
            <zeroOrMore>
               <ref name="inlines"/>
            </zeroOrMore>
         </element>
      </define>
   </div>
   <div xmlns:html="http://www.w3.org/1999/xhtml">
      <db:refname>html:select</db:refname>
      <db:refpurpose/>
      <define name="local.html.select.attributes">
         <empty/>
      </define>
      <define name="html.select.attlist">
         <interleave>
            <ref name="html.attrs"/>
            <optional>
               <attribute name="name"/>
            </optional>
            <optional>
               <attribute name="size"/>
            </optional>
            <optional>
               <attribute name="multiple">
                  <value>multiple</value>
               </attribute>
            </optional>
            <optional>
               <attribute name="disabled">
                  <value>disabled</value>
               </attribute>
            </optional>
            <optional>
               <attribute name="tabindex"/>
            </optional>
            <optional>
               <attribute name="onfocus"/>
            </optional>
            <optional>
               <attribute name="onblur"/>
            </optional>
            <optional>
               <attribute name="onchange"/>
            </optional>
            <ref name="local.html.select.attributes"/>
         </interleave>
      </define>
      <define name="html.select">
         <element name="html:select">
            <ref name="html.select.attlist"/>
            <oneOrMore>
               <ref name="html.option"/>
            </oneOrMore>
         </element>
      </define>
   </div>
   <div xmlns:html="http://www.w3.org/1999/xhtml">
      <db:refname>html:option</db:refname>
      <db:refpurpose/>
      <define name="local.html.option.attributes">
         <empty/>
      </define>
      <define name="html.option.attlist">
         <interleave>
            <ref name="html.attrs"/>
            <optional>
               <attribute name="selected">
                  <value>selected</value>
               </attribute>
            </optional>
            <optional>
               <attribute name="disabled">
                  <value>disabled</value>
               </attribute>
            </optional>
            <optional>
               <attribute name="value"/>
            </optional>
            <ref name="local.html.option.attributes"/>
         </interleave>
      </define>
      <define name="html.option">
         <element name="html:option">
            <ref name="html.option.attlist"/>
            <text/>
         </element>
      </define>
   </div>
   <div xmlns:html="http://www.w3.org/1999/xhtml">
      <db:refname>html:textarea</db:refname>
      <db:refpurpose/>
      <define name="local.html.textarea.attributes">
         <empty/>
      </define>
      <define name="html.textarea.attlist">
         <interleave>
            <ref name="html.attrs"/>
            <optional>
               <attribute name="name"/>
            </optional>
            <attribute name="rows"/>
            <attribute name="cols"/>
            <optional>
               <attribute name="disabled">
                  <value>disabled</value>
               </attribute>
            </optional>
            <optional>
               <attribute name="readonly">
                  <value>readonly</value>
               </attribute>
            </optional>
            <optional>
               <attribute name="tabindex"/>
            </optional>
            <optional>
               <attribute name="accesskey"/>
            </optional>
            <optional>
               <attribute name="onfocus"/>
            </optional>
            <optional>
               <attribute name="onblur"/>
            </optional>
            <optional>
               <attribute name="onselect"/>
            </optional>
            <optional>
               <attribute name="onchange"/>
            </optional>
            <ref name="local.html.textarea.attributes"/>
         </interleave>
      </define>
      <define name="html.textarea">
         <element name="html:textarea">
            <ref name="html.textarea.attlist"/>
            <text/>
         </element>
      </define>
   </div>
   <div xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" xmlns:rddl="http://www.rddl.org/" xmlns:xlink="http://www.w3.org/1999/xlink">
      <db:refname>rddl:resource</db:refname>
      <db:refpurpose/>
      <define name="rddl.resource">
         <element name="rddl:resource">
            <optional>
               <ref name="id.attribute"/>
            </optional>
            <optional>
               <ref name="xml.lang.attribute"/>
            </optional>
            <optional>
               <ref name="xml.base.attribute"/>
            </optional>
            <optional>
               <attribute name="xlink:type" a:defaultValue="simple">
                  <value>simple</value>
               </attribute>
            </optional>
            <optional>
               <attribute name="xlink:arcrole"/>
            </optional>
            <optional>
               <attribute name="xlink:role" a:defaultValue="http://www.rddl.org/#resource">
                  <value>http://www.rddl.org/#resource</value>
               </attribute>
            </optional>
            <optional>
               <attribute name="xlink:href"/>
            </optional>
            <optional>
               <attribute name="xlink:title"/>
            </optional>
            <optional>
               <attribute name="xlink:embed" a:defaultValue="none">
                  <value>none</value>
               </attribute>
            </optional>
            <optional>
               <attribute name="xlink:actuate" a:defaultValue="none">
                  <value>none</value>
               </attribute>
            </optional>
            <zeroOrMore>
               <ref name="inlines"/>
            </zeroOrMore>
         </element>
      </define>
   </div>
   <define name="status.attribute">
      <attribute name="status"/>
   </define>
   <define name="label.attribute">
      <attribute name="label"/>
   </define>
   <define name="navigation.components">
      <choice>
         <notAllowed/>
         <ref name="db.bibliography"/>
      </choice>
   </define>
   <define name="component.contentmodel">
      <zeroOrMore>
         <ref name="navigation.components"/>
      </zeroOrMore>
      <ref name="blocks.or.sections"/>
      <zeroOrMore>
         <ref name="navigation.components"/>
      </zeroOrMore>
   </define>
   <div>
      <db:refname>appendix</db:refname>
      <db:refpurpose/>
      <define name="local.appendix.attributes">
         <empty/>
      </define>
      <define name="appendix.status.attribute">
         <ref name="status.attribute"/>
      </define>
      <define name="appendix.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="appendix.attlist">
         <interleave>
            <optional>
               <ref name="appendix.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <optional>
               <ref name="label.attribute"/>
            </optional>
            <optional>
               <ref name="appendix.status.attribute"/>
            </optional>
            <ref name="local.appendix.attributes"/>
         </interleave>
      </define>
      <define name="appendix.info">
         <ref name="docbook.info.titlereq"/>
      </define>
      <define name="db.appendix">
         <element name="appendix">
            <ref name="appendix.attlist"/>
            <ref name="appendix.info"/>
            <ref name="component.contentmodel"/>
         </element>
      </define>
   </div>
   <define name="blocks.or.sections">
      <choice>
         <group>
            <oneOrMore>
               <ref name="blocks"/>
            </oneOrMore>
            <ref name="sections.optional"/>
         </group>
         <ref name="sections.required"/>
      </choice>
   </define>
   <div>
      <db:refname>section</db:refname>
      <db:refpurpose/>
      <define name="local.section.attributes">
         <empty/>
      </define>
      <define name="section.status.attribute">
         <ref name="status.attribute"/>
      </define>
      <define name="section.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="section.attlist">
         <interleave>
            <optional>
               <ref name="section.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <optional>
               <ref name="label.attribute"/>
            </optional>
            <optional>
               <ref name="section.status.attribute"/>
            </optional>
            <ref name="local.section.attributes"/>
         </interleave>
      </define>
      <define name="section.info">
         <ref name="docbook.info.titlereq"/>
      </define>
      <define name="db.section">
         <element name="section">
            <ref name="section.attlist"/>
            <ref name="section.info"/>
            <ref name="blocks.or.sections"/>
         </element>
      </define>
   </div>
   <define name="sections.optional">
      <zeroOrMore>
         <ref name="db.section"/>
      </zeroOrMore>
   </define>
   <define name="sections.required">
      <oneOrMore>
         <ref name="db.section"/>
      </oneOrMore>
   </define>
   <define name="relation.attribute">
      <attribute name="relation"/>
   </define>
   <div>
      <db:refname>biblioentry</db:refname>
      <db:refpurpose/>
      <define name="local.biblioentry.attributes">
         <empty/>
      </define>
      <define name="biblioentry.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="biblioentry.attlist">
         <interleave>
            <optional>
               <ref name="biblioentry.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.biblioentry.attributes"/>
         </interleave>
      </define>
      <define name="db.biblioentry">
         <element name="biblioentry">
            <ref name="biblioentry.attlist"/>
            <oneOrMore>
               <ref name="bibliographic.elements"/>
            </oneOrMore>
         </element>
      </define>
   </div>
   <div>
      <db:refname>bibliomixed</db:refname>
      <db:refpurpose/>
      <define name="local.bibliomixed.attributes">
         <empty/>
      </define>
      <define name="bibliomixed.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="bibliomixed.attlist">
         <interleave>
            <optional>
               <ref name="bibliomixed.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.bibliomixed.attributes"/>
         </interleave>
      </define>
      <define name="db.bibliomixed">
         <element name="bibliomixed">
            <ref name="bibliomixed.attlist"/>
            <zeroOrMore>
               <choice>
                  <text/>
                  <ref name="bibliographic.elements"/>
               </choice>
            </zeroOrMore>
         </element>
      </define>
   </div>
   <div>
      <db:refname>biblioset</db:refname>
      <db:refpurpose/>
      <define name="local.biblioset.attributes">
         <empty/>
      </define>
      <define name="biblioset.relation.attrib">
         <ref name="relation.attribute"/>
      </define>
      <define name="biblioset.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="biblioset.attlist">
         <interleave>
            <optional>
               <ref name="biblioset.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <optional>
               <ref name="biblioset.relation.attrib"/>
            </optional>
            <ref name="local.biblioset.attributes"/>
         </interleave>
      </define>
      <define name="db.biblioset">
         <element name="biblioset">
            <ref name="biblioset.attlist"/>
            <oneOrMore>
               <ref name="bibliographic.elements"/>
            </oneOrMore>
         </element>
      </define>
   </div>
   <div>
      <db:refname>bibliomset</db:refname>
      <db:refpurpose/>
      <define name="local.bibliomset.attributes">
         <empty/>
      </define>
      <define name="bibliomset.relation.attrib">
         <ref name="relation.attribute"/>
      </define>
      <define name="bibliomset.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="bibliomset.attlist">
         <interleave>
            <optional>
               <ref name="bibliomset.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <optional>
               <ref name="bibliomset.relation.attrib"/>
            </optional>
            <ref name="local.bibliomset.attributes"/>
         </interleave>
      </define>
      <define name="db.bibliomset">
         <element name="bibliomset">
            <ref name="bibliomset.attlist"/>
            <zeroOrMore>
               <choice>
                  <ref name="docbook.text"/>
                  <ref name="bibliographic.elements"/>
               </choice>
            </zeroOrMore>
         </element>
      </define>
   </div>
   <div>
      <db:refname>bibliomisc</db:refname>
      <db:refpurpose/>
      <define name="local.bibliomisc.attributes">
         <empty/>
      </define>
      <define name="bibliomisc.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="bibliomisc.attlist">
         <interleave>
            <optional>
               <ref name="bibliomisc.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.bibliomisc.attributes"/>
         </interleave>
      </define>
      <define name="db.bibliomisc">
         <element name="bibliomisc">
            <ref name="bibliomisc.attlist"/>
            <ref name="docbook.text"/>
         </element>
      </define>
   </div>
   <div>
      <db:refname>bibliography</db:refname>
      <db:refpurpose/>
      <define name="local.bibliography.attributes">
         <empty/>
      </define>
      <define name="bibliography.status.attrib">
         <ref name="status.attribute"/>
      </define>
      <define name="bibliography.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="bibliography.attlist">
         <interleave>
            <optional>
               <ref name="bibliography.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <optional>
               <ref name="label.attribute"/>
            </optional>
            <optional>
               <ref name="bibliography.status.attrib"/>
            </optional>
            <ref name="local.bibliography.attributes"/>
         </interleave>
      </define>
      <define name="bibliography.info">
         <ref name="docbook.info"/>
      </define>
   </div>
   <div>
      <db:refname>bibliodiv</db:refname>
      <db:refpurpose/>
      <define name="local.bibliodiv.attributes">
         <empty/>
      </define>
      <define name="bibliodiv.status.attrib">
         <ref name="status.attribute"/>
      </define>
      <define name="bibliodiv.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="bibliodiv.attlist">
         <interleave>
            <optional>
               <ref name="bibliodiv.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <optional>
               <ref name="label.attribute"/>
            </optional>
            <optional>
               <ref name="bibliodiv.status.attrib"/>
            </optional>
            <ref name="local.bibliodiv.attributes"/>
         </interleave>
      </define>
      <define name="bibliodiv.info">
         <ref name="docbook.info.titlereq"/>
      </define>
   </div>
   <div>
      <db:refname>bibliolist</db:refname>
      <db:refpurpose/>
      <define name="local.bibliolist.attributes">
         <empty/>
      </define>
      <define name="bibliolist.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="bibliolist.attlist">
         <interleave>
            <optional>
               <ref name="bibliolist.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.bibliolist.attributes"/>
         </interleave>
      </define>
      <define name="bibliolist.info">
         <ref name="docbook.info.titleonly"/>
      </define>
      <define name="db.bibliolist">
         <element name="bibliolist">
            <ref name="bibliolist.attlist"/>
            <optional>
               <ref name="bibliolist.info"/>
            </optional>
            <zeroOrMore>
               <ref name="blocks"/>
            </zeroOrMore>
            <oneOrMore>
               <choice>
                  <ref name="db.biblioentry"/>
                  <ref name="db.bibliomixed"/>
               </choice>
            </oneOrMore>
         </element>
      </define>
   </div>
   <define name="db.bibliography">
      <element name="bibliography">
         <ref name="bibliography.attlist"/>
         <ref name="bibliography.info"/>
         <zeroOrMore>
            <ref name="blocks"/>
         </zeroOrMore>
         <choice>
            <oneOrMore>
               <ref name="db.bibliodiv"/>
            </oneOrMore>
            <oneOrMore>
               <ref name="db.bibliomixed"/>
            </oneOrMore>
         </choice>
      </element>
   </define>
   <define name="db.bibliodiv">
      <element name="bibliodiv">
         <ref name="bibliodiv.attlist"/>
         <ref name="bibliodiv.info"/>
         <zeroOrMore>
            <ref name="blocks"/>
         </zeroOrMore>
         <oneOrMore>
            <ref name="db.bibliomixed"/>
         </oneOrMore>
      </element>
   </define>
   <define name="char.attribute">
      <attribute name="char"/>
   </define>
   <define name="charoff.attribute">
      <attribute name="charoff"/>
   </define>
   <define name="colsep.attribute">
      <attribute name="colsep"/>
   </define>
   <define name="rowsep.attribute">
      <attribute name="rowsep"/>
   </define>
   <define name="align.attribute">
      <attribute name="align">
         <choice>
            <value>center</value>
            <value>char</value>
            <value>justify</value>
            <value>left</value>
            <value>right</value>
         </choice>
      </attribute>
   </define>
   <define name="valign.attribute">
      <attribute name="valign">
         <choice>
            <value>bottom</value>
            <value>middle</value>
            <value>top</value>
         </choice>
      </attribute>
   </define>
   <define name="spanname.attribute">
      <attribute name="spanname"/>
   </define>
   <define name="colname.attribute">
      <attribute name="colname"/>
   </define>
   <div>
      <db:refname>tgroup</db:refname>
      <db:refpurpose/>
      <define name="local.tgroup.attributes">
         <empty/>
      </define>
      <define name="tgroup.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="tgroup.attlist">
         <interleave>
            <optional>
               <ref name="tgroup.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <optional>
               <ref name="char.attribute"/>
            </optional>
            <optional>
               <ref name="charoff.attribute"/>
            </optional>
            <optional>
               <attribute name="tgroupstyle"/>
            </optional>
            <attribute name="cols">
               <data type="integer"/>
            </attribute>
            <optional>
               <ref name="colsep.attribute"/>
            </optional>
            <optional>
               <ref name="rowsep.attribute"/>
            </optional>
            <optional>
               <ref name="align.attribute"/>
            </optional>
            <ref name="local.tgroup.attributes"/>
         </interleave>
      </define>
      <define name="db.tgroup">
         <element name="tgroup">
            <ref name="tgroup.attlist"/>
            <zeroOrMore>
               <ref name="db.colspec"/>
            </zeroOrMore>
            <zeroOrMore>
               <ref name="db.spanspec"/>
            </zeroOrMore>
            <optional>
               <ref name="cals.thead"/>
            </optional>
            <optional>
               <ref name="cals.tfoot"/>
            </optional>
            <ref name="cals.tbody"/>
         </element>
      </define>
   </div>
   <div>
      <db:refname>colspec</db:refname>
      <db:refpurpose/>
      <define name="local.colspec.attributes">
         <empty/>
      </define>
      <define name="colspec.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="colspec.attlist">
         <interleave>
            <optional>
               <ref name="colspec.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <optional>
               <attribute name="colnum">
                  <data type="integer"/>
               </attribute>
            </optional>
            <optional>
               <ref name="char.attribute"/>
            </optional>
            <optional>
               <ref name="colsep.attribute"/>
            </optional>
            <optional>
               <attribute name="colwidth"/>
            </optional>
            <optional>
               <ref name="charoff.attribute"/>
            </optional>
            <optional>
               <ref name="colname.attribute"/>
            </optional>
            <optional>
               <ref name="rowsep.attribute"/>
            </optional>
            <optional>
               <ref name="align.attribute"/>
            </optional>
            <ref name="local.colspec.attributes"/>
         </interleave>
      </define>
      <define name="db.colspec">
         <element name="colspec">
            <ref name="colspec.attlist"/>
            <empty/>
         </element>
      </define>
   </div>
   <div>
      <db:refname>spanspec</db:refname>
      <db:refpurpose/>
      <define name="local.spanspec.attributes">
         <empty/>
      </define>
      <define name="spanspec.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="spanspec.attlist">
         <interleave>
            <optional>
               <ref name="spanspec.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <attribute name="namest"/>
            <attribute name="nameend"/>
            <ref name="spanname.attribute"/>
            <optional>
               <ref name="char.attribute"/>
            </optional>
            <optional>
               <ref name="colsep.attribute"/>
            </optional>
            <optional>
               <ref name="charoff.attribute"/>
            </optional>
            <optional>
               <ref name="rowsep.attribute"/>
            </optional>
            <optional>
               <ref name="align.attribute"/>
            </optional>
            <ref name="local.spanspec.attributes"/>
         </interleave>
      </define>
      <define name="db.spanspec">
         <element name="spanspec">
            <ref name="spanspec.attlist"/>
            <empty/>
         </element>
      </define>
   </div>
   <div>
      <db:refname>thead</db:refname>
      <db:refpurpose/>
      <define name="local.cals.thead.attributes">
         <empty/>
      </define>
      <define name="cals.thead.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="cals.thead.attlist">
         <interleave>
            <optional>
               <ref name="cals.thead.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <optional>
               <ref name="valign.attribute"/>
            </optional>
            <ref name="local.cals.thead.attributes"/>
         </interleave>
      </define>
      <define name="cals.thead">
         <element name="thead">
            <ref name="cals.thead.attlist"/>
            <zeroOrMore>
               <ref name="db.colspec"/>
            </zeroOrMore>
            <oneOrMore>
               <ref name="db.row"/>
            </oneOrMore>
         </element>
      </define>
   </div>
   <div>
      <db:refname>tfoot</db:refname>
      <db:refpurpose/>
      <define name="local.cals.tfoot.attributes">
         <empty/>
      </define>
      <define name="cals.tfoot.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="cals.tfoot.attlist">
         <interleave>
            <optional>
               <ref name="cals.tfoot.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <optional>
               <ref name="valign.attribute"/>
            </optional>
            <ref name="local.cals.tfoot.attributes"/>
         </interleave>
      </define>
      <define name="cals.tfoot">
         <element name="tfoot">
            <ref name="cals.tfoot.attlist"/>
            <zeroOrMore>
               <ref name="db.colspec"/>
            </zeroOrMore>
            <oneOrMore>
               <ref name="db.row"/>
            </oneOrMore>
         </element>
      </define>
   </div>
   <div>
      <db:refname>tbody</db:refname>
      <db:refpurpose/>
      <define name="local.cals.tbody.attributes">
         <empty/>
      </define>
      <define name="cals.tbody.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="cals.tbody.attlist">
         <interleave>
            <optional>
               <ref name="cals.tbody.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <optional>
               <ref name="valign.attribute"/>
            </optional>
            <ref name="local.cals.tbody.attributes"/>
         </interleave>
      </define>
      <define name="cals.tbody">
         <element name="tbody">
            <ref name="cals.tbody.attlist"/>
            <oneOrMore>
               <ref name="db.row"/>
            </oneOrMore>
         </element>
      </define>
   </div>
   <div>
      <db:refname>row</db:refname>
      <db:refpurpose/>
      <define name="local.row.attributes">
         <empty/>
      </define>
      <define name="row.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="row.attlist">
         <interleave>
            <optional>
               <ref name="row.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <optional>
               <ref name="rowsep.attribute"/>
            </optional>
            <optional>
               <ref name="valign.attribute"/>
            </optional>
            <ref name="local.row.attributes"/>
         </interleave>
      </define>
      <define name="db.row">
         <element name="row">
            <ref name="row.attlist"/>
            <oneOrMore>
               <choice>
                  <ref name="db.entry"/>
                  <ref name="db.entrytbl"/>
               </choice>
            </oneOrMore>
         </element>
      </define>
   </div>
   <div>
      <db:refname>entry</db:refname>
      <db:refpurpose/>
      <define name="local.entry.attributes">
         <empty/>
      </define>
      <define name="entry.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="entry.attlist">
         <interleave>
            <optional>
               <ref name="entry.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <optional>
               <attribute name="nameend"/>
            </optional>
            <optional>
               <ref name="valign.attribute"/>
            </optional>
            <optional>
               <ref name="char.attribute"/>
            </optional>
            <optional>
               <ref name="colsep.attribute"/>
            </optional>
            <optional>
               <ref name="charoff.attribute"/>
            </optional>
            <optional>
               <attribute name="morerows">
                  <data type="integer"/>
               </attribute>
            </optional>
            <optional>
               <attribute name="spanname"/>
            </optional>
            <optional>
               <attribute name="namest"/>
            </optional>
            <optional>
               <ref name="colname.attribute"/>
            </optional>
            <optional>
               <ref name="rowsep.attribute"/>
            </optional>
            <optional>
               <attribute name="rotate"/>
            </optional>
            <optional>
               <ref name="align.attribute"/>
            </optional>
            <ref name="local.entry.attributes"/>
         </interleave>
      </define>
      <define name="db.entry">
         <element name="entry">
            <ref name="entry.attlist"/>
            <choice>
               <zeroOrMore>
                  <ref name="inlines"/>
               </zeroOrMore>
               <zeroOrMore>
                  <ref name="blocks"/>
               </zeroOrMore>
            </choice>
         </element>
      </define>
   </div>
   <div>
      <db:refname>entrytbl</db:refname>
      <db:refpurpose/>
      <define name="local.entrytbl.attributes">
         <empty/>
      </define>
      <define name="entrytbl.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="entrytbl.attlist">
         <interleave>
            <optional>
               <ref name="entrytbl.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <optional>
               <attribute name="nameend"/>
            </optional>
            <optional>
               <ref name="char.attribute"/>
            </optional>
            <optional>
               <ref name="charoff.attribute"/>
            </optional>
            <optional>
               <attribute name="spanname"/>
            </optional>
            <optional>
               <attribute name="namest"/>
            </optional>
            <optional>
               <attribute name="tgroupstyle"/>
            </optional>
            <optional>
               <attribute name="cols">
                  <data type="integer"/>
               </attribute>
            </optional>
            <optional>
               <ref name="colsep.attribute"/>
            </optional>
            <optional>
               <ref name="rowsep.attribute"/>
            </optional>
            <optional>
               <ref name="colname.attribute"/>
            </optional>
            <optional>
               <ref name="align.attribute"/>
            </optional>
            <ref name="local.entrytbl.attributes"/>
         </interleave>
      </define>
      <define name="db.entrytbl">
         <element name="entrytbl">
            <ref name="entrytbl.attlist"/>
            <zeroOrMore>
               <ref name="db.colspec"/>
            </zeroOrMore>
            <zeroOrMore>
               <ref name="db.spanspec"/>
            </zeroOrMore>
            <optional>
               <ref name="cals.thead"/>
            </optional>
            <ref name="cals.tbody"/>
         </element>
      </define>
   </div>
   <div>
      <db:refname>table</db:refname>
      <db:refpurpose/>
      <define name="local.cals.table.attributes">
         <empty/>
      </define>
      <define name="cals.table.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="cals.table.attlist">
         <interleave>
            <optional>
               <ref name="cals.table.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <optional>
               <attribute name="tabstyle"/>
            </optional>
            <optional>
               <attribute name="orient">
                  <choice>
                     <value>land</value>
                     <value>port</value>
                  </choice>
               </attribute>
            </optional>
            <optional>
               <ref name="colsep.attribute"/>
            </optional>
            <optional>
               <ref name="rowsep.attribute"/>
            </optional>
            <optional>
               <attribute name="frame">
                  <choice>
                     <value>all</value>
                     <value>bottom</value>
                     <value>none</value>
                     <value>sides</value>
                     <value>top</value>
                     <value>topbot</value>
                  </choice>
               </attribute>
            </optional>
            <optional>
               <attribute name="pgwide">
                  <choice>
                     <value>0</value>
                     <value>1</value>
                  </choice>
               </attribute>
            </optional>
            <ref name="local.cals.table.attributes"/>
         </interleave>
      </define>
      <define name="cals.table.info">
         <ref name="docbook.info.titleonlyreq"/>
      </define>
      <define name="cals.table">
         <element name="table">
            <ref name="cals.table.attlist"/>
            <ref name="cals.table.info"/>
            <zeroOrMore>
               <ref name="indexing.inlines"/>
            </zeroOrMore>
            <zeroOrMore>
               <ref name="db.textobject"/>
            </zeroOrMore>
            <choice>
               <oneOrMore>
                  <ref name="db.mediaobject"/>
               </oneOrMore>
               <oneOrMore>
                  <ref name="db.tgroup"/>
               </oneOrMore>
            </choice>
         </element>
      </define>
   </div>
   <div>
      <db:refname>informaltable</db:refname>
      <db:refpurpose/>
      <define name="local.cals.informaltable.attributes">
         <empty/>
      </define>
      <define name="cals.informaltable.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="cals.informaltable.attlist">
         <interleave>
            <optional>
               <ref name="cals.informaltable.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <optional>
               <attribute name="tabstyle"/>
            </optional>
            <optional>
               <attribute name="orient">
                  <choice>
                     <value>land</value>
                     <value>port</value>
                  </choice>
               </attribute>
            </optional>
            <optional>
               <ref name="colsep.attribute"/>
            </optional>
            <optional>
               <ref name="rowsep.attribute"/>
            </optional>
            <optional>
               <attribute name="frame">
                  <choice>
                     <value>all</value>
                     <value>bottom</value>
                     <value>none</value>
                     <value>sides</value>
                     <value>top</value>
                     <value>topbot</value>
                  </choice>
               </attribute>
            </optional>
            <optional>
               <attribute name="pgwide">
                  <choice>
                     <value>0</value>
                     <value>1</value>
                  </choice>
               </attribute>
            </optional>
            <ref name="local.cals.informaltable.attributes"/>
         </interleave>
      </define>
      <define name="cals.informaltable.info">
         <ref name="docbook.info.titleforbidden"/>
      </define>
      <define name="cals.informaltable">
         <element name="informaltable">
            <ref name="cals.informaltable.attlist"/>
            <ref name="cals.informaltable.info"/>
            <zeroOrMore>
               <ref name="indexing.inlines"/>
            </zeroOrMore>
            <zeroOrMore>
               <ref name="db.textobject"/>
            </zeroOrMore>
            <choice>
               <oneOrMore>
                  <ref name="db.mediaobject"/>
               </oneOrMore>
               <oneOrMore>
                  <ref name="db.tgroup"/>
               </oneOrMore>
            </choice>
         </element>
      </define>
   </div>
   <define name="html.coreattrs" combine="interleave">
      <optional>
         <attribute name="class"/>
      </optional>
      <optional>
         <attribute name="style"/>
      </optional>
      <optional>
         <attribute name="title"/>
      </optional>
   </define>
   <define name="html.i18n" combine="interleave">
      <optional>
         <attribute name="lang"/>
      </optional>
      <optional>
         <attribute name="dir">
            <choice>
               <value>ltr</value>
               <value>rtl</value>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="html.events" combine="interleave">
      <optional>
         <attribute name="onclick"/>
      </optional>
      <optional>
         <attribute name="ondblclick"/>
      </optional>
      <optional>
         <attribute name="onmousedown"/>
      </optional>
      <optional>
         <attribute name="onmouseup"/>
      </optional>
      <optional>
         <attribute name="onmouseover"/>
      </optional>
      <optional>
         <attribute name="onmousemove"/>
      </optional>
      <optional>
         <attribute name="onmouseout"/>
      </optional>
      <optional>
         <attribute name="onkeypress"/>
      </optional>
      <optional>
         <attribute name="onkeydown"/>
      </optional>
      <optional>
         <attribute name="onkeyup"/>
      </optional>
   </define>
   <define name="html.attrs" combine="interleave">
      <ref name="html.coreattrs"/>
      <ref name="html.i18n"/>
      <ref name="html.events"/>
   </define>
   <define name="html.cellhalign" combine="interleave">
      <optional>
         <attribute name="align">
            <choice>
               <value>left</value>
               <value>center</value>
               <value>right</value>
               <value>justify</value>
               <value>char</value>
            </choice>
         </attribute>
      </optional>
      <optional>
         <attribute name="char"/>
      </optional>
      <optional>
         <attribute name="charoff"/>
      </optional>
   </define>
   <define name="html.cellvalign" combine="interleave">
      <optional>
         <attribute name="valign">
            <choice>
               <value>top</value>
               <value>middle</value>
               <value>bottom</value>
               <value>baseline</value>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="html.table.model">
      <ref name="html.caption"/>
      <choice>
         <zeroOrMore>
            <ref name="html.col"/>
         </zeroOrMore>
         <zeroOrMore>
            <ref name="html.colgroup"/>
         </zeroOrMore>
      </choice>
      <optional>
         <ref name="html.thead"/>
      </optional>
      <optional>
         <ref name="html.tfoot"/>
      </optional>
      <choice>
         <oneOrMore>
            <ref name="html.tbody"/>
         </oneOrMore>
         <oneOrMore>
            <ref name="html.tr"/>
         </oneOrMore>
      </choice>
   </define>
   <define name="html.informaltable.model">
      <choice>
         <zeroOrMore>
            <ref name="html.col"/>
         </zeroOrMore>
         <zeroOrMore>
            <ref name="html.colgroup"/>
         </zeroOrMore>
      </choice>
      <optional>
         <ref name="html.thead"/>
      </optional>
      <optional>
         <ref name="html.tfoot"/>
      </optional>
      <choice>
         <oneOrMore>
            <ref name="html.tbody"/>
         </oneOrMore>
         <oneOrMore>
            <ref name="html.tr"/>
         </oneOrMore>
      </choice>
   </define>
   <div>
      <db:refname>table</db:refname>
      <db:refpurpose/>
      <define name="local.html.table.attributes">
         <empty/>
      </define>
      <define name="html.table.attlist">
         <interleave>
            <ref name="html.attrs"/>
            <optional>
               <attribute name="summary"/>
            </optional>
            <optional>
               <attribute name="width"/>
            </optional>
            <optional>
               <attribute name="border"/>
            </optional>
            <optional>
               <attribute name="frame">
                  <choice>
                     <value>void</value>
                     <value>above</value>
                     <value>below</value>
                     <value>hsides</value>
                     <value>lhs</value>
                     <value>rhs</value>
                     <value>vsides</value>
                     <value>box</value>
                     <value>border</value>
                  </choice>
               </attribute>
            </optional>
            <optional>
               <attribute name="rules">
                  <choice>
                     <value>none</value>
                     <value>groups</value>
                     <value>rows</value>
                     <value>cols</value>
                     <value>all</value>
                  </choice>
               </attribute>
            </optional>
            <optional>
               <attribute name="cellspacing"/>
            </optional>
            <optional>
               <attribute name="cellpadding"/>
            </optional>
            <ref name="local.html.table.attributes"/>
         </interleave>
      </define>
      <define name="html.table">
         <element name="table">
            <ref name="html.table.attlist"/>
            <ref name="html.table.model"/>
         </element>
      </define>
   </div>
   <div>
      <db:refname>informaltable</db:refname>
      <db:refpurpose/>
      <define name="local.html.informaltable.attributes">
         <empty/>
      </define>
      <define name="html.informaltable.attlist">
         <interleave>
            <ref name="html.attrs"/>
            <optional>
               <attribute name="summary"/>
            </optional>
            <optional>
               <attribute name="width"/>
            </optional>
            <optional>
               <attribute name="border"/>
            </optional>
            <optional>
               <attribute name="frame">
                  <choice>
                     <value>void</value>
                     <value>above</value>
                     <value>below</value>
                     <value>hsides</value>
                     <value>lhs</value>
                     <value>rhs</value>
                     <value>vsides</value>
                     <value>box</value>
                     <value>border</value>
                  </choice>
               </attribute>
            </optional>
            <optional>
               <attribute name="rules">
                  <choice>
                     <value>none</value>
                     <value>groups</value>
                     <value>rows</value>
                     <value>cols</value>
                     <value>all</value>
                  </choice>
               </attribute>
            </optional>
            <optional>
               <attribute name="cellspacing"/>
            </optional>
            <optional>
               <attribute name="cellpadding"/>
            </optional>
            <ref name="local.html.informaltable.attributes"/>
         </interleave>
      </define>
      <define name="html.informaltable">
         <element name="informaltable">
            <ref name="html.informaltable.attlist"/>
            <ref name="html.informaltable.model"/>
         </element>
      </define>
   </div>
   <div>
      <db:refname>caption</db:refname>
      <db:refpurpose/>
      <define name="local.caption.attributes">
         <empty/>
      </define>
      <define name="html.caption.attlist">
         <interleave>
            <ref name="html.attrs"/>
            <ref name="local.caption.attributes"/>
         </interleave>
      </define>
      <define name="html.caption">
         <element name="caption">
            <ref name="html.caption.attlist"/>
            <text/>
         </element>
      </define>
   </div>
   <div>
      <db:refname>col</db:refname>
      <db:refpurpose/>
      <define name="local.col.attributes">
         <empty/>
      </define>
      <define name="html.col.attlist">
         <interleave>
            <ref name="html.attrs"/>
            <optional>
               <attribute name="span"/>
            </optional>
            <optional>
               <attribute name="width"/>
            </optional>
            <ref name="html.cellhalign"/>
            <ref name="html.cellvalign"/>
            <ref name="local.col.attributes"/>
         </interleave>
      </define>
      <define name="html.col">
         <element name="col">
            <ref name="html.col.attlist"/>
            <empty/>
         </element>
      </define>
   </div>
   <div>
      <db:refname>colgroup</db:refname>
      <db:refpurpose/>
      <define name="local.colgroup.attributes">
         <empty/>
      </define>
      <define name="html.colgroup.attlist">
         <interleave>
            <ref name="html.attrs"/>
            <optional>
               <attribute name="span"/>
            </optional>
            <optional>
               <attribute name="width"/>
            </optional>
            <ref name="html.cellhalign"/>
            <ref name="html.cellvalign"/>
            <ref name="local.colgroup.attributes"/>
         </interleave>
      </define>
      <define name="html.colgroup">
         <element name="colgroup">
            <ref name="html.colgroup.attlist"/>
            <zeroOrMore>
               <ref name="html.col"/>
            </zeroOrMore>
         </element>
      </define>
   </div>
   <div>
      <db:refname>thead</db:refname>
      <db:refpurpose/>
      <define name="local.html.thead.attributes">
         <empty/>
      </define>
      <define name="html.thead.attlist">
         <interleave>
            <ref name="html.attrs"/>
            <ref name="html.cellhalign"/>
            <ref name="html.cellvalign"/>
            <ref name="local.html.thead.attributes"/>
         </interleave>
      </define>
      <define name="html.thead">
         <element name="thead">
            <ref name="html.thead.attlist"/>
            <oneOrMore>
               <ref name="html.tr"/>
            </oneOrMore>
         </element>
      </define>
   </div>
   <div>
      <db:refname>tfoot</db:refname>
      <db:refpurpose/>
      <define name="local.html.tfoot.attributes">
         <empty/>
      </define>
      <define name="html.tfoot.attlist">
         <interleave>
            <ref name="html.attrs"/>
            <ref name="html.cellhalign"/>
            <ref name="html.cellvalign"/>
            <ref name="local.html.tfoot.attributes"/>
         </interleave>
      </define>
      <define name="html.tfoot">
         <element name="tfoot">
            <ref name="html.tfoot.attlist"/>
            <oneOrMore>
               <ref name="html.tr"/>
            </oneOrMore>
         </element>
      </define>
   </div>
   <div>
      <db:refname>tbody</db:refname>
      <db:refpurpose/>
      <define name="local.html.tbody.attributes">
         <empty/>
      </define>
      <define name="html.tbody.attlist">
         <interleave>
            <ref name="html.attrs"/>
            <ref name="html.cellhalign"/>
            <ref name="html.cellvalign"/>
            <ref name="local.html.tbody.attributes"/>
         </interleave>
      </define>
      <define name="html.tbody">
         <element name="tbody">
            <ref name="html.tbody.attlist"/>
            <oneOrMore>
               <ref name="html.tr"/>
            </oneOrMore>
         </element>
      </define>
   </div>
   <div>
      <db:refname>tr</db:refname>
      <db:refpurpose/>
      <define name="local.tr.attributes">
         <empty/>
      </define>
      <define name="html.tr.attlist">
         <interleave>
            <ref name="html.attrs"/>
            <ref name="html.cellhalign"/>
            <ref name="html.cellvalign"/>
            <ref name="local.tr.attributes"/>
         </interleave>
      </define>
      <define name="html.tr">
         <element name="tr">
            <ref name="html.tr.attlist"/>
            <oneOrMore>
               <choice>
                  <ref name="html.th"/>
                  <ref name="html.td"/>
               </choice>
            </oneOrMore>
         </element>
      </define>
   </div>
   <div>
      <db:refname>th</db:refname>
      <db:refpurpose/>
      <define name="local.th.attributes">
         <empty/>
      </define>
      <define name="html.th.attlist">
         <interleave>
            <ref name="html.attrs"/>
            <optional>
               <attribute name="abbr"/>
            </optional>
            <optional>
               <attribute name="axis"/>
            </optional>
            <optional>
               <attribute name="headers"/>
            </optional>
            <optional>
               <attribute name="scope"/>
            </optional>
            <optional>
               <attribute name="rowspan"/>
            </optional>
            <optional>
               <attribute name="colspan"/>
            </optional>
            <ref name="html.cellhalign"/>
            <ref name="html.cellvalign"/>
            <ref name="local.th.attributes"/>
         </interleave>
      </define>
      <define name="html.th">
         <element name="th">
            <ref name="html.th.attlist"/>
            <choice>
               <zeroOrMore>
                  <ref name="inlines"/>
               </zeroOrMore>
               <zeroOrMore>
                  <ref name="blocks"/>
               </zeroOrMore>
            </choice>
         </element>
      </define>
   </div>
   <div>
      <db:refname>td</db:refname>
      <db:refpurpose/>
      <define name="local.td.attributes">
         <empty/>
      </define>
      <define name="html.td.attlist">
         <interleave>
            <ref name="html.attrs"/>
            <optional>
               <attribute name="abbr"/>
            </optional>
            <optional>
               <attribute name="axis"/>
            </optional>
            <optional>
               <attribute name="headers"/>
            </optional>
            <optional>
               <attribute name="scope"/>
            </optional>
            <optional>
               <attribute name="rowspan"/>
            </optional>
            <optional>
               <attribute name="colspan"/>
            </optional>
            <ref name="html.cellhalign"/>
            <ref name="html.cellvalign"/>
            <ref name="local.td.attributes"/>
         </interleave>
      </define>
      <define name="html.td">
         <element name="td">
            <ref name="html.td.attlist"/>
            <choice>
               <zeroOrMore>
                  <ref name="inlines"/>
               </zeroOrMore>
               <zeroOrMore>
                  <ref name="blocks"/>
               </zeroOrMore>
            </choice>
         </element>
      </define>
   </div>
   <define name="id.attribute">
      <attribute name="id">
         <data type="ID"/>
      </attribute>
   </define>
   <define name="xml.lang.attribute">
      <attribute name="xml:lang"/>
   </define>
   <define name="xml.base.attribute">
      <attribute name="xml:base"/>
   </define>
   <define name="revisionflag.attribute">
      <attribute name="revisionflag">
         <choice>
            <value>changed</value>
            <value>added</value>
            <value>deleted</value>
            <value>off</value>
         </choice>
      </attribute>
   </define>
   <define name="version.attribute">
      <attribute name="version"/>
   </define>
   <define name="linkend.attribute">
      <attribute name="linkend">
         <data type="IDREF"/>
      </attribute>
   </define>
   <define name="href.attribute">
      <attribute name="href"/>
   </define>
   <define name="common.linking.attributes.req">
      <choice>
         <ref name="linkend.attribute"/>
         <ref name="href.attribute"/>
      </choice>
   </define>
   <define name="common.linking.attributes">
      <optional>
         <choice>
            <ref name="linkend.attribute"/>
            <ref name="href.attribute"/>
         </choice>
      </optional>
   </define>
   <define name="linenumbering.attribute">
      <attribute name="linenumbering">
         <choice>
            <value>numbered</value>
            <value>unnumbered</value>
         </choice>
      </attribute>
   </define>
   <define name="startinglinenumber.attribute">
      <attribute name="startinglinenumber">
         <data type="integer"/>
      </attribute>
   </define>
   <define name="verb-language.attribute">
      <attribute name="language"/>
   </define>
   <define name="continuation.attribute">
      <attribute name="continuation">
         <choice>
            <value>continues</value>
            <value>restarts</value>
         </choice>
      </attribute>
   </define>
   <define name="verbatim.attributes" combine="interleave">
      <optional>
         <ref name="continuation.attribute"/>
      </optional>
      <optional>
         <ref name="linenumbering.attribute"/>
      </optional>
      <optional>
         <ref name="startinglinenumber.attribute"/>
      </optional>
      <optional>
         <ref name="verb-language.attribute"/>
      </optional>
   </define>
   <define name="float.attribute">
      <attribute name="float"/>
   </define>
   <define name="pgwide.attribute">
      <attribute name="pgwide">
         <choice>
            <value>0</value>
            <value>1</value>
         </choice>
      </attribute>
   </define>
   <define name="data.format.attribute">
      <attribute name="format"/>
   </define>
   <define name="data.fileref.attribute">
      <attribute name="fileref"/>
   </define>
   <define name="data.entityref.attribute">
      <attribute name="entityref">
         <data type="ENTITY"/>
      </attribute>
   </define>
   <define name="data.common.attrib" combine="interleave">
      <optional>
         <ref name="data.format.attribute"/>
      </optional>
      <choice>
         <ref name="data.fileref.attribute"/>
         <ref name="data.entityref.attribute"/>
      </choice>
   </define>
   <ctrl:other-attribute xmlns:ctrl="http://nwalsh.com/xmlns/schema-control/" name="biblio.class.attrib" enum-name="biblio.class-enum.attribute" other-name="biblio.class-other.attributes"/>
   <define name="biblio.class-enum.attribute">
      <optional>
         <attribute name="class">
            <choice>
               <value>doi</value>
               <value>isbn</value>
               <value>issn</value>
               <value>libraryofcongress</value>
               <value>pubnumber</value>
               <value>uri</value>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="biblio.class-other.attributes">
      <optional>
         <attribute name="class">
            <value>other</value>
         </attribute>
      </optional>
      <attribute name="otherclass">
         <data type="NMTOKEN"/>
      </attribute>
   </define>
   <define name="biblio.class.attrib">
      <choice>
         <ref name="biblio.class-enum.attribute"/>
         <ref name="biblio.class-other.attributes"/>
      </choice>
   </define>
   <define name="text.phrase">
      <element name="phrase">
         <ref name="docbook.text"/>
      </element>
   </define>
   <define name="docbook.text">
      <zeroOrMore>
         <choice>
            <text/>
            <ref name="ubiq.inlines"/>
            <ref name="text.phrase"/>
            <ref name="db.replaceable"/>
         </choice>
      </zeroOrMore>
   </define>
   <define name="inlines">
      <choice>
         <choice>
            <text/>
            <ref name="ubiq.inlines"/>
            <ref name="general.inlines"/>
            <ref name="domain.inlines"/>
            <ref name="extension.inlines"/>
         </choice>
         <ref xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" xmlns:rddl="http://www.rddl.org/" xmlns:xlink="http://www.w3.org/1999/xlink" name="rddl"/>
         <ref name="db.tag"/>
      </choice>
   </define>
   <define name="general.inlines">
      <choice>
         <ref name="publishing.inlines"/>
         <ref name="product.inlines"/>
         <ref name="bibliography.inlines"/>
         <ref name="graphic.inlines"/>
         <ref name="indexing.inlines"/>
         <ref name="link.inlines"/>
      </choice>
   </define>
   <define name="domain.inlines">
      <choice>
         <ref name="technical.inlines"/>
         <ref name="error.inlines"/>
         <ref name="os.inlines"/>
         <ref name="programming.inlines"/>
         <ref name="markup.inlines"/>
         <ref name="math.inlines"/>
         <ref name="gui.inlines"/>
         <ref name="keyboard.inlines"/>
      </choice>
   </define>
   <define name="graphic.inlines">
      <ref name="db.inlinemediaobject"/>
   </define>
   <define name="indexing.inlines">
      <notAllowed/>
   </define>
   <define name="extension.inlines">
      <choice>
         <notAllowed/>
         <choice xmlns:html="http://www.w3.org/1999/xhtml">
            <ref name="html.input"/>
            <ref name="html.button"/>
            <ref name="html.label"/>
            <ref name="html.select"/>
            <ref name="html.textarea"/>
         </choice>
      </choice>
   </define>
   <define name="blocks">
      <choice>
         <choice>
            <ref name="blocks.nopara"/>
            <ref name="para.blocks"/>
            <ref name="extension.blocks"/>
         </choice>
         <choice>
            <ref name="ws.webtoc"/>
            <ref name="ws.rss"/>
         </choice>
      </choice>
   </define>
   <define name="extension.blocks">
      <choice>
         <notAllowed/>
         <ref xmlns:html="http://www.w3.org/1999/xhtml" name="html.form"/>
      </choice>
   </define>
   <div>
      <db:refname>title</db:refname>
      <db:refpurpose/>
      <define name="local.title.attributes">
         <empty/>
      </define>
      <define name="title.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="title.attlist">
         <interleave>
            <optional>
               <ref name="title.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.title.attributes"/>
         </interleave>
      </define>
      <define name="db.title">
         <element name="title">
            <ref name="title.attlist"/>
            <zeroOrMore>
               <ref name="inlines"/>
            </zeroOrMore>
         </element>
      </define>
   </div>
   <div>
      <db:refname>titleabbrev</db:refname>
      <db:refpurpose/>
      <define name="local.titleabbrev.attributes">
         <empty/>
      </define>
      <define name="titleabbrev.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="titleabbrev.attlist">
         <interleave>
            <optional>
               <ref name="titleabbrev.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.titleabbrev.attributes"/>
         </interleave>
      </define>
      <define name="db.titleabbrev">
         <element name="titleabbrev">
            <ref name="titleabbrev.attlist"/>
            <zeroOrMore>
               <ref name="inlines"/>
            </zeroOrMore>
         </element>
      </define>
   </div>
   <div>
      <db:refname>subtitle</db:refname>
      <db:refpurpose/>
      <define name="local.subtitle.attributes">
         <empty/>
      </define>
      <define name="subtitle.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="subtitle.attlist">
         <interleave>
            <optional>
               <ref name="subtitle.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.subtitle.attributes"/>
         </interleave>
      </define>
      <define name="db.subtitle">
         <element name="subtitle">
            <ref name="subtitle.attlist"/>
            <zeroOrMore>
               <ref name="inlines"/>
            </zeroOrMore>
         </element>
      </define>
   </div>
   <define name="docbook.title">
      <interleave>
         <optional>
            <ref name="db.title"/>
         </optional>
         <optional>
            <ref name="db.titleabbrev"/>
         </optional>
         <optional>
            <ref name="db.subtitle"/>
         </optional>
      </interleave>
   </define>
   <define name="docbook.titlereq">
      <interleave>
         <ref name="db.title"/>
         <optional>
            <ref name="db.titleabbrev"/>
         </optional>
         <optional>
            <ref name="db.subtitle"/>
         </optional>
      </interleave>
   </define>
   <define name="docbook.titleonly">
      <interleave>
         <optional>
            <ref name="db.title"/>
         </optional>
         <optional>
            <ref name="db.titleabbrev"/>
         </optional>
      </interleave>
   </define>
   <define name="docbook.titleonlyreq">
      <interleave>
         <ref name="db.title"/>
         <optional>
            <ref name="db.titleabbrev"/>
         </optional>
      </interleave>
   </define>
   <define name="docbook.info">
      <choice>
         <group>
            <optional>
               <ref name="docbook.titlereq"/>
            </optional>
            <optional>
               <ref name="db.info.titleforbidden"/>
            </optional>
         </group>
         <optional>
            <ref name="db.info"/>
         </optional>
      </choice>
   </define>
   <define name="docbook.info.titlereq">
      <choice>
         <group>
            <ref name="docbook.titlereq"/>
            <optional>
               <ref name="db.info.titleforbidden"/>
            </optional>
         </group>
         <ref name="db.info.titlereq"/>
      </choice>
   </define>
   <define name="docbook.info.titleonly">
      <choice>
         <group>
            <ref name="docbook.titleonly"/>
            <optional>
               <ref name="db.info.titleforbidden"/>
            </optional>
         </group>
         <ref name="db.info.titleonly"/>
      </choice>
   </define>
   <define name="docbook.info.titleonlyreq">
      <choice>
         <group>
            <ref name="docbook.titleonlyreq"/>
            <optional>
               <ref name="db.info.titleforbidden"/>
            </optional>
         </group>
         <ref name="db.info.titleonlyreq"/>
      </choice>
   </define>
   <define name="docbook.info.titleforbidden">
      <optional>
         <ref name="db.info.titleforbidden"/>
      </optional>
   </define>
   <ctrl:alternate-define xmlns:ctrl="http://nwalsh.com/xmlns/schema-control/" name="docbook.title">
      <optional>
         <ref name="db.title"/>
      </optional>
      <optional>
         <ref name="db.titleabbrev"/>
      </optional>
      <optional>
         <ref name="db.subtitle"/>
      </optional>
   </ctrl:alternate-define>
   <ctrl:alternate-define xmlns:ctrl="http://nwalsh.com/xmlns/schema-control/" name="docbook.titlereq">
      <ref name="db.title"/>
      <optional>
         <ref name="db.titleabbrev"/>
      </optional>
      <optional>
         <ref name="db.subtitle"/>
      </optional>
   </ctrl:alternate-define>
   <ctrl:alternate-define xmlns:ctrl="http://nwalsh.com/xmlns/schema-control/" name="db.info">
      <element name="info">
         <zeroOrMore>
            <choice>
               <ref name="docbook.title"/>
               <ref name="info.elements"/>
            </choice>
         </zeroOrMore>
      </element>
   </ctrl:alternate-define>
   <ctrl:alternate-define xmlns:ctrl="http://nwalsh.com/xmlns/schema-control/" name="docbook.info">
      <optional>
         <ref name="db.info"/>
      </optional>
   </ctrl:alternate-define>
   <ctrl:alternate-define xmlns:ctrl="http://nwalsh.com/xmlns/schema-control/" name="docbook.info.titlereq">
      <ref name="docbook.titlereq"/>
      <optional>
         <ref name="db.info"/>
      </optional>
   </ctrl:alternate-define>
   <ctrl:alternate-define xmlns:ctrl="http://nwalsh.com/xmlns/schema-control/" name="docbook.info.titleforbidden">
      <optional>
         <ref name="db.info"/>
      </optional>
   </ctrl:alternate-define>
   <div>
      <db:refname>info</db:refname>
      <db:refpurpose/>
      <define name="local.info.attributes">
         <empty/>
      </define>
      <define name="info.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="info.attlist">
         <interleave>
            <optional>
               <ref name="info.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="local.info.attributes"/>
         </interleave>
      </define>
      <define name="db.info">
         <element name="info">
            <ref name="info.attlist"/>
            <ref name="docbook.title"/>
            <zeroOrMore>
               <ref name="info.elements"/>
            </zeroOrMore>
         </element>
      </define>
   </div>
   <div>
      <db:refname>info</db:refname>
      <db:refpurpose/>
      <define name="local.info.titlereq.attributes">
         <empty/>
      </define>
      <define name="info.titlereq.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="info.titlereq.attlist">
         <interleave>
            <optional>
               <ref name="info.titlereq.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="local.info.titlereq.attributes"/>
         </interleave>
      </define>
      <define name="db.info.titlereq">
         <element name="info">
            <ref name="info.titlereq.attlist"/>
            <ref name="docbook.titlereq"/>
            <zeroOrMore>
               <ref name="info.elements"/>
            </zeroOrMore>
         </element>
      </define>
   </div>
   <div>
      <db:refname>info</db:refname>
      <db:refpurpose/>
      <define name="local.info.titleonly.attributes">
         <empty/>
      </define>
      <define name="info.titleonly.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="info.titleonly.attlist">
         <interleave>
            <optional>
               <ref name="info.titleonly.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="local.info.titleonly.attributes"/>
         </interleave>
      </define>
      <define name="db.info.titleonly">
         <element name="info">
            <ref name="info.titleonly.attlist"/>
            <ref name="docbook.titleonly"/>
            <zeroOrMore>
               <ref name="info.elements"/>
            </zeroOrMore>
         </element>
      </define>
   </div>
   <div>
      <db:refname>info</db:refname>
      <db:refpurpose/>
      <define name="local.info.titleonlyreq.attributes">
         <empty/>
      </define>
      <define name="info.titleonlyreq.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="info.titleonlyreq.attlist">
         <interleave>
            <optional>
               <ref name="info.titleonlyreq.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="local.info.titleonlyreq.attributes"/>
         </interleave>
      </define>
      <define name="db.info.titleonlyreq">
         <element name="info">
            <ref name="info.titleonlyreq.attlist"/>
            <ref name="docbook.titleonlyreq"/>
            <zeroOrMore>
               <ref name="info.elements"/>
            </zeroOrMore>
         </element>
      </define>
   </div>
   <div>
      <db:refname>info</db:refname>
      <db:refpurpose/>
      <define name="local.info.titleforbidden.attributes">
         <empty/>
      </define>
      <define name="info.titleforbidden.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="info.titleforbidden.attlist">
         <interleave>
            <optional>
               <ref name="info.titleforbidden.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="local.info.titleforbidden.attributes"/>
         </interleave>
      </define>
      <define name="db.info.titleforbidden">
         <element name="info">
            <ref name="info.titleforbidden.attlist"/>
            <zeroOrMore>
               <ref name="info.elements"/>
            </zeroOrMore>
         </element>
      </define>
   </div>
   <div>
      <db:refname>subjectset</db:refname>
      <db:refpurpose/>
      <define name="local.subjectset.attributes">
         <empty/>
      </define>
      <define name="subjectset.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="subjectset.attlist">
         <interleave>
            <optional>
               <ref name="subjectset.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <optional>
               <attribute name="scheme">
                  <data type="NMTOKEN"/>
               </attribute>
            </optional>
            <ref name="local.subjectset.attributes"/>
         </interleave>
      </define>
      <define name="db.subjectset">
         <element name="subjectset">
            <ref name="subjectset.attlist"/>
            <oneOrMore>
               <ref name="db.subject"/>
            </oneOrMore>
         </element>
      </define>
   </div>
   <div>
      <db:refname>subject</db:refname>
      <db:refpurpose/>
      <define name="local.subject.attributes">
         <empty/>
      </define>
      <define name="subject.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="subject.attlist">
         <interleave>
            <optional>
               <ref name="subject.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <optional>
               <attribute name="weight"/>
            </optional>
            <ref name="local.subject.attributes"/>
         </interleave>
      </define>
      <define name="db.subject">
         <element name="subject">
            <ref name="subject.attlist"/>
            <oneOrMore>
               <ref name="db.subjectterm"/>
            </oneOrMore>
         </element>
      </define>
   </div>
   <div>
      <db:refname>subjectterm</db:refname>
      <db:refpurpose/>
      <define name="local.subjectterm.attributes">
         <empty/>
      </define>
      <define name="subjectterm.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="subjectterm.attlist">
         <interleave>
            <optional>
               <ref name="subjectterm.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.subjectterm.attributes"/>
         </interleave>
      </define>
      <define name="db.subjectterm">
         <element name="subjectterm">
            <ref name="subjectterm.attlist"/>
            <text/>
         </element>
      </define>
   </div>
   <div>
      <db:refname>keywordset</db:refname>
      <db:refpurpose/>
      <define name="local.keywordset.attributes">
         <empty/>
      </define>
      <define name="keywordset.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="keywordset.attlist">
         <interleave>
            <optional>
               <ref name="keywordset.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.keywordset.attributes"/>
         </interleave>
      </define>
      <define name="db.keywordset">
         <element name="keywordset">
            <ref name="keywordset.attlist"/>
            <oneOrMore>
               <ref name="db.keyword"/>
            </oneOrMore>
         </element>
      </define>
   </div>
   <div>
      <db:refname>keyword</db:refname>
      <db:refpurpose/>
      <define name="local.keyword.attributes">
         <empty/>
      </define>
      <define name="keyword.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="keyword.attlist">
         <interleave>
            <optional>
               <ref name="keyword.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.keyword.attributes"/>
         </interleave>
      </define>
      <define name="db.keyword">
         <element name="keyword">
            <ref name="keyword.attlist"/>
            <text/>
         </element>
      </define>
   </div>
   <define name="table.choice">
      <choice>
         <notAllowed/>
         <ref name="cals.table"/>
         <ref name="html.table"/>
      </choice>
   </define>
   <define name="informaltable.choice">
      <choice>
         <notAllowed/>
         <ref name="cals.informaltable"/>
         <ref name="html.informaltable"/>
      </choice>
   </define>
   <define name="db.table">
      <ref name="table.choice"/>
   </define>
   <define name="db.informaltable">
      <ref name="informaltable.choice"/>
   </define>
   <div>
      <db:refname>sidebar</db:refname>
      <db:refpurpose/>
      <define name="local.sidebar.attributes">
         <empty/>
      </define>
      <ctrl:exclude xmlns:ctrl="http://nwalsh.com/xmlns/schema-control/" from="db.sidebar" exclude="db.sidebar"/>
      <define name="sidebar.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="sidebar.attlist">
         <interleave>
            <optional>
               <ref name="sidebar.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.sidebar.attributes"/>
         </interleave>
      </define>
      <define name="sidebar.info">
         <ref name="docbook.info.titleonly"/>
      </define>
      <define name="db.sidebar">
         <element name="sidebar">
            <s:rule xmlns:s="http://www.ascc.net/xml/schematron" context="db:sidebar">
               <s:assert test="not(.//db:sidebar)">sidebar must not occur in the descendants of sidebar</s:assert>
            </s:rule>
            <ref name="sidebar.attlist"/>
            <ref name="sidebar.info"/>
            <oneOrMore>
               <ref name="blocks"/>
            </oneOrMore>
         </element>
      </define>
   </div>
   <div>
      <db:refname>abstract</db:refname>
      <db:refpurpose/>
      <define name="local.abstract.attributes">
         <empty/>
      </define>
      <define name="abstract.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="abstract.attlist">
         <interleave>
            <optional>
               <ref name="abstract.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.abstract.attributes"/>
         </interleave>
      </define>
      <define name="abstract.info">
         <ref name="docbook.info.titleonly"/>
      </define>
      <define name="db.abstract">
         <element name="abstract">
            <ref name="abstract.attlist"/>
            <ref name="abstract.info"/>
            <oneOrMore>
               <ref name="para.blocks"/>
            </oneOrMore>
         </element>
      </define>
   </div>
   <div>
      <db:refname>personblurb</db:refname>
      <db:refpurpose/>
      <define name="local.personblurb.attributes">
         <empty/>
      </define>
      <define name="personblurb.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="personblurb.attlist">
         <interleave>
            <optional>
               <ref name="personblurb.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.personblurb.attributes"/>
         </interleave>
      </define>
      <define name="personblurb.info">
         <ref name="docbook.info.titleonly"/>
      </define>
      <define name="db.personblurb">
         <element name="personblurb">
            <ref name="personblurb.attlist"/>
            <ref name="personblurb.info"/>
            <oneOrMore>
               <ref name="para.blocks"/>
            </oneOrMore>
         </element>
      </define>
   </div>
   <div>
      <db:refname>blockquote</db:refname>
      <db:refpurpose/>
      <define name="local.blockquote.attributes">
         <empty/>
      </define>
      <define name="blockquote.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="blockquote.attlist">
         <interleave>
            <optional>
               <ref name="blockquote.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.blockquote.attributes"/>
         </interleave>
      </define>
      <define name="blockquote.info">
         <ref name="docbook.info.titleonly"/>
      </define>
      <define name="db.blockquote">
         <element name="blockquote">
            <ref name="blockquote.attlist"/>
            <ref name="blockquote.info"/>
            <optional>
               <ref name="db.attribution"/>
            </optional>
            <oneOrMore>
               <ref name="blocks"/>
            </oneOrMore>
         </element>
      </define>
   </div>
   <div>
      <db:refname>attribution</db:refname>
      <db:refpurpose/>
      <define name="local.attribution.attributes">
         <empty/>
      </define>
      <define name="attribution.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="attribution.attlist">
         <interleave>
            <optional>
               <ref name="attribution.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.attribution.attributes"/>
         </interleave>
      </define>
      <define name="db.attribution">
         <element name="attribution">
            <ref name="attribution.attlist"/>
            <choice>
               <ref name="docbook.text"/>
               <ref name="db.personname"/>
            </choice>
         </element>
      </define>
   </div>
   <div>
      <db:refname>footnote</db:refname>
      <db:refpurpose/>
      <define name="local.footnote.attributes">
         <empty/>
      </define>
      <ctrl:exclude xmlns:ctrl="http://nwalsh.com/xmlns/schema-control/" from="db.footnote" exclude="db.footnote"/>
      <define name="footnote.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="footnote.attlist">
         <interleave>
            <optional>
               <ref name="footnote.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <optional>
               <attribute name="label"/>
            </optional>
            <ref name="local.footnote.attributes"/>
         </interleave>
      </define>
      <define name="db.footnote">
         <element name="footnote">
            <s:rule xmlns:s="http://www.ascc.net/xml/schematron" context="db:footnote">
               <s:assert test="not(.//db:footnote)">footnote must not occur in the descendants of footnote</s:assert>
            </s:rule>
            <ref name="footnote.attlist"/>
            <oneOrMore>
               <ref name="blocks"/>
            </oneOrMore>
         </element>
      </define>
   </div>
   <div>
      <db:refname>para</db:refname>
      <db:refpurpose/>
      <define name="local.para.attributes">
         <empty/>
      </define>
      <define name="para.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="para.attlist">
         <interleave>
            <optional>
               <ref name="para.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.para.attributes"/>
         </interleave>
      </define>
      <define name="para.info">
         <ref name="docbook.info.titleforbidden"/>
      </define>
   </div>
   <ctrl:exclude xmlns:ctrl="http://nwalsh.com/xmlns/schema-control/" from="admonition.blocks" exclude="admonition.blocks"/>
   <define name="admonition.contentmodel">
      <ref name="docbook.info.titleonly"/>
      <oneOrMore>
         <ref name="blocks"/>
      </oneOrMore>
   </define>
   <div>
      <db:refname>note</db:refname>
      <db:refpurpose/>
      <define name="local.note.attributes">
         <empty/>
      </define>
      <define name="note.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="note.attlist">
         <interleave>
            <optional>
               <ref name="note.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.note.attributes"/>
         </interleave>
      </define>
      <define name="db.note">
         <element name="note">
            <s:rule xmlns:s="http://www.ascc.net/xml/schematron" context="db:note">
               <s:assert test="not(.//db:note)">note must not occur in the descendants of note</s:assert>
            </s:rule>
            <ref name="note.attlist"/>
            <ref name="admonition.contentmodel"/>
         </element>
      </define>
   </div>
   <define name="spacing.attribute">
      <attribute name="spacing">
         <choice>
            <value>compact</value>
            <value>normal</value>
         </choice>
      </attribute>
   </define>
   <div>
      <db:refname>itemizedlist</db:refname>
      <db:refpurpose/>
      <define name="local.itemizedlist.attributes">
         <empty/>
      </define>
      <define name="itemizedlist.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="itemizedlist.attlist">
         <interleave>
            <optional>
               <ref name="itemizedlist.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <optional>
               <ref name="spacing.attribute"/>
            </optional>
            <optional>
               <attribute name="mark"/>
            </optional>
            <ref name="local.itemizedlist.attributes"/>
         </interleave>
      </define>
      <define name="itemizedlist.info">
         <ref name="docbook.info.titleonly"/>
      </define>
      <define name="db.itemizedlist">
         <element name="itemizedlist">
            <ref name="itemizedlist.attlist"/>
            <ref name="itemizedlist.info"/>
            <zeroOrMore>
               <ref name="blocks"/>
            </zeroOrMore>
            <oneOrMore>
               <ref name="db.listitem"/>
            </oneOrMore>
         </element>
      </define>
   </div>
   <div>
      <db:refname>orderedlist</db:refname>
      <db:refpurpose/>
      <define name="local.orderedlist.attributes">
         <empty/>
      </define>
      <define name="orderedlist.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="orderedlist.attlist">
         <interleave>
            <optional>
               <ref name="orderedlist.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <optional>
               <ref name="spacing.attribute"/>
            </optional>
            <optional>
               <ref name="continuation.attribute"/>
            </optional>
            <optional>
               <attribute name="inheritnum">
                  <choice>
                     <value>ignore</value>
                     <value>inherit</value>
                  </choice>
               </attribute>
            </optional>
            <optional>
               <attribute name="numeration"/>
            </optional>
            <ref name="local.orderedlist.attributes"/>
         </interleave>
      </define>
      <define name="orderedlist.info">
         <ref name="docbook.info.titleonly"/>
      </define>
      <define name="db.orderedlist">
         <element name="orderedlist">
            <ref name="orderedlist.attlist"/>
            <ref name="orderedlist.info"/>
            <zeroOrMore>
               <ref name="blocks"/>
            </zeroOrMore>
            <oneOrMore>
               <ref name="db.listitem"/>
            </oneOrMore>
         </element>
      </define>
   </div>
   <div>
      <db:refname>listitem</db:refname>
      <db:refpurpose/>
      <define name="local.listitem.attributes">
         <empty/>
      </define>
      <define name="listitem.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="listitem.attlist">
         <interleave>
            <optional>
               <ref name="listitem.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <optional>
               <attribute name="override"/>
            </optional>
            <ref name="local.listitem.attributes"/>
         </interleave>
      </define>
      <define name="db.listitem">
         <element name="listitem">
            <ref name="listitem.attlist"/>
            <oneOrMore>
               <ref name="blocks"/>
            </oneOrMore>
         </element>
      </define>
   </div>
   <div>
      <db:refname>simplelist</db:refname>
      <db:refpurpose/>
      <define name="local.simplelist.attributes">
         <empty/>
      </define>
      <define name="simplelist.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="simplelist.attlist">
         <interleave>
            <optional>
               <ref name="simplelist.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <optional>
               <attribute name="type">
                  <choice>
                     <value>horiz</value>
                     <value>vert</value>
                     <value>inline</value>
                  </choice>
               </attribute>
            </optional>
            <optional>
               <attribute name="columns">
                  <data type="integer"/>
               </attribute>
            </optional>
            <ref name="local.simplelist.attributes"/>
         </interleave>
      </define>
      <define name="db.simplelist">
         <element name="simplelist">
            <ref name="simplelist.attlist"/>
            <oneOrMore>
               <ref name="db.member"/>
            </oneOrMore>
         </element>
      </define>
   </div>
   <div>
      <db:refname>member</db:refname>
      <db:refpurpose/>
      <define name="local.member.attributes">
         <empty/>
      </define>
      <define name="member.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="member.attlist">
         <interleave>
            <optional>
               <ref name="member.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.member.attributes"/>
         </interleave>
      </define>
      <define name="db.member">
         <element name="member">
            <ref name="member.attlist"/>
            <zeroOrMore>
               <ref name="inlines"/>
            </zeroOrMore>
         </element>
      </define>
   </div>
   <div>
      <db:refname>variablelist</db:refname>
      <db:refpurpose/>
      <define name="local.variablelist.attributes">
         <empty/>
      </define>
      <define name="variablelist.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="variablelist.attlist">
         <interleave>
            <optional>
               <ref name="variablelist.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <optional>
               <attribute name="termlength"/>
            </optional>
            <ref name="local.variablelist.attributes"/>
         </interleave>
      </define>
      <define name="variablelist.info">
         <ref name="docbook.info.titleonly"/>
      </define>
      <define name="db.variablelist">
         <element name="variablelist">
            <ref name="variablelist.attlist"/>
            <ref name="variablelist.info"/>
            <zeroOrMore>
               <ref name="blocks"/>
            </zeroOrMore>
            <oneOrMore>
               <ref name="db.varlistentry"/>
            </oneOrMore>
         </element>
      </define>
   </div>
   <div>
      <db:refname>varlistentry</db:refname>
      <db:refpurpose/>
      <define name="local.varlistentry.attributes">
         <empty/>
      </define>
      <define name="varlistentry.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="varlistentry.attlist">
         <interleave>
            <optional>
               <ref name="varlistentry.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.varlistentry.attributes"/>
         </interleave>
      </define>
      <define name="db.varlistentry">
         <element name="varlistentry">
            <ref name="varlistentry.attlist"/>
            <oneOrMore>
               <ref name="db.term"/>
            </oneOrMore>
            <ref name="db.listitem"/>
         </element>
      </define>
   </div>
   <div>
      <db:refname>term</db:refname>
      <db:refpurpose/>
      <define name="local.term.attributes">
         <empty/>
      </define>
      <define name="term.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="term.attlist">
         <interleave>
            <optional>
               <ref name="term.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.term.attributes"/>
         </interleave>
      </define>
      <define name="db.term">
         <element name="term">
            <ref name="term.attlist"/>
            <zeroOrMore>
               <ref name="inlines"/>
            </zeroOrMore>
         </element>
      </define>
   </div>
   <define name="floatstyle.attribute">
      <attribute name="floatstyle"/>
   </define>
   <div>
      <db:refname>example</db:refname>
      <db:refpurpose/>
      <define name="local.example.attributes">
         <empty/>
      </define>
      <define name="example.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="example.attlist">
         <interleave>
            <optional>
               <ref name="example.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <optional>
               <attribute name="label"/>
            </optional>
            <optional>
               <ref name="floatstyle.attribute"/>
            </optional>
            <optional>
               <ref name="float.attribute"/>
            </optional>
            <optional>
               <attribute name="width"/>
            </optional>
            <ref name="local.example.attributes"/>
         </interleave>
      </define>
      <define name="example.info">
         <ref name="docbook.info.titleonlyreq"/>
      </define>
      <define name="db.example">
         <element name="example">
            <ref name="example.attlist"/>
            <ref name="example.info"/>
            <oneOrMore>
               <ref name="blocks"/>
            </oneOrMore>
         </element>
      </define>
   </div>
   <define name="verbatim.inlines">
      <choice>
         <ref name="inlines"/>
         <ref name="db.lineannotation"/>
      </choice>
   </define>
   <define name="verbatim.contentmodel">
      <ref name="docbook.info.titleforbidden"/>
      <choice>
         <ref name="db.textobject"/>
         <zeroOrMore>
            <ref name="verbatim.inlines"/>
         </zeroOrMore>
      </choice>
   </define>
   <div>
      <db:refname>programlisting</db:refname>
      <db:refpurpose/>
      <define name="local.programlisting.attributes">
         <empty/>
      </define>
      <define name="programlisting.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="programlisting.attlist">
         <interleave>
            <optional>
               <ref name="programlisting.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="verbatim.attributes"/>
            <optional>
               <attribute name="width"/>
            </optional>
            <ref name="local.programlisting.attributes"/>
         </interleave>
      </define>
      <define name="db.programlisting">
         <element name="programlisting">
            <ref name="programlisting.attlist"/>
            <ref name="verbatim.contentmodel"/>
         </element>
      </define>
   </div>
   <div>
      <db:refname>literallayout</db:refname>
      <db:refpurpose/>
      <define name="local.literallayout.attributes">
         <empty/>
      </define>
      <define name="literallayout.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="literallayout.attlist">
         <interleave>
            <optional>
               <ref name="literallayout.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="verbatim.attributes"/>
            <optional>
               <attribute name="class">
                  <choice>
                     <value>monospaced</value>
                     <value>normal</value>
                  </choice>
               </attribute>
            </optional>
            <ref name="local.literallayout.attributes"/>
         </interleave>
      </define>
      <define name="db.literallayout">
         <element name="literallayout">
            <ref name="literallayout.attlist"/>
            <ref name="verbatim.contentmodel"/>
         </element>
      </define>
   </div>
   <div>
      <db:refname>figure</db:refname>
      <db:refpurpose/>
      <define name="local.figure.attributes">
         <empty/>
      </define>
      <define name="figure.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="figure.attlist">
         <interleave>
            <optional>
               <ref name="figure.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <optional>
               <attribute name="label"/>
            </optional>
            <optional>
               <ref name="pgwide.attribute"/>
            </optional>
            <optional>
               <ref name="floatstyle.attribute"/>
            </optional>
            <optional>
               <ref name="float.attribute"/>
            </optional>
            <ref name="local.figure.attributes"/>
         </interleave>
      </define>
      <define name="figure.info">
         <ref name="docbook.info.titleonlyreq"/>
      </define>
      <define name="db.figure">
         <element name="figure">
            <ref name="figure.attlist"/>
            <ref name="figure.info"/>
            <oneOrMore>
               <ref name="blocks"/>
            </oneOrMore>
         </element>
      </define>
   </div>
   <define name="mediaobject.content">
      <choice>
         <ref name="db.videoobject"/>
         <ref name="db.audioobject"/>
         <ref name="db.imageobject"/>
         <ref name="db.textobject"/>
      </choice>
   </define>
   <div>
      <db:refname>mediaobject</db:refname>
      <db:refpurpose/>
      <define name="local.mediaobject.attributes">
         <empty/>
      </define>
      <define name="mediaobject.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="mediaobject.attlist">
         <interleave>
            <optional>
               <ref name="mediaobject.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.mediaobject.attributes"/>
         </interleave>
      </define>
      <define name="mediaobject.info">
         <ref name="docbook.info.titleforbidden"/>
      </define>
      <define name="db.mediaobject">
         <element name="mediaobject">
            <ref name="mediaobject.attlist"/>
            <ref name="mediaobject.info"/>
            <oneOrMore>
               <ref name="mediaobject.content"/>
            </oneOrMore>
         </element>
      </define>
   </div>
   <define name="inlinemediaobject.content">
      <choice>
         <ref name="db.videoobject"/>
         <ref name="db.audioobject"/>
         <ref name="db.imageobject"/>
         <ref name="db.textobject"/>
      </choice>
   </define>
   <div>
      <db:refname>inlinemediaobject</db:refname>
      <db:refpurpose/>
      <define name="local.inlinemediaobject.attributes">
         <empty/>
      </define>
      <define name="inlinemediaobject.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="inlinemediaobject.attlist">
         <interleave>
            <optional>
               <ref name="inlinemediaobject.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.inlinemediaobject.attributes"/>
         </interleave>
      </define>
      <define name="inlinemediaobject.info">
         <ref name="docbook.info.titleforbidden"/>
      </define>
      <define name="db.inlinemediaobject">
         <element name="inlinemediaobject">
            <ref name="inlinemediaobject.attlist"/>
            <ref name="inlinemediaobject.info"/>
            <oneOrMore>
               <ref name="inlinemediaobject.content"/>
            </oneOrMore>
         </element>
      </define>
   </div>
   <div>
      <db:refname>videoobject</db:refname>
      <db:refpurpose/>
      <define name="local.videoobject.attributes">
         <empty/>
      </define>
      <define name="videoobject.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="videoobject.attlist">
         <interleave>
            <optional>
               <ref name="videoobject.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.videoobject.attributes"/>
         </interleave>
      </define>
      <define name="videoobject.info">
         <ref name="docbook.info.titleforbidden"/>
      </define>
      <define name="db.videoobject">
         <element name="videoobject">
            <ref name="videoobject.attlist"/>
            <ref name="videoobject.info"/>
            <ref name="db.videodata"/>
         </element>
      </define>
   </div>
   <div>
      <db:refname>audioobject</db:refname>
      <db:refpurpose/>
      <define name="local.audioobject.attributes">
         <empty/>
      </define>
      <define name="audioobject.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="audioobject.attlist">
         <interleave>
            <optional>
               <ref name="audioobject.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.audioobject.attributes"/>
         </interleave>
      </define>
      <define name="audioobject.info">
         <ref name="docbook.info.titleforbidden"/>
      </define>
      <define name="db.audioobject">
         <element name="audioobject">
            <ref name="audioobject.attlist"/>
            <ref name="audioobject.info"/>
            <ref name="db.audiodata"/>
         </element>
      </define>
   </div>
   <define name="imageobject.content">
      <ref name="db.imagedata"/>
   </define>
   <div>
      <db:refname>imageobject</db:refname>
      <db:refpurpose/>
      <define name="local.imageobject.attributes">
         <empty/>
      </define>
      <define name="imageobject.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="imageobject.attlist">
         <interleave>
            <optional>
               <ref name="imageobject.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.imageobject.attributes"/>
         </interleave>
      </define>
      <define name="imageobject.info">
         <ref name="docbook.info.titleforbidden"/>
      </define>
      <define name="db.imageobject">
         <element name="imageobject">
            <ref name="imageobject.attlist"/>
            <ref name="imageobject.info"/>
            <ref name="imageobject.content"/>
         </element>
      </define>
   </div>
   <div>
      <db:refname>textobject</db:refname>
      <db:refpurpose/>
      <define name="local.textobject.attributes">
         <empty/>
      </define>
      <define name="textobject.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="textobject.attlist">
         <interleave>
            <optional>
               <ref name="textobject.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.textobject.attributes"/>
         </interleave>
      </define>
      <define name="textobject.info">
         <ref name="docbook.info.titleforbidden"/>
      </define>
      <define name="db.textobject">
         <element name="textobject">
            <ref name="textobject.attlist"/>
            <ref name="textobject.info"/>
            <choice>
               <ref name="db.phrase"/>
               <ref name="db.textdata"/>
               <oneOrMore>
                  <ref name="blocks"/>
               </oneOrMore>
            </choice>
         </element>
      </define>
   </div>
   <div>
      <db:refname>videodata</db:refname>
      <db:refpurpose/>
      <define name="local.videodata.attributes">
         <empty/>
      </define>
      <define name="videodata.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="videodata.attlist">
         <interleave>
            <optional>
               <ref name="videodata.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="data.common.attrib"/>
            <optional>
               <attribute name="align">
                  <choice>
                     <value>center</value>
                     <value>char</value>
                     <value>justify</value>
                     <value>left</value>
                     <value>right</value>
                  </choice>
               </attribute>
            </optional>
            <optional>
               <attribute name="valign">
                  <choice>
                     <value>bottom</value>
                     <value>middle</value>
                     <value>top</value>
                  </choice>
               </attribute>
            </optional>
            <optional>
               <attribute name="width"/>
            </optional>
            <optional>
               <attribute name="contentwidth"/>
            </optional>
            <optional>
               <attribute name="scalefit">
                  <choice>
                     <value>0</value>
                     <value>1</value>
                  </choice>
               </attribute>
            </optional>
            <optional>
               <attribute name="scale"/>
            </optional>
            <optional>
               <attribute name="depth"/>
            </optional>
            <optional>
               <attribute name="contentdepth"/>
            </optional>
            <ref name="local.videodata.attributes"/>
         </interleave>
      </define>
      <define name="videodata.info">
         <ref name="docbook.info.titleforbidden"/>
      </define>
      <define name="db.videodata">
         <element name="videodata">
            <ref name="videodata.attlist"/>
            <ref name="videodata.info"/>
         </element>
      </define>
   </div>
   <div>
      <db:refname>audiodata</db:refname>
      <db:refpurpose/>
      <define name="local.audiodata.attributes">
         <empty/>
      </define>
      <define name="audiodata.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="audiodata.attlist">
         <interleave>
            <optional>
               <ref name="audiodata.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="data.common.attrib"/>
            <ref name="local.audiodata.attributes"/>
         </interleave>
      </define>
      <define name="audiodata.info">
         <ref name="docbook.info.titleforbidden"/>
      </define>
      <define name="db.audiodata">
         <element name="audiodata">
            <ref name="audiodata.attlist"/>
            <ref name="audiodata.info"/>
         </element>
      </define>
   </div>
   <div>
      <db:refname>imagedata</db:refname>
      <db:refpurpose/>
      <define name="local.imagedata.attributes">
         <empty/>
      </define>
      <define name="imagedata.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="imagedata.attlist">
         <interleave>
            <optional>
               <ref name="imagedata.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="data.common.attrib"/>
            <optional>
               <attribute name="align">
                  <choice>
                     <value>center</value>
                     <value>char</value>
                     <value>justify</value>
                     <value>left</value>
                     <value>right</value>
                  </choice>
               </attribute>
            </optional>
            <optional>
               <attribute name="valign">
                  <choice>
                     <value>bottom</value>
                     <value>middle</value>
                     <value>top</value>
                  </choice>
               </attribute>
            </optional>
            <optional>
               <attribute name="width"/>
            </optional>
            <optional>
               <attribute name="contentwidth"/>
            </optional>
            <optional>
               <attribute name="scalefit">
                  <choice>
                     <value>0</value>
                     <value>1</value>
                  </choice>
               </attribute>
            </optional>
            <optional>
               <attribute name="scale"/>
            </optional>
            <optional>
               <attribute name="depth"/>
            </optional>
            <optional>
               <attribute name="contentdepth"/>
            </optional>
            <ref name="local.imagedata.attributes"/>
         </interleave>
      </define>
      <define name="imagedata.info">
         <ref name="docbook.info.titleforbidden"/>
      </define>
      <define name="db.imagedata">
         <element name="imagedata">
            <ref name="imagedata.attlist"/>
            <ref name="imagedata.info"/>
         </element>
      </define>
   </div>
   <div>
      <db:refname>textdata</db:refname>
      <db:refpurpose/>
      <define name="local.textdata.attributes">
         <empty/>
      </define>
      <define name="textdata.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="textdata.attlist">
         <interleave>
            <optional>
               <ref name="textdata.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="data.common.attrib"/>
            <optional>
               <attribute name="encoding"/>
            </optional>
            <ref name="local.textdata.attributes"/>
         </interleave>
      </define>
      <define name="textdata.info">
         <ref name="docbook.info.titleforbidden"/>
      </define>
      <define name="db.textdata">
         <element name="textdata">
            <ref name="textdata.attlist"/>
            <ref name="textdata.info"/>
         </element>
      </define>
   </div>
   <div>
      <db:refname>affiliation</db:refname>
      <db:refpurpose/>
      <define name="local.affiliation.attributes">
         <empty/>
      </define>
      <define name="affiliation.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="affiliation.attlist">
         <interleave>
            <optional>
               <ref name="affiliation.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.affiliation.attributes"/>
         </interleave>
      </define>
   </div>
   <div>
      <db:refname>jobtitle</db:refname>
      <db:refpurpose/>
      <define name="local.jobtitle.attributes">
         <empty/>
      </define>
      <define name="jobtitle.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="jobtitle.attlist">
         <interleave>
            <optional>
               <ref name="jobtitle.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.jobtitle.attributes"/>
         </interleave>
      </define>
      <define name="db.jobtitle">
         <element name="jobtitle">
            <ref name="jobtitle.attlist"/>
            <ref name="docbook.text"/>
         </element>
      </define>
   </div>
   <div>
      <db:refname>orgname</db:refname>
      <db:refpurpose/>
      <define name="local.orgname.attributes">
         <empty/>
      </define>
      <ctrl:other-attribute xmlns:ctrl="http://nwalsh.com/xmlns/schema-control/" name="orgname.class.attrib" enum-name="orgname.class-enum.attribute" other-name="orgname.class-other.attributes"/>
      <define name="orgname.class-enum.attribute">
         <optional>
            <attribute name="class">
               <choice>
                  <value>consortium</value>
                  <value>corporation</value>
                  <value>informal</value>
                  <value>nonprofit</value>
               </choice>
            </attribute>
         </optional>
      </define>
      <define name="orgname.class-other.attributes">
         <optional>
            <attribute name="class">
               <value>other</value>
            </attribute>
         </optional>
         <attribute name="otherclass"/>
      </define>
      <define name="orgname.class.attrib">
         <choice>
            <ref name="orgname.class-enum.attribute"/>
            <ref name="orgname.class-other.attributes"/>
         </choice>
      </define>
      <define name="orgname.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="orgname.attlist">
         <interleave>
            <optional>
               <ref name="orgname.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="orgname.class.attrib"/>
            <ref name="local.orgname.attributes"/>
         </interleave>
      </define>
      <define name="db.orgname">
         <element name="orgname">
            <ref name="orgname.attlist"/>
            <ref name="docbook.text"/>
         </element>
      </define>
   </div>
   <div>
      <db:refname>personname</db:refname>
      <db:refpurpose/>
      <define name="local.personname.attributes">
         <empty/>
      </define>
      <define name="personname.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="personname.attlist">
         <interleave>
            <optional>
               <ref name="personname.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.personname.attributes"/>
         </interleave>
      </define>
      <define name="db.personname">
         <element name="personname">
            <ref name="personname.attlist"/>
            <choice>
               <ref name="docbook.text"/>
               <oneOrMore>
                  <choice>
                     <ref name="db.honorific"/>
                     <ref name="db.firstname"/>
                     <ref name="db.surname"/>
                     <ref name="db.lineage"/>
                     <ref name="db.othername"/>
                  </choice>
               </oneOrMore>
            </choice>
         </element>
      </define>
   </div>
   <div>
      <db:refname>author</db:refname>
      <db:refpurpose/>
      <define name="local.author.attributes">
         <empty/>
      </define>
      <define name="author.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="author.attlist">
         <interleave>
            <optional>
               <ref name="author.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.author.attributes"/>
         </interleave>
      </define>
      <define name="db.author">
         <element name="author">
            <ref name="author.attlist"/>
            <ref name="credit.contentmodel"/>
         </element>
      </define>
   </div>
   <div>
      <db:refname>authorgroup</db:refname>
      <db:refpurpose/>
      <define name="local.authorgroup.attributes">
         <empty/>
      </define>
      <define name="authorgroup.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="authorgroup.attlist">
         <interleave>
            <optional>
               <ref name="authorgroup.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.authorgroup.attributes"/>
         </interleave>
      </define>
      <define name="db.authorgroup">
         <element name="authorgroup">
            <ref name="authorgroup.attlist"/>
            <oneOrMore>
               <choice>
                  <ref name="db.author"/>
                  <ref name="db.editor"/>
                  <ref name="db.othercredit"/>
               </choice>
            </oneOrMore>
         </element>
      </define>
   </div>
   <div>
      <db:refname>authorinitials</db:refname>
      <db:refpurpose/>
      <define name="local.authorinitials.attributes">
         <empty/>
      </define>
      <define name="authorinitials.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="authorinitials.attlist">
         <interleave>
            <optional>
               <ref name="authorinitials.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.authorinitials.attributes"/>
         </interleave>
      </define>
      <define name="db.authorinitials">
         <element name="authorinitials">
            <ref name="authorinitials.attlist"/>
            <ref name="docbook.text"/>
         </element>
      </define>
   </div>
   <div>
      <db:refname>copyright</db:refname>
      <db:refpurpose/>
      <define name="local.copyright.attributes">
         <empty/>
      </define>
      <define name="copyright.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="copyright.attlist">
         <interleave>
            <optional>
               <ref name="copyright.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.copyright.attributes"/>
         </interleave>
      </define>
      <define name="db.copyright">
         <element name="copyright">
            <ref name="copyright.attlist"/>
            <oneOrMore>
               <ref name="db.year"/>
            </oneOrMore>
            <zeroOrMore>
               <ref name="db.holder"/>
            </zeroOrMore>
         </element>
      </define>
   </div>
   <div>
      <db:refname>year</db:refname>
      <db:refpurpose/>
      <define name="local.year.attributes">
         <empty/>
      </define>
      <define name="year.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="year.attlist">
         <interleave>
            <optional>
               <ref name="year.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.year.attributes"/>
         </interleave>
      </define>
      <define name="db.year">
         <element name="year">
            <ref name="year.attlist"/>
            <ref name="docbook.text"/>
         </element>
      </define>
   </div>
   <div>
      <db:refname>holder</db:refname>
      <db:refpurpose/>
      <define name="local.holder.attributes">
         <empty/>
      </define>
      <define name="holder.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="holder.attlist">
         <interleave>
            <optional>
               <ref name="holder.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.holder.attributes"/>
         </interleave>
      </define>
      <define name="db.holder">
         <element name="holder">
            <ref name="holder.attlist"/>
            <ref name="docbook.text"/>
         </element>
      </define>
   </div>
   <div>
      <db:refname>date</db:refname>
      <db:refpurpose/>
      <define name="local.date.attributes">
         <empty/>
      </define>
      <define name="date.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="date.attlist">
         <interleave>
            <optional>
               <ref name="date.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.date.attributes"/>
         </interleave>
      </define>
      <define name="db.date">
         <element name="date">
            <ref name="date.attlist"/>
            <ref name="docbook.text"/>
         </element>
      </define>
   </div>
   <div>
      <db:refname>edition</db:refname>
      <db:refpurpose/>
      <define name="local.edition.attributes">
         <empty/>
      </define>
      <define name="edition.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="edition.attlist">
         <interleave>
            <optional>
               <ref name="edition.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.edition.attributes"/>
         </interleave>
      </define>
      <define name="db.edition">
         <element name="edition">
            <ref name="edition.attlist"/>
            <ref name="docbook.text"/>
         </element>
      </define>
   </div>
   <div>
      <db:refname>editor</db:refname>
      <db:refpurpose/>
      <define name="local.editor.attributes">
         <empty/>
      </define>
      <define name="editor.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="editor.attlist">
         <interleave>
            <optional>
               <ref name="editor.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.editor.attributes"/>
         </interleave>
      </define>
      <define name="db.editor">
         <element name="editor">
            <ref name="editor.attlist"/>
            <ref name="credit.contentmodel"/>
         </element>
      </define>
   </div>
   <div>
      <db:refname>bibliorelation</db:refname>
      <db:refpurpose/>
      <define name="local.bibliorelation.attributes">
         <empty/>
      </define>
      <ctrl:other-attribute xmlns:ctrl="http://nwalsh.com/xmlns/schema-control/" name="bibliorelation.type.attrib" enum-name="bibliorelation.type-enum.attribute" other-name="bibliorelation.type-other.attributes"/>
      <define name="bibliorelation.type-enum.attribute">
         <optional>
            <attribute name="type">
               <choice>
                  <value>hasformat</value>
                  <value>haspart</value>
                  <value>hasversion</value>
                  <value>isformatof</value>
                  <value>ispartof</value>
                  <value>isreferencedby</value>
                  <value>isreplacedby</value>
                  <value>isrequiredby</value>
                  <value>isversionof</value>
                  <value>othertype</value>
                  <value>references</value>
                  <value>replaces</value>
                  <value>requires</value>
               </choice>
            </attribute>
         </optional>
      </define>
      <define name="bibliorelation.type-other.attributes">
         <optional>
            <attribute name="type">
               <value>othertype</value>
            </attribute>
         </optional>
         <attribute name="othertype">
            <data type="NMTOKEN"/>
         </attribute>
      </define>
      <define name="bibliorelation.type.attrib">
         <choice>
            <ref name="bibliorelation.type-enum.attribute"/>
            <ref name="bibliorelation.type-other.attributes"/>
         </choice>
      </define>
      <define name="bibliorelation.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="bibliorelation.attlist">
         <interleave>
            <optional>
               <ref name="bibliorelation.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="biblio.class.attrib"/>
            <ref name="bibliorelation.type.attrib"/>
            <ref name="local.bibliorelation.attributes"/>
         </interleave>
      </define>
      <define name="db.bibliorelation">
         <element name="bibliorelation">
            <ref name="bibliorelation.attlist"/>
            <ref name="docbook.text"/>
         </element>
      </define>
   </div>
   <div>
      <db:refname>legalnotice</db:refname>
      <db:refpurpose/>
      <define name="local.legalnotice.attributes">
         <empty/>
      </define>
      <define name="legalnotice.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="legalnotice.attlist">
         <interleave>
            <optional>
               <ref name="legalnotice.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.legalnotice.attributes"/>
         </interleave>
      </define>
      <define name="legalnotice.info">
         <ref name="docbook.info.titleonly"/>
      </define>
      <define name="db.legalnotice">
         <element name="legalnotice">
            <ref name="legalnotice.attlist"/>
            <ref name="legalnotice.info"/>
            <oneOrMore>
               <ref name="blocks"/>
            </oneOrMore>
         </element>
      </define>
   </div>
   <div>
      <db:refname>othercredit</db:refname>
      <db:refpurpose/>
      <define name="local.othercredit.attributes">
         <empty/>
      </define>
      <define name="othercredit.class.attribute">
         <optional>
            <attribute name="class">
               <choice>
                  <value>copyeditor</value>
                  <value>graphicdesigner</value>
                  <value>other</value>
                  <value>productioneditor</value>
                  <value>technicaleditor</value>
                  <value>translator</value>
               </choice>
            </attribute>
         </optional>
      </define>
      <define name="othercredit.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="othercredit.attlist">
         <interleave>
            <optional>
               <ref name="othercredit.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="othercredit.class.attribute"/>
            <ref name="local.othercredit.attributes"/>
         </interleave>
      </define>
      <define name="db.othercredit">
         <element name="othercredit">
            <ref name="othercredit.attlist"/>
            <ref name="credit.contentmodel"/>
         </element>
      </define>
   </div>
   <div>
      <db:refname>honorific</db:refname>
      <db:refpurpose/>
      <define name="local.honorific.attributes">
         <empty/>
      </define>
      <define name="honorific.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="honorific.attlist">
         <interleave>
            <optional>
               <ref name="honorific.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.honorific.attributes"/>
         </interleave>
      </define>
      <define name="db.honorific">
         <element name="honorific">
            <ref name="honorific.attlist"/>
            <ref name="docbook.text"/>
         </element>
      </define>
   </div>
   <div>
      <db:refname>firstname</db:refname>
      <db:refpurpose/>
      <define name="local.firstname.attributes">
         <empty/>
      </define>
      <define name="firstname.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="firstname.attlist">
         <interleave>
            <optional>
               <ref name="firstname.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.firstname.attributes"/>
         </interleave>
      </define>
      <define name="db.firstname">
         <element name="firstname">
            <ref name="firstname.attlist"/>
            <ref name="docbook.text"/>
         </element>
      </define>
   </div>
   <div>
      <db:refname>surname</db:refname>
      <db:refpurpose/>
      <define name="local.surname.attributes">
         <empty/>
      </define>
      <define name="surname.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="surname.attlist">
         <interleave>
            <optional>
               <ref name="surname.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.surname.attributes"/>
         </interleave>
      </define>
      <define name="db.surname">
         <element name="surname">
            <ref name="surname.attlist"/>
            <ref name="docbook.text"/>
         </element>
      </define>
   </div>
   <div>
      <db:refname>lineage</db:refname>
      <db:refpurpose/>
      <define name="local.lineage.attributes">
         <empty/>
      </define>
      <define name="lineage.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="lineage.attlist">
         <interleave>
            <optional>
               <ref name="lineage.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.lineage.attributes"/>
         </interleave>
      </define>
      <define name="db.lineage">
         <element name="lineage">
            <ref name="lineage.attlist"/>
            <ref name="docbook.text"/>
         </element>
      </define>
   </div>
   <div>
      <db:refname>othername</db:refname>
      <db:refpurpose/>
      <define name="local.othername.attributes">
         <empty/>
      </define>
      <define name="othername.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="othername.attlist">
         <interleave>
            <optional>
               <ref name="othername.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.othername.attributes"/>
         </interleave>
      </define>
      <define name="db.othername">
         <element name="othername">
            <ref name="othername.attlist"/>
            <ref name="docbook.text"/>
         </element>
      </define>
   </div>
   <div>
      <db:refname>pubdate</db:refname>
      <db:refpurpose/>
      <define name="local.pubdate.attributes">
         <empty/>
      </define>
      <define name="pubdate.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="pubdate.attlist">
         <interleave>
            <optional>
               <ref name="pubdate.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.pubdate.attributes"/>
         </interleave>
      </define>
      <define name="db.pubdate">
         <element name="pubdate">
            <ref name="pubdate.attlist"/>
            <ref name="docbook.text"/>
         </element>
      </define>
   </div>
   <div>
      <db:refname>publishername</db:refname>
      <db:refpurpose/>
      <define name="local.publishername.attributes">
         <empty/>
      </define>
      <define name="publishername.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="publishername.attlist">
         <interleave>
            <optional>
               <ref name="publishername.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.publishername.attributes"/>
         </interleave>
      </define>
      <define name="db.publishername">
         <element name="publishername">
            <ref name="publishername.attlist"/>
            <ref name="docbook.text"/>
         </element>
      </define>
   </div>
   <div>
      <db:refname>releaseinfo</db:refname>
      <db:refpurpose/>
      <define name="local.releaseinfo.attributes">
         <empty/>
      </define>
      <define name="releaseinfo.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="releaseinfo.attlist">
         <interleave>
            <optional>
               <ref name="releaseinfo.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.releaseinfo.attributes"/>
         </interleave>
      </define>
      <define name="db.releaseinfo">
         <element name="releaseinfo">
            <ref name="releaseinfo.attlist"/>
            <ref name="docbook.text"/>
         </element>
      </define>
   </div>
   <div>
      <db:refname>revhistory</db:refname>
      <db:refpurpose/>
      <define name="local.revhistory.attributes">
         <empty/>
      </define>
      <define name="revhistory.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="revhistory.attlist">
         <interleave>
            <optional>
               <ref name="revhistory.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.revhistory.attributes"/>
         </interleave>
      </define>
      <define name="revhistory.info">
         <ref name="docbook.info.titleonly"/>
      </define>
      <define name="db.revhistory">
         <element name="revhistory">
            <ref name="revhistory.attlist"/>
            <ref name="revhistory.info"/>
            <oneOrMore>
               <ref name="db.revision"/>
            </oneOrMore>
         </element>
      </define>
   </div>
   <div>
      <db:refname>revision</db:refname>
      <db:refpurpose/>
      <define name="local.revision.attributes">
         <empty/>
      </define>
      <define name="revision.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="revision.attlist">
         <interleave>
            <optional>
               <ref name="revision.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.revision.attributes"/>
         </interleave>
      </define>
      <define name="db.revision">
         <element name="revision">
            <ref name="revision.attlist"/>
            <ref name="db.revnumber"/>
            <ref name="db.date"/>
            <zeroOrMore>
               <choice>
                  <ref name="db.authorinitials"/>
                  <ref name="db.author"/>
               </choice>
            </zeroOrMore>
            <optional>
               <choice>
                  <ref name="db.revremark"/>
                  <ref name="db.revdescription"/>
               </choice>
            </optional>
         </element>
      </define>
   </div>
   <div>
      <db:refname>revnumber</db:refname>
      <db:refpurpose/>
      <define name="local.revnumber.attributes">
         <empty/>
      </define>
      <define name="revnumber.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="revnumber.attlist">
         <interleave>
            <optional>
               <ref name="revnumber.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.revnumber.attributes"/>
         </interleave>
      </define>
      <define name="db.revnumber">
         <element name="revnumber">
            <ref name="revnumber.attlist"/>
            <ref name="docbook.text"/>
         </element>
      </define>
   </div>
   <div>
      <db:refname>revremark</db:refname>
      <db:refpurpose/>
      <define name="local.revremark.attributes">
         <empty/>
      </define>
      <define name="revremark.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="revremark.attlist">
         <interleave>
            <optional>
               <ref name="revremark.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.revremark.attributes"/>
         </interleave>
      </define>
      <define name="db.revremark">
         <element name="revremark">
            <ref name="revremark.attlist"/>
            <ref name="docbook.text"/>
         </element>
      </define>
   </div>
   <div>
      <db:refname>revdescription</db:refname>
      <db:refpurpose/>
      <define name="local.revdescription.attributes">
         <empty/>
      </define>
      <define name="revdescription.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="revdescription.attlist">
         <interleave>
            <optional>
               <ref name="revdescription.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.revdescription.attributes"/>
         </interleave>
      </define>
      <define name="db.revdescription">
         <element name="revdescription">
            <ref name="revdescription.attlist"/>
            <zeroOrMore>
               <ref name="blocks"/>
            </zeroOrMore>
         </element>
      </define>
   </div>
   <div>
      <db:refname>volumenum</db:refname>
      <db:refpurpose/>
      <define name="local.volumenum.attributes">
         <empty/>
      </define>
      <define name="volumenum.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="volumenum.attlist">
         <interleave>
            <optional>
               <ref name="volumenum.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.volumenum.attributes"/>
         </interleave>
      </define>
      <define name="db.volumenum">
         <element name="volumenum">
            <ref name="volumenum.attlist"/>
            <ref name="docbook.text"/>
         </element>
      </define>
   </div>
   <div>
      <db:refname>issuenum</db:refname>
      <db:refpurpose/>
      <define name="local.issuenum.attributes">
         <empty/>
      </define>
      <define name="issuenum.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="issuenum.attlist">
         <interleave>
            <optional>
               <ref name="issuenum.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.issuenum.attributes"/>
         </interleave>
      </define>
      <define name="db.issuenum">
         <element name="issuenum">
            <ref name="issuenum.attlist"/>
            <ref name="docbook.text"/>
         </element>
      </define>
   </div>
   <div>
      <db:refname>command</db:refname>
      <db:refpurpose/>
      <define name="local.command.attributes">
         <empty/>
      </define>
      <define name="command.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="command.attlist">
         <interleave>
            <optional>
               <ref name="command.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.command.attributes"/>
         </interleave>
      </define>
      <define name="db.command">
         <element name="command">
            <ref name="command.attlist"/>
            <zeroOrMore>
               <ref name="inlines"/>
            </zeroOrMore>
         </element>
      </define>
   </div>
   <define name="computeroutput.inlines">
      <ref name="inlines"/>
   </define>
   <div>
      <db:refname>computeroutput</db:refname>
      <db:refpurpose/>
      <define name="local.computeroutput.attributes">
         <empty/>
      </define>
      <define name="computeroutput.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="computeroutput.attlist">
         <interleave>
            <optional>
               <ref name="computeroutput.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.computeroutput.attributes"/>
         </interleave>
      </define>
      <define name="db.computeroutput">
         <element name="computeroutput">
            <ref name="computeroutput.attlist"/>
            <zeroOrMore>
               <ref name="computeroutput.inlines"/>
            </zeroOrMore>
         </element>
      </define>
   </div>
   <div>
      <db:refname>email</db:refname>
      <db:refpurpose/>
      <define name="local.email.attributes">
         <empty/>
      </define>
      <define name="email.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="email.attlist">
         <interleave>
            <optional>
               <ref name="email.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.email.attributes"/>
         </interleave>
      </define>
      <define name="db.email">
         <element name="email">
            <ref name="email.attlist"/>
            <ref name="docbook.text"/>
         </element>
      </define>
   </div>
   <div>
      <db:refname>filename</db:refname>
      <db:refpurpose/>
      <define name="local.filename.attributes">
         <empty/>
      </define>
      <define name="filename.path.attribute">
         <attribute name="path"/>
      </define>
      <define name="filename.class.attribute">
         <attribute name="class">
            <choice>
               <value>devicefile</value>
               <value>directory</value>
               <value>extension</value>
               <value>headerfile</value>
               <value>libraryfile</value>
               <value>partition</value>
               <value>symlink</value>
            </choice>
         </attribute>
      </define>
      <define name="filename.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="filename.attlist">
         <interleave>
            <optional>
               <ref name="filename.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <optional>
               <ref name="filename.path.attribute"/>
            </optional>
            <optional>
               <ref name="filename.class.attribute"/>
            </optional>
            <ref name="local.filename.attributes"/>
         </interleave>
      </define>
      <define name="db.filename">
         <element name="filename">
            <ref name="filename.attlist"/>
            <ref name="docbook.text"/>
         </element>
      </define>
   </div>
   <div>
      <db:refname>lineannotation</db:refname>
      <db:refpurpose/>
      <define name="local.lineannotation.attributes">
         <empty/>
      </define>
      <define name="lineannotation.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="lineannotation.attlist">
         <interleave>
            <optional>
               <ref name="lineannotation.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.lineannotation.attributes"/>
         </interleave>
      </define>
      <define name="db.lineannotation">
         <element name="lineannotation">
            <ref name="lineannotation.attlist"/>
            <zeroOrMore>
               <ref name="inlines"/>
            </zeroOrMore>
         </element>
      </define>
   </div>
   <div>
      <db:refname>literal</db:refname>
      <db:refpurpose/>
      <define name="local.literal.attributes">
         <empty/>
      </define>
      <define name="literal.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="literal.attlist">
         <interleave>
            <optional>
               <ref name="literal.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.literal.attributes"/>
         </interleave>
      </define>
      <define name="db.literal">
         <element name="literal">
            <ref name="literal.attlist"/>
            <zeroOrMore>
               <ref name="inlines"/>
            </zeroOrMore>
         </element>
      </define>
   </div>
   <div>
      <db:refname>option</db:refname>
      <db:refpurpose/>
      <define name="local.option.attributes">
         <empty/>
      </define>
      <define name="option.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="option.attlist">
         <interleave>
            <optional>
               <ref name="option.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.option.attributes"/>
         </interleave>
      </define>
      <define name="db.option">
         <element name="option">
            <ref name="option.attlist"/>
            <ref name="docbook.text"/>
         </element>
      </define>
   </div>
   <define name="replaceable.inlines">
      <ref name="docbook.text"/>
   </define>
   <div>
      <db:refname>replaceable</db:refname>
      <db:refpurpose/>
      <define name="local.replaceable.attributes">
         <empty/>
      </define>
      <define name="replaceable.class.attribute">
         <attribute name="class">
            <choice>
               <value>command</value>
               <value>function</value>
               <value>option</value>
               <value>parameter</value>
            </choice>
         </attribute>
      </define>
      <define name="replaceable.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="replaceable.attlist">
         <interleave>
            <optional>
               <ref name="replaceable.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <optional>
               <ref name="replaceable.class.attribute"/>
            </optional>
            <ref name="local.replaceable.attributes"/>
         </interleave>
      </define>
      <define name="db.replaceable">
         <element name="replaceable">
            <ref name="replaceable.attlist"/>
            <zeroOrMore>
               <ref name="replaceable.inlines"/>
            </zeroOrMore>
         </element>
      </define>
   </div>
   <div>
      <db:refname>tag</db:refname>
      <db:refpurpose/>
      <define name="local.tag.attributes">
         <empty/>
      </define>
      <define name="tag.class.attribute">
         <optional>
            <attribute name="class">
               <choice>
                  <value>attribute</value>
                  <value>attvalue</value>
                  <value>element</value>
                  <value>emptytag</value>
                  <value>endtag</value>
                  <value>genentity</value>
                  <value>numcharref</value>
                  <value>paramentity</value>
                  <value>pi</value>
                  <value>sgmlcomment</value>
                  <value>starttag</value>
                  <value>xmlpi</value>
               </choice>
            </attribute>
         </optional>
      </define>
      <define name="tag.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="tag.attlist">
         <interleave>
            <optional>
               <ref name="tag.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="tag.class.attribute"/>
            <ref name="local.tag.attributes"/>
         </interleave>
      </define>
      <define name="db.tag">
         <element name="tag">
            <ref name="tag.attlist"/>
            <ref name="docbook.text"/>
         </element>
      </define>
   </div>
   <define name="systemitem.inlines">
      <ref name="docbook.text"/>
   </define>
   <div>
      <db:refname>systemitem</db:refname>
      <db:refpurpose/>
      <define name="local.systemitem.attributes">
         <empty/>
      </define>
      <define name="systemitem.class.attribute">
         <attribute name="class">
            <choice>
               <value>daemon</value>
               <value>domainname</value>
               <value>etheraddress</value>
               <value>event</value>
               <value>eventhandler</value>
               <value>filesystem</value>
               <value>fqdomainname</value>
               <value>groupname</value>
               <value>ipaddress</value>
               <value>library</value>
               <value>macro</value>
               <value>netmask</value>
               <value>newsgroup</value>
               <value>osname</value>
               <value>process</value>
               <value>resource</value>
               <value>server</value>
               <value>service</value>
               <value>systemname</value>
               <value>username</value>
            </choice>
         </attribute>
      </define>
      <define name="systemitem.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="systemitem.attlist">
         <interleave>
            <optional>
               <ref name="systemitem.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <optional>
               <ref name="systemitem.class.attribute"/>
            </optional>
            <ref name="local.systemitem.attributes"/>
         </interleave>
      </define>
      <define name="db.systemitem">
         <element name="systemitem">
            <ref name="systemitem.attlist"/>
            <zeroOrMore>
               <ref name="systemitem.inlines"/>
            </zeroOrMore>
         </element>
      </define>
   </div>
   <define name="userinput.inlines">
      <ref name="inlines"/>
   </define>
   <div>
      <db:refname>userinput</db:refname>
      <db:refpurpose/>
      <define name="local.userinput.attributes">
         <empty/>
      </define>
      <define name="userinput.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="userinput.attlist">
         <interleave>
            <optional>
               <ref name="userinput.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.userinput.attributes"/>
         </interleave>
      </define>
      <define name="db.userinput">
         <element name="userinput">
            <ref name="userinput.attlist"/>
            <zeroOrMore>
               <ref name="userinput.inlines"/>
            </zeroOrMore>
         </element>
      </define>
   </div>
   <div>
      <db:refname>abbrev</db:refname>
      <db:refpurpose/>
      <define name="local.abbrev.attributes">
         <empty/>
      </define>
      <define name="abbrev.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="abbrev.attlist">
         <interleave>
            <optional>
               <ref name="abbrev.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.abbrev.attributes"/>
         </interleave>
      </define>
   </div>
   <div>
      <db:refname>acronym</db:refname>
      <db:refpurpose/>
      <define name="local.acronym.attributes">
         <empty/>
      </define>
      <define name="acronym.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="acronym.attlist">
         <interleave>
            <optional>
               <ref name="acronym.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.acronym.attributes"/>
         </interleave>
      </define>
   </div>
   <div>
      <db:refname>citetitle</db:refname>
      <db:refpurpose/>
      <define name="local.citetitle.attributes">
         <empty/>
      </define>
      <define name="citetitle.pubwork.attribute">
         <attribute name="pubwork">
            <choice>
               <value>article</value>
               <value>bbs</value>
               <value>book</value>
               <value>cdrom</value>
               <value>chapter</value>
               <value>dvd</value>
               <value>emailmessage</value>
               <value>gopher</value>
               <value>journal</value>
               <value>manuscript</value>
               <value>newsposting</value>
               <value>part</value>
               <value>refentry</value>
               <value>section</value>
               <value>series</value>
               <value>set</value>
               <value>webpage</value>
               <value>wiki</value>
            </choice>
         </attribute>
      </define>
      <define name="citetitle.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="citetitle.attlist">
         <interleave>
            <optional>
               <ref name="citetitle.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <optional>
               <ref name="citetitle.pubwork.attribute"/>
            </optional>
            <ref name="local.citetitle.attributes"/>
         </interleave>
      </define>
      <define name="db.citetitle">
         <element name="citetitle">
            <ref name="citetitle.attlist"/>
            <zeroOrMore>
               <ref name="inlines"/>
            </zeroOrMore>
         </element>
      </define>
   </div>
   <div>
      <db:refname>emphasis</db:refname>
      <db:refpurpose/>
      <define name="local.emphasis.attributes">
         <empty/>
      </define>
      <define name="emphasis.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="emphasis.attlist">
         <interleave>
            <optional>
               <ref name="emphasis.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.emphasis.attributes"/>
         </interleave>
      </define>
      <define name="db.emphasis">
         <element name="emphasis">
            <ref name="emphasis.attlist"/>
            <zeroOrMore>
               <ref name="inlines"/>
            </zeroOrMore>
         </element>
      </define>
   </div>
   <div>
      <db:refname>phrase</db:refname>
      <db:refpurpose/>
      <define name="local.phrase.attributes">
         <empty/>
      </define>
      <define name="phrase.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="phrase.attlist">
         <interleave>
            <optional>
               <ref name="phrase.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.phrase.attributes"/>
         </interleave>
      </define>
      <define name="db.phrase">
         <element name="phrase">
            <ref name="phrase.attlist"/>
            <zeroOrMore>
               <ref name="inlines"/>
            </zeroOrMore>
         </element>
      </define>
   </div>
   <div>
      <db:refname>quote</db:refname>
      <db:refpurpose/>
      <define name="local.quote.attributes">
         <empty/>
      </define>
      <define name="quote.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="quote.attlist">
         <interleave>
            <optional>
               <ref name="quote.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.quote.attributes"/>
         </interleave>
      </define>
      <define name="db.quote">
         <element name="quote">
            <ref name="quote.attlist"/>
            <zeroOrMore>
               <ref name="inlines"/>
            </zeroOrMore>
         </element>
      </define>
   </div>
   <div>
      <db:refname>trademark</db:refname>
      <db:refpurpose/>
      <define name="local.trademark.attributes">
         <empty/>
      </define>
      <define name="trademark.class.attribute">
         <attribute name="class">
            <choice>
               <value>copyright</value>
               <value>registered</value>
               <value>service</value>
               <value>trade</value>
            </choice>
         </attribute>
      </define>
      <define name="trademark.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="trademark.attlist">
         <interleave>
            <optional>
               <ref name="trademark.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <optional>
               <ref name="trademark.class.attribute"/>
            </optional>
            <ref name="local.trademark.attributes"/>
         </interleave>
      </define>
      <define name="db.trademark">
         <element name="trademark">
            <ref name="trademark.attlist"/>
            <ref name="docbook.text"/>
         </element>
      </define>
   </div>
   <div>
      <db:refname>footnoteref</db:refname>
      <db:refpurpose/>
      <define name="local.footnoteref.attributes">
         <empty/>
      </define>
      <define name="footnoteref.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="footnoteref.attlist">
         <interleave>
            <optional>
               <ref name="footnoteref.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="linkend.attribute"/>
            <optional>
               <attribute name="label"/>
            </optional>
            <ref name="local.footnoteref.attributes"/>
         </interleave>
      </define>
      <define name="db.footnoteref">
         <element name="footnoteref">
            <s:rule xmlns:s="http://www.ascc.net/xml/schematron" context="db:footnoteref">
               <s:assert test="local-name(//*[@id=current()/@linkend]) = 'footnote' and namespace-uri(//*[@id=current()/@linkend]) = 'http://docbook.org/docbook-ng'">@linkend on footnoteref must point to a footnote.</s:assert>
            </s:rule>
            <ref name="footnoteref.attlist"/>
            <empty/>
         </element>
      </define>
   </div>
   <div>
      <db:refname>xref</db:refname>
      <db:refpurpose/>
      <define name="local.xref.attributes">
         <empty/>
      </define>
      <define name="xref.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="xref.attlist">
         <interleave>
            <optional>
               <ref name="xref.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes.req"/>
            <optional>
               <attribute name="xrefstyle"/>
            </optional>
            <optional>
               <attribute name="endterm">
                  <data type="IDREF"/>
               </attribute>
            </optional>
            <ref name="local.xref.attributes"/>
         </interleave>
      </define>
      <define name="db.xref">
         <element name="xref">
            <ref name="xref.attlist"/>
            <empty/>
         </element>
      </define>
   </div>
   <define name="common.attributes">
      <optional>
         <ref name="id.attribute"/>
      </optional>
      <optional>
         <ref name="xml.lang.attribute"/>
      </optional>
      <optional>
         <ref name="xml.base.attribute"/>
      </optional>
      <optional>
         <ref name="revisionflag.attribute"/>
      </optional>
      <optional>
         <ref name="version.attribute"/>
      </optional>
   </define>
   <define name="common.attributes.idreq">
      <ref name="id.attribute"/>
      <optional>
         <ref name="xml.lang.attribute"/>
      </optional>
      <optional>
         <ref name="xml.base.attribute"/>
      </optional>
      <optional>
         <ref name="revisionflag.attribute"/>
      </optional>
      <optional>
         <ref name="version.attribute"/>
      </optional>
   </define>
   <define name="info.elements">
      <choice>
         <choice>
            <ref name="db.abstract"/>
            <ref name="db.author"/>
            <ref name="db.authorgroup"/>
            <ref name="db.copyright"/>
            <ref name="db.date"/>
            <ref name="db.edition"/>
            <ref name="db.editor"/>
            <ref name="db.issuenum"/>
            <ref name="db.keywordset"/>
            <ref name="db.legalnotice"/>
            <ref name="db.othercredit"/>
            <ref name="db.pubdate"/>
            <ref name="db.publishername"/>
            <ref name="db.releaseinfo"/>
            <ref name="db.revhistory"/>
            <ref name="db.subjectset"/>
            <ref name="db.volumenum"/>
         </choice>
         <choice>
            <ref name="db.bibliomisc"/>
            <ref name="db.bibliomset"/>
            <ref name="db.bibliorelation"/>
            <ref name="db.biblioset"/>
         </choice>
      </choice>
   </define>
   <define name="bibliographic.elements">
      <choice>
         <ref name="info.elements"/>
         <ref name="db.abbrev"/>
         <ref name="db.affiliation"/>
         <ref name="db.citetitle"/>
         <ref name="db.orgname"/>
         <ref name="db.personblurb"/>
         <ref name="db.personname"/>
         <ref name="db.subtitle"/>
         <ref name="db.title"/>
         <ref name="db.titleabbrev"/>
      </choice>
   </define>
   <define name="list.blocks">
      <choice>
         <choice>
            <ref name="db.itemizedlist"/>
            <ref name="db.orderedlist"/>
            <ref name="db.variablelist"/>
         </choice>
         <ref name="db.qandaset"/>
         <ref name="db.bibliolist"/>
         <ref name="db.simplelist"/>
      </choice>
   </define>
   <define name="admonition.blocks">
      <ref name="db.note"/>
   </define>
   <define name="verbatim.blocks">
      <choice>
         <ref name="db.literallayout"/>
         <ref name="db.programlisting"/>
      </choice>
   </define>
   <define name="para.blocks">
      <ref name="db.para"/>
   </define>
   <define name="publishing.blocks">
      <choice>
         <ref name="db.blockquote"/>
         <ref name="db.sidebar"/>
      </choice>
   </define>
   <define name="graphic.blocks">
      <ref name="db.mediaobject"/>
   </define>
   <define name="informal.blocks">
      <ref name="db.informaltable"/>
   </define>
   <define name="formal.blocks">
      <choice>
         <ref name="db.example"/>
         <ref name="db.figure"/>
         <ref name="db.table"/>
      </choice>
   </define>
   <define name="technical.blocks">
      <empty/>
   </define>
   <define name="synopsis.blocks">
      <empty/>
   </define>
   <define name="blocks.nopara">
      <choice>
         <ref name="list.blocks"/>
         <ref name="admonition.blocks"/>
         <ref name="formal.blocks"/>
         <ref name="informal.blocks"/>
         <ref name="publishing.blocks"/>
         <ref name="graphic.blocks"/>
         <ref name="technical.blocks"/>
         <ref name="verbatim.blocks"/>
         <ref name="synopsis.blocks"/>
         <ref name="db.revhistory"/>
      </choice>
   </define>
   <define name="ubiq.inlines">
      <ref name="db.inlinemediaobject"/>
   </define>
   <define name="publishing.inlines">
      <choice>
         <ref name="db.abbrev"/>
         <ref name="db.acronym"/>
         <ref name="db.emphasis"/>
         <ref name="db.footnote"/>
         <ref name="db.footnoteref"/>
         <ref name="db.phrase"/>
         <ref name="db.quote"/>
      </choice>
   </define>
   <define name="os.inlines">
      <choice>
         <ref name="db.filename"/>
         <ref name="db.command"/>
         <ref name="db.computeroutput"/>
         <ref name="db.userinput"/>
      </choice>
   </define>
   <define name="programming.inlines">
      <empty/>
   </define>
   <define name="product.inlines">
      <ref name="db.trademark"/>
   </define>
   <define name="bibliography.inlines">
      <choice>
         <ref name="db.citetitle"/>
         <ref name="db.author"/>
         <ref name="db.personname"/>
         <ref name="db.orgname"/>
         <ref name="db.editor"/>
      </choice>
   </define>
   <define name="markup.inlines">
      <choice>
         <ref name="db.literal"/>
         <ref name="db.email"/>
      </choice>
   </define>
   <define name="technical.inlines">
      <choice>
         <ref name="db.replaceable"/>
         <ref name="db.option"/>
         <ref name="db.systemitem"/>
      </choice>
   </define>
   <define name="error.inlines">
      <empty/>
   </define>
   <define name="link.inlines">
      <choice>
         <ref name="db.xref"/>
         <ref name="db.olink"/>
      </choice>
   </define>
   <define name="gui.inlines">
      <empty/>
   </define>
   <define name="keyboard.inlines">
      <empty/>
   </define>
   <define name="math.inlines">
      <empty/>
   </define>
   <define name="person.author">
      <ref name="db.personname"/>
   </define>
   <define name="credit.contentmodel">
      <ref name="person.author"/>
   </define>
   <define name="db.abbrev">
      <element name="abbrev">
         <ref name="abbrev.attlist"/>
         <zeroOrMore>
            <choice>
               <ref name="docbook.text"/>
               <ref name="db.trademark"/>
            </choice>
         </zeroOrMore>
      </element>
   </define>
   <define name="db.acronym">
      <element name="acronym">
         <ref name="acronym.attlist"/>
         <zeroOrMore>
            <choice>
               <ref name="docbook.text"/>
               <ref name="db.trademark"/>
            </choice>
         </zeroOrMore>
      </element>
   </define>
   <define name="db.affiliation">
      <element name="affiliation">
         <ref name="affiliation.attlist"/>
         <zeroOrMore>
            <ref name="db.jobtitle"/>
         </zeroOrMore>
         <optional>
            <ref name="db.orgname"/>
         </optional>
      </element>
   </define>
   <define name="db.para">
      <element name="para">
         <ref name="para.attlist"/>
         <ref name="para.info"/>
         <zeroOrMore>
            <ref name="inlines"/>
         </zeroOrMore>
      </element>
   </define>
   <start>
      <ref name="ws.webpage"/>
   </start><!-- ====================================================================== -->
   <div>
      <db:refname>olink</db:refname>
      <db:refpurpose/>
      <define name="local.olink.attributes">
         <empty/>
      </define>
      <define name="olink.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="olink.attlist">
         <interleave>
            <optional>
               <ref name="olink.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="local.olink.attributes"/>
            <optional>
               <attribute name="linkmode">
                  <data type="IDREF"/>
               </attribute>
            </optional>
            <optional>
               <attribute name="localinfo"/>
            </optional>
            <optional>
               <attribute name="type"/>
            </optional>
            <optional>
               <attribute name="targetdoc"/>
            </optional>
            <optional>
               <attribute name="targetptr"/>
            </optional>
            <optional>
               <attribute name="xrefstyle"/>
            </optional>
         </interleave>
      </define>
      <define name="db.olink">
         <element name="olink">
            <ref name="olink.attlist"/>
            <zeroOrMore>
               <ref name="inlines"/>
            </zeroOrMore>
         </element>
      </define>
   </div><!-- ====================================================================== -->
   <div>
      <db:refname>ws:webpage</db:refname>
      <db:refpurpose/>
      <define name="local.webpage.attributes">
         <empty/>
      </define>
      <define name="webpage.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="webpage.attlist">
         <interleave>
            <optional>
               <ref name="webpage.role.attribute"/>
            </optional>
            <ref name="common.attributes.idreq"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.webpage.attributes"/>
            <optional>
               <attribute name="navto">
                  <choice>
                     <value>yes</value>
                     <value>no</value>
                  </choice>
               </attribute>
            </optional>
         </interleave>
      </define>
      <define name="ws.webpage">
         <element name="ws:webpage">
            <ref name="webpage.attlist"/>
            <zeroOrMore>
               <ref name="ws.config"/>
            </zeroOrMore>
            <ref name="ws.head"/>
            <ref name="component.contentmodel"/>
            <zeroOrMore>
               <ref name="db.appendix"/>
            </zeroOrMore>
            <zeroOrMore>
               <ref name="db.bibliography"/>
            </zeroOrMore>
         </element>
      </define>
   </div><!-- ====================================================================== -->
   <div>
      <db:refname>ws:head</db:refname>
      <db:refpurpose/>
      <define name="local.head.attributes">
         <empty/>
      </define>
      <define name="head.role.attribute">
         <attribute name="role"/>
      </define>
      <define name="head.attlist">
         <interleave>
            <optional>
               <ref name="head.role.attribute"/>
            </optional>
            <ref name="common.attributes"/>
            <ref name="common.linking.attributes"/>
            <ref name="local.head.attributes"/>
         </interleave>
      </define>
      <define name="ws.head">
         <element name="ws:head">
            <ref name="head.attlist"/>
            <ref name="db.title"/>
            <optional>
               <ref name="db.titleabbrev"/>
            </optional>
            <optional>
               <ref name="db.subtitle"/>
            </optional>
            <optional>
               <ref name="ws.summary"/>
            </optional>
            <optional>
               <ref name="ws.base"/>
            </optional>
            <optional>
               <ref name="ws.keywords"/>
            </optional>
            <zeroOrMore>
               <choice>
                  <ref name="db.copyright"/>
                  <ref name="db.author"/>
                  <ref name="db.edition"/>
                  <ref name="ws.meta"/>
                  <ref name="ws.headlink"/>
                  <ref name="ws.script"/>
                  <ref name="ws.style"/>
                  <ref name="db.abstract"/>
                  <ref name="db.revhistory"/>
                  <ref name="rddl"/>
               </choice>
            </zeroOrMore>
         </element>
      </define>
   </div><!-- ====================================================================== -->
   <div>
      <db:refname>ws:meta</db:refname>
      <db:refpurpose/>
      <define name="meta.attlist">
         <interleave>
            <optional>
               <attribute name="http-equiv"/>
            </optional>
            <optional>
               <attribute name="name"/>
            </optional>
            <attribute name="content"/>
         </interleave>
      </define>
      <define name="ws.meta">
         <element name="ws:meta">
            <ref name="meta.attlist"/>
            <empty/>
         </element>
      </define>
   </div><!-- ====================================================================== -->
   <div>
      <db:refname>ws:headlink</db:refname>
      <db:refpurpose/>
      <define name="headlink.attlist">
         <interleave>
            <optional>
               <attribute name="href"/>
            </optional>
            <optional>
               <attribute name="media"/>
            </optional>
            <optional>
               <attribute name="name"/>
            </optional>
            <optional>
               <attribute name="rel"/>
            </optional>
            <optional>
               <attribute name="rev"/>
            </optional>
            <optional>
               <attribute name="src"/>
            </optional>
            <optional>
               <attribute name="title"/>
            </optional>
            <optional>
               <attribute name="type"/>
            </optional>
         </interleave>
      </define>
      <define name="ws.headlink">
         <element name="ws:headlink">
            <ref name="headlink.attlist"/>
            <empty/>
         </element>
      </define>
   </div><!-- ====================================================================== -->
   <div>
      <db:refname>ws:script</db:refname>
      <db:refpurpose/>
      <define name="script.attlist">
         <interleave>
            <optional>
               <attribute name="src"/>
            </optional>
            <optional>
               <attribute name="language"/>
            </optional>
            <optional>
               <attribute name="type"/>
            </optional>
         </interleave>
      </define>
      <define name="ws.script">
         <element name="ws:script">
            <ref name="script.attlist"/>
            <text/>
         </element>
      </define>
   </div><!-- ====================================================================== -->
   <div>
      <db:refname>ws:style</db:refname>
      <db:refpurpose/>
      <define name="style.attlist">
         <interleave>
            <optional>
               <attribute name="src"/>
            </optional>
            <optional>
               <attribute name="type"/>
            </optional>
         </interleave>
      </define>
      <define name="ws.style">
         <element name="ws:style">
            <ref name="style.attlist"/>
            <text/>
         </element>
      </define>
   </div><!-- ====================================================================== -->
   <div>
      <db:refname>ws:config</db:refname>
      <db:refpurpose/>
      <define name="config.attlist">
         <interleave>
            <ref name="common.attributes"/>
            <attribute name="param"/>
            <attribute name="value"/>
            <optional>
               <attribute name="altval"/>
            </optional>
         </interleave>
      </define>
      <define name="ws.config">
         <element name="ws:config">
            <ref name="config.attlist"/>
            <empty/>
         </element>
      </define>
   </div><!-- ====================================================================== -->
   <div>
      <db:refname>ws:summary</db:refname>
      <db:refpurpose/>
      <define name="summary.attlist">
         <ref name="common.attributes"/>
      </define>
      <define name="ws.summary">
         <element name="ws:summary">
            <ref name="summary.attlist"/>
            <zeroOrMore>
               <ref name="inlines"/>
            </zeroOrMore>
         </element>
      </define>
   </div><!-- ====================================================================== -->
   <div>
      <db:refname>ws:base</db:refname>
      <db:refpurpose/>
      <define name="base.attlist">
         <interleave>
            <attribute name="href"/>
            <optional>
               <attribute name="target"/>
            </optional>
         </interleave>
      </define>
      <define name="ws.base">
         <element name="ws:base">
            <ref name="base.attlist"/>
            <empty/>
         </element>
      </define>
   </div><!-- ====================================================================== -->
   <div>
      <db:refname>ws:keywords</db:refname>
      <db:refpurpose/>
      <define name="keywords.attlist">
         <ref name="common.attributes"/>
      </define>
      <define name="ws.keywords">
         <element name="ws:keywords">
            <ref name="keywords.attlist"/>
            <text/>
         </element>
      </define>
   </div><!-- ====================================================================== -->
   <div>
      <db:refname>ws:webtoc</db:refname>
      <db:refpurpose/>
      <define name="webtoc.attlist">
         <ref name="common.attributes"/>
      </define>
      <define name="ws.webtoc">
         <element name="ws:webtoc">
            <ref name="webtoc.attlist"/>
            <empty/>
         </element>
      </define>
   </div><!-- ====================================================================== -->
   <div>
      <db:refname>ws:rss</db:refname>
      <db:refpurpose/>
      <define name="rss.attlist">
         <interleave>
            <ref name="common.attributes"/>
            <attribute name="feed"/>
         </interleave>
      </define>
      <define name="ws.rss">
         <element name="ws:rss">
            <ref name="rss.attlist"/>
            <empty/>
         </element>
      </define>
   </div>
</grammar>
