<?xml version="1.0" encoding="utf-8"?>
<grammar xmlns="http://relaxng.org/ns/structure/1.0" xmlns:xlink="http://www.w3.org/1999/xlink" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes" ns="http://www.tei-c.org/ns/1.0">
  <!--
Schema generated from ODD source 2010-06-04T15:06:24Z. 
Edition: 1.6.0 (June 2010)

-->
  <!---->
  <div ns="http://www.w3.org/1998/Math/MathML" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
    <div>
      <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="math_XLINK.xmlns.attrib">
        <empty/>
      </define>
      <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="MATHML.xmlns.extra.attrib">
        <ref name="math_XLINK.xmlns.attrib"/>
      </define>
      <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="MATHML.xmlns.attrib">
        <empty/>
        <ref name="MATHML.xmlns.extra.attrib"/>
      </define>
    </div>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="MATHML.NamespaceDecl.attrib">
      <ref name="MATHML.xmlns.attrib"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="MATHML.Common.attrib">
      <ref name="MATHML.NamespaceDecl.attrib"/>
      <optional>
        <attribute name="xlink:href"/>
      </optional>
      <optional>
        <attribute name="xlink:type"/>
      </optional>
      <optional>
        <attribute name="class"/>
      </optional>
      <optional>
        <attribute name="style"/>
      </optional>
      <optional>
        <attribute name="id">
          <data type="ID"/>
        </attribute>
      </optional>
      <optional>
        <attribute name="xref">
          <data type="IDREF"/>
        </attribute>
      </optional>
      <optional>
        <attribute name="other"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-fontsize">
      <optional>
        <attribute name="fontsize"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-fontweight">
      <optional>
        <attribute name="fontweight">
          <choice>
            <value>normal</value>
            <value>bold</value>
          </choice>
        </attribute>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-fontstyle">
      <optional>
        <attribute name="fontstyle">
          <choice>
            <value>normal</value>
            <value>italic</value>
          </choice>
        </attribute>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-fontfamily">
      <optional>
        <attribute name="fontfamily"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-color">
      <optional>
        <attribute name="color"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-mathvariant">
      <optional>
        <attribute name="mathvariant"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-mathsize">
      <optional>
        <attribute name="mathsize"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-mathcolor">
      <optional>
        <attribute name="mathcolor"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-mathbackground">
      <optional>
        <attribute name="mathbackground"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-fontinfo">
      <ref name="mathml.att-fontsize"/>
      <ref name="mathml.att-fontweight"/>
      <ref name="mathml.att-fontstyle"/>
      <ref name="mathml.att-fontfamily"/>
      <ref name="mathml.att-color"/>
      <ref name="mathml.att-mathvariant"/>
      <ref name="mathml.att-mathsize"/>
      <ref name="mathml.att-mathcolor"/>
      <ref name="mathml.att-mathbackground"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-form">
      <optional>
        <attribute name="form">
          <choice>
            <value>prefix</value>
            <value>infix</value>
            <value>postfix</value>
          </choice>
        </attribute>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-fence">
      <optional>
        <attribute name="fence">
          <choice>
            <value>true</value>
            <value>false</value>
          </choice>
        </attribute>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-separator">
      <optional>
        <attribute name="separator">
          <choice>
            <value>true</value>
            <value>false</value>
          </choice>
        </attribute>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-lspace">
      <optional>
        <attribute name="lspace"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-rspace">
      <optional>
        <attribute name="rspace"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-stretchy">
      <optional>
        <attribute name="stretchy">
          <choice>
            <value>true</value>
            <value>false</value>
          </choice>
        </attribute>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-symmetric">
      <optional>
        <attribute name="symmetric">
          <choice>
            <value>true</value>
            <value>false</value>
          </choice>
        </attribute>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-maxsize">
      <optional>
        <attribute name="maxsize"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-minsize">
      <optional>
        <attribute name="minsize"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-largeop">
      <optional>
        <attribute name="largeop">
          <choice>
            <value>true</value>
            <value>false</value>
          </choice>
        </attribute>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-movablelimits">
      <optional>
        <attribute name="movablelimits">
          <choice>
            <value>true</value>
            <value>false</value>
          </choice>
        </attribute>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-accent">
      <optional>
        <attribute name="accent">
          <choice>
            <value>true</value>
            <value>false</value>
          </choice>
        </attribute>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-opinfo">
      <ref name="mathml.att-form"/>
      <ref name="mathml.att-fence"/>
      <ref name="mathml.att-separator"/>
      <ref name="mathml.att-lspace"/>
      <ref name="mathml.att-rspace"/>
      <ref name="mathml.att-stretchy"/>
      <ref name="mathml.att-symmetric"/>
      <ref name="mathml.att-maxsize"/>
      <ref name="mathml.att-minsize"/>
      <ref name="mathml.att-largeop"/>
      <ref name="mathml.att-movablelimits"/>
      <ref name="mathml.att-accent"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-width">
      <optional>
        <attribute name="width"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-height">
      <optional>
        <attribute name="height"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-depth">
      <optional>
        <attribute name="depth"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-linebreak">
      <optional>
        <attribute name="linebreak"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-sizeinfo">
      <ref name="mathml.att-width"/>
      <ref name="mathml.att-height"/>
      <ref name="mathml.att-depth"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-lquote">
      <optional>
        <attribute name="lquote"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-rquote">
      <optional>
        <attribute name="rquote"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-linethickness">
      <optional>
        <attribute name="linethickness"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-scriptlevel">
      <optional>
        <attribute name="scriptlevel"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-displaystyle">
      <optional>
        <attribute name="displaystyle">
          <choice>
            <value>true</value>
            <value>false</value>
          </choice>
        </attribute>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-scriptsizemultiplier">
      <optional>
        <attribute name="scriptsizemultiplier"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-scriptminsize">
      <optional>
        <attribute name="scriptminsize"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-background">
      <optional>
        <attribute name="background"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-veryverythinmathspace">
      <optional>
        <attribute name="veryverythinmathspace"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-verythinmathspace">
      <optional>
        <attribute name="verythinmathspace"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-thinmathspace">
      <optional>
        <attribute name="thinmathspace"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-mediummathspace">
      <optional>
        <attribute name="mediummathspace"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-thickmathspace">
      <optional>
        <attribute name="thickmathspace"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-verythickmathspace">
      <optional>
        <attribute name="verythickmathspace"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-veryverythickmathspace">
      <optional>
        <attribute name="veryverythickmathspace"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-open">
      <optional>
        <attribute name="open"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-close">
      <optional>
        <attribute name="close"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-separators">
      <optional>
        <attribute name="separators"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-subscriptshift">
      <optional>
        <attribute name="subscriptshift"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-superscriptshift">
      <optional>
        <attribute name="superscriptshift"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-accentunder">
      <optional>
        <attribute name="accentunder">
          <choice>
            <value>true</value>
            <value>false</value>
          </choice>
        </attribute>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-align">
      <optional>
        <attribute name="align"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-numalign">
      <optional>
        <attribute name="numalign"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-denomalign">
      <optional>
        <attribute name="denomalign"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-rowalign">
      <optional>
        <attribute name="rowalign"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-columnalign">
      <optional>
        <attribute name="columnalign"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-columnwidth">
      <optional>
        <attribute name="columnwidth"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-groupalign">
      <optional>
        <attribute name="groupalign"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-alignmentscope">
      <optional>
        <attribute name="alignmentscope"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-rowspacing">
      <optional>
        <attribute name="rowspacing"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-columnspacing">
      <optional>
        <attribute name="columnspacing"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-rowlines">
      <optional>
        <attribute name="rowlines"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-columnlines">
      <optional>
        <attribute name="columnlines"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-frame">
      <optional>
        <attribute name="frame">
          <choice>
            <value>none</value>
            <value>solid</value>
            <value>dashed</value>
          </choice>
        </attribute>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-side">
      <optional>
        <attribute name="side">
          <choice>
            <value>left</value>
            <value>right</value>
            <value>leftoverlap</value>
            <value>rightoverlap</value>
          </choice>
        </attribute>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-framespacing">
      <optional>
        <attribute name="framespacing"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-equalrows">
      <optional>
        <attribute name="equalrows"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-equalcolumns">
      <optional>
        <attribute name="equalcolumns"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-tableinfo">
      <ref name="mathml.att-align"/>
      <ref name="mathml.att-rowalign"/>
      <ref name="mathml.att-columnalign"/>
      <ref name="mathml.att-columnwidth"/>
      <ref name="mathml.att-groupalign"/>
      <ref name="mathml.att-alignmentscope"/>
      <ref name="mathml.att-side"/>
      <ref name="mathml.att-rowspacing"/>
      <ref name="mathml.att-columnspacing"/>
      <ref name="mathml.att-rowlines"/>
      <ref name="mathml.att-columnlines"/>
      <ref name="mathml.att-width"/>
      <ref name="mathml.att-frame"/>
      <ref name="mathml.att-framespacing"/>
      <ref name="mathml.att-equalrows"/>
      <ref name="mathml.att-equalcolumns"/>
      <ref name="mathml.att-displaystyle"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-rowspan">
      <optional>
        <attribute name="rowspan"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-columnspan">
      <optional>
        <attribute name="columnspan"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-edge">
      <optional>
        <attribute name="edge">
          <choice>
            <value>left</value>
            <value>right</value>
          </choice>
        </attribute>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-actiontype">
      <optional>
        <attribute name="actiontype"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-selection">
      <optional>
        <attribute name="selection"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-name">
      <optional>
        <attribute name="name"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-alt">
      <optional>
        <attribute name="alt"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-index">
      <optional>
        <attribute name="index"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-bevelled">
      <optional>
        <attribute name="bevelled"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.ptoken">
      <choice>
        <ref name="mathml.mi"/>
        <ref name="mathml.mn"/>
        <ref name="mathml.mo"/>
        <ref name="mathml.mtext"/>
        <ref name="mathml.ms"/>
      </choice>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-mi" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-fontinfo"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-mn" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-fontinfo"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-mo" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-fontinfo"/>
      <ref name="mathml.att-opinfo"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-mtext" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-fontinfo"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-ms" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-fontinfo"/>
      <ref name="mathml.att-lquote"/>
      <ref name="mathml.att-rquote"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.petoken">
      <ref name="mathml.mspace"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.mspace">
      <element name="mspace">
        <ref name="mathml.attlist-mspace"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.mspace"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-mspace" combine="interleave">
      <ref name="mathml.att-sizeinfo"/>
      <ref name="mathml.att-linebreak"/>
      <ref name="MATHML.Common.attrib"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.pgenschema">
      <choice>
        <ref name="mathml.mrow"/>
        <ref name="mathml.mfrac"/>
        <ref name="mathml.msqrt"/>
        <ref name="mathml.mroot"/>
        <ref name="mathml.menclose"/>
        <ref name="mathml.mstyle"/>
        <ref name="mathml.merror"/>
        <ref name="mathml.mpadded"/>
        <ref name="mathml.mphantom"/>
        <ref name="mathml.mfenced"/>
      </choice>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-mrow" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-mfrac" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-bevelled"/>
      <ref name="mathml.att-numalign"/>
      <ref name="mathml.att-denomalign"/>
      <ref name="mathml.att-linethickness"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-msqrt" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-menclose" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <optional>
        <attribute name="notation" a:defaultValue="longdiv"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-mroot" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-mstyle" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-fontinfo"/>
      <ref name="mathml.att-opinfo"/>
      <ref name="mathml.att-lquote"/>
      <ref name="mathml.att-rquote"/>
      <ref name="mathml.att-linethickness"/>
      <ref name="mathml.att-scriptlevel"/>
      <ref name="mathml.att-scriptsizemultiplier"/>
      <ref name="mathml.att-scriptminsize"/>
      <ref name="mathml.att-background"/>
      <ref name="mathml.att-veryverythinmathspace"/>
      <ref name="mathml.att-verythinmathspace"/>
      <ref name="mathml.att-thinmathspace"/>
      <ref name="mathml.att-mediummathspace"/>
      <ref name="mathml.att-thickmathspace"/>
      <ref name="mathml.att-verythickmathspace"/>
      <ref name="mathml.att-veryverythickmathspace"/>
      <ref name="mathml.att-open"/>
      <ref name="mathml.att-close"/>
      <ref name="mathml.att-separators"/>
      <ref name="mathml.att-subscriptshift"/>
      <ref name="mathml.att-superscriptshift"/>
      <ref name="mathml.att-accentunder"/>
      <ref name="mathml.att-tableinfo"/>
      <ref name="mathml.att-rowspan"/>
      <ref name="mathml.att-columnspan"/>
      <ref name="mathml.att-edge"/>
      <ref name="mathml.att-actiontype"/>
      <ref name="mathml.att-selection"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-merror" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-mpadded" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-sizeinfo"/>
      <ref name="mathml.att-lspace"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-mphantom" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-mfenced" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-open"/>
      <ref name="mathml.att-close"/>
      <ref name="mathml.att-separators"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.pscrschema">
      <choice>
        <ref name="mathml.msub"/>
        <ref name="mathml.msup"/>
        <ref name="mathml.msubsup"/>
        <ref name="mathml.munder"/>
        <ref name="mathml.mover"/>
        <ref name="mathml.munderover"/>
        <ref name="mathml.mmultiscripts"/>
      </choice>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-msub" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-subscriptshift"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-msup" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-superscriptshift"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-msubsup" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-subscriptshift"/>
      <ref name="mathml.att-superscriptshift"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-munder" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-accentunder"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-mover" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-accent"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-munderover" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-accent"/>
      <ref name="mathml.att-accentunder"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-mmultiscripts" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-subscriptshift"/>
      <ref name="mathml.att-superscriptshift"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.pscreschema">
      <choice>
        <ref name="mathml.mprescripts"/>
        <ref name="mathml.none"/>
      </choice>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.mprescripts">
      <element name="mprescripts">
        <ref name="mathml.attlist-mprescripts"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.mprescripts"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-mprescripts" combine="interleave">
      <ref name="MATHML.xmlns.attrib"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.none">
      <element name="none">
        <ref name="mathml.attlist-none"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.none"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-none" combine="interleave">
      <ref name="MATHML.xmlns.attrib"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.ptabschema">
      <choice>
        <ref name="mathml.mtable"/>
        <ref name="mathml.mtr"/>
        <ref name="mathml.mlabeledtr"/>
        <ref name="mathml.mtd"/>
      </choice>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-mtable" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-tableinfo"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-mtr" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-rowalign"/>
      <ref name="mathml.att-columnalign"/>
      <ref name="mathml.att-groupalign"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-mlabeledtr" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-rowalign"/>
      <ref name="mathml.att-columnalign"/>
      <ref name="mathml.att-groupalign"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-mtd" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-rowalign"/>
      <ref name="mathml.att-columnalign"/>
      <ref name="mathml.att-groupalign"/>
      <ref name="mathml.att-rowspan"/>
      <ref name="mathml.att-columnspan"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.plschema">
      <choice>
        <ref name="mathml.pgenschema"/>
        <ref name="mathml.pscrschema"/>
        <ref name="mathml.ptabschema"/>
      </choice>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.peschema">
      <choice>
        <ref name="mathml.maligngroup"/>
        <ref name="mathml.malignmark"/>
      </choice>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.malignmark">
      <element name="malignmark">
        <ref name="mathml.attlist-malignmark"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.malignmark"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-malignmark" combine="interleave">
      <ref name="mathml.att-edge"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.maligngroup">
      <element name="maligngroup">
        <ref name="mathml.attlist-maligngroup"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.maligngroup"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-maligngroup" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-groupalign"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.mglyph">
      <element name="mglyph">
        <ref name="mathml.attlist-mglyph"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.mglyph"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-mglyph" combine="interleave">
      <ref name="mathml.att-alt"/>
      <ref name="mathml.att-fontfamily"/>
      <ref name="mathml.att-index"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.pactions">
      <ref name="mathml.maction"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-maction" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-actiontype"/>
      <ref name="mathml.att-selection"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.PresInCont">
      <choice>
        <ref name="mathml.ptoken"/>
        <ref name="mathml.petoken"/>
        <ref name="mathml.plschema"/>
        <ref name="mathml.peschema"/>
        <ref name="mathml.pactions"/>
      </choice>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.Presentation">
      <choice>
        <ref name="mathml.ptoken"/>
        <ref name="mathml.petoken"/>
        <ref name="mathml.pscreschema"/>
        <ref name="mathml.plschema"/>
        <ref name="mathml.peschema"/>
        <ref name="mathml.pactions"/>
      </choice>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-base">
      <optional>
        <attribute name="base" a:defaultValue="10"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-closure">
      <optional>
        <attribute name="closure" a:defaultValue="closed"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-definition">
      <optional>
        <attribute name="definitionURL" a:defaultValue=""/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-encoding">
      <optional>
        <attribute name="encoding" a:defaultValue=""/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-nargs">
      <optional>
        <attribute name="nargs" a:defaultValue="1"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-occurrence">
      <optional>
        <attribute name="occurrence" a:defaultValue="function-model"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-order">
      <optional>
        <attribute name="order" a:defaultValue="numeric"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-scope">
      <optional>
        <attribute name="scope" a:defaultValue="local"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-type">
      <optional>
        <attribute name="type"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.ctoken">
      <choice>
        <ref name="mathml.csymbol"/>
        <ref name="mathml.ci"/>
        <ref name="mathml.cn"/>
      </choice>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-ci" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-type"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-csymbol" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-encoding"/>
      <ref name="mathml.att-type"/>
      <ref name="mathml.att-definition"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-cn" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-type"/>
      <ref name="mathml.att-base"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.cspecial">
      <choice>
        <ref name="mathml.apply"/>
        <ref name="mathml.reln"/>
        <ref name="mathml.lambda"/>
      </choice>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-apply" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-reln" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-lambda" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.cother">
      <choice>
        <ref name="mathml.condition"/>
        <ref name="mathml.declare"/>
        <ref name="mathml.sep"/>
      </choice>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-condition" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-declare" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-type"/>
      <ref name="mathml.att-scope"/>
      <ref name="mathml.att-nargs"/>
      <ref name="mathml.att-occurrence"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.sep">
      <element name="sep">
        <ref name="mathml.attlist-sep"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.sep"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-sep" combine="interleave">
      <ref name="MATHML.xmlns.attrib"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.csemantics">
      <choice>
        <ref name="mathml.semantics"/>
        <ref name="mathml.annotation"/>
        <ref name="mathml.annotation-xml"/>
      </choice>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-semantics" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-annotation" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-annotation-xml" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.cconstructor">
      <choice>
        <ref name="mathml.interval"/>
        <ref name="mathml.list"/>
        <ref name="mathml.matrix"/>
        <ref name="mathml.matrixrow"/>
        <ref name="mathml.set"/>
        <ref name="mathml.vector"/>
        <ref name="mathml.piecewise"/>
      </choice>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-interval" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-closure"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-set" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-type"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-list" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-order"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-vector" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-matrix" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-matrixrow" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-piecewise" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-piece" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-otherwise" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.c0ary">
      <choice>
        <ref name="mathml.integers"/>
        <ref name="mathml.reals"/>
        <ref name="mathml.rationals"/>
        <ref name="mathml.naturalnumbers"/>
        <ref name="mathml.complexes"/>
        <ref name="mathml.primes"/>
        <ref name="mathml.exponentiale"/>
        <ref name="mathml.imaginaryi"/>
        <ref name="mathml.notanumber"/>
        <ref name="mathml.true"/>
        <ref name="mathml.false"/>
        <ref name="mathml.emptyset"/>
        <ref name="mathml.pi"/>
        <ref name="mathml.eulergamma"/>
        <ref name="mathml.infinity"/>
      </choice>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.integers">
      <element name="integers">
        <ref name="mathml.attlist-integers"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.integers"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-integers" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.reals">
      <element name="reals">
        <ref name="mathml.attlist-reals"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.reals"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-reals" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.rationals">
      <element name="rationals">
        <ref name="mathml.attlist-rationals"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.rationals"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-rationals" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.naturalnumbers">
      <element name="naturalnumbers">
        <ref name="mathml.attlist-naturalnumbers"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.naturalnumbers"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-naturalnumbers" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.complexes">
      <element name="complexes">
        <ref name="mathml.attlist-complexes"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.complexes"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-complexes" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.primes">
      <element name="primes">
        <ref name="mathml.attlist-primes"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.primes"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-primes" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.exponentiale">
      <element name="exponentiale">
        <ref name="mathml.attlist-exponentiale"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.exponentiale"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-exponentiale" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.imaginaryi">
      <element name="imaginaryi">
        <ref name="mathml.attlist-imaginaryi"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.imaginaryi"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-imaginaryi" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.notanumber">
      <element name="notanumber">
        <ref name="mathml.attlist-notanumber"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.notanumber"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-notanumber" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.true">
      <element name="true">
        <ref name="mathml.attlist-true"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.true"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-true" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.false">
      <element name="false">
        <ref name="mathml.attlist-false"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.false"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-false" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.emptyset">
      <element name="emptyset">
        <ref name="mathml.attlist-emptyset"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.emptyset"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-emptyset" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.pi">
      <element name="pi">
        <ref name="mathml.attlist-pi"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.pi"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-pi" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.eulergamma">
      <element name="eulergamma">
        <ref name="mathml.attlist-eulergamma"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.eulergamma"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-eulergamma" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.infinity">
      <element name="infinity">
        <ref name="mathml.attlist-infinity"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.infinity"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-infinity" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.cfuncop1ary">
      <choice>
        <ref name="mathml.inverse"/>
        <ref name="mathml.ident"/>
        <ref name="mathml.domain"/>
        <ref name="mathml.codomain"/>
        <ref name="mathml.image"/>
      </choice>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.inverse">
      <element name="inverse">
        <ref name="mathml.attlist-inverse"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.inverse"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-inverse" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.domain">
      <element name="domain">
        <ref name="mathml.attlist-domain"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.domain"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-domain" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.codomain">
      <element name="codomain">
        <ref name="mathml.attlist-codomain"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.codomain"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-codomain" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.image">
      <element name="image">
        <ref name="mathml.attlist-image"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.image"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-image" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.cfuncopnary">
      <choice>
        <ref name="mathml.fn"/>
        <ref name="mathml.compose"/>
      </choice>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-fn" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.ident">
      <element name="ident">
        <ref name="mathml.attlist-ident"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.ident"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-ident" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.compose">
      <element name="compose">
        <ref name="mathml.attlist-compose"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.compose"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-compose" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.carithop1ary">
      <choice>
        <ref name="mathml.abs"/>
        <ref name="mathml.conjugate"/>
        <ref name="mathml.exp"/>
        <ref name="mathml.factorial"/>
        <ref name="mathml.arg"/>
        <ref name="mathml.real"/>
        <ref name="mathml.imaginary"/>
        <ref name="mathml.floor"/>
        <ref name="mathml.ceiling"/>
      </choice>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.exp">
      <element name="exp">
        <ref name="mathml.attlist-exp"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.exp"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-exp" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.abs">
      <element name="abs">
        <ref name="mathml.attlist-abs"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.abs"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-abs" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.arg">
      <element name="arg">
        <ref name="mathml.attlist-arg"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.arg"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-arg" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.real">
      <element name="real">
        <ref name="mathml.attlist-real"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.real"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-real" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.imaginary">
      <element name="imaginary">
        <ref name="mathml.attlist-imaginary"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.imaginary"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-imaginary" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.conjugate">
      <element name="conjugate">
        <ref name="mathml.attlist-conjugate"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.conjugate"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-conjugate" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.factorial">
      <element name="factorial">
        <ref name="mathml.attlist-factorial"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.factorial"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-factorial" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.floor">
      <element name="floor">
        <ref name="mathml.attlist-floor"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.floor"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-floor" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.ceiling">
      <element name="ceiling">
        <ref name="mathml.attlist-ceiling"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.ceiling"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-ceiling" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.carithop1or2ary">
      <ref name="mathml.minus"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.minus">
      <element name="minus">
        <ref name="mathml.attlist-minus"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.minus"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-minus" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.carithop2ary">
      <choice>
        <ref name="mathml.quotient"/>
        <ref name="mathml.divide"/>
        <ref name="mathml.power"/>
        <ref name="mathml.rem"/>
      </choice>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.quotient">
      <element name="quotient">
        <ref name="mathml.attlist-quotient"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.quotient"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-quotient" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.divide">
      <element name="divide">
        <ref name="mathml.attlist-divide"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.divide"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-divide" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.power">
      <element name="power">
        <ref name="mathml.attlist-power"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.power"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-power" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.rem">
      <element name="rem">
        <ref name="mathml.attlist-rem"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.rem"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-rem" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.carithopnary">
      <choice>
        <ref name="mathml.plus"/>
        <ref name="mathml.times"/>
        <ref name="mathml.max"/>
        <ref name="mathml.min"/>
        <ref name="mathml.gcd"/>
        <ref name="mathml.lcm"/>
      </choice>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.plus">
      <element name="plus">
        <ref name="mathml.attlist-plus"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.plus"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-plus" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.max">
      <element name="max">
        <ref name="mathml.attlist-max"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.max"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-max" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.min">
      <element name="min">
        <ref name="mathml.attlist-min"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.min"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-min" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.times">
      <element name="times">
        <ref name="mathml.attlist-times"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.times"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-times" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.gcd">
      <element name="gcd">
        <ref name="mathml.attlist-gcd"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.gcd"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-gcd" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.lcm">
      <element name="lcm">
        <ref name="mathml.attlist-lcm"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.lcm"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-lcm" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.carithoproot">
      <ref name="mathml.root"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.root">
      <element name="root">
        <ref name="mathml.attlist-root"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.root"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-root" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.clogicopquant">
      <choice>
        <ref name="mathml.exists"/>
        <ref name="mathml.forall"/>
      </choice>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.exists">
      <element name="exists">
        <ref name="mathml.attlist-exists"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.exists"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-exists" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.forall">
      <element name="forall">
        <ref name="mathml.attlist-forall"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.forall"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-forall" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.clogicopnary">
      <choice>
        <ref name="mathml.and"/>
        <ref name="mathml.or"/>
        <ref name="mathml.xor"/>
      </choice>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.and">
      <element name="and">
        <ref name="mathml.attlist-and"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.and"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-and" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.or">
      <element name="or">
        <ref name="mathml.attlist-or"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.or"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-or" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.xor">
      <element name="xor">
        <ref name="mathml.attlist-xor"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.xor"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-xor" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.clogicop1ary">
      <ref name="mathml.not"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.not">
      <element name="not">
        <ref name="mathml.attlist-not"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.not"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-not" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.clogicop2ary">
      <ref name="mathml.implies"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.implies">
      <element name="implies">
        <ref name="mathml.attlist-implies"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.implies"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-implies" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.ccalcop">
      <choice>
        <ref name="mathml.log"/>
        <ref name="mathml.int"/>
        <ref name="mathml.diff"/>
        <ref name="mathml.partialdiff"/>
        <ref name="mathml.divergence"/>
        <ref name="mathml.grad"/>
        <ref name="mathml.curl"/>
        <ref name="mathml.laplacian"/>
      </choice>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.divergence">
      <element name="divergence">
        <ref name="mathml.attlist-divergence"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.divergence"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-divergence" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.grad">
      <element name="grad">
        <ref name="mathml.attlist-grad"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.grad"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-grad" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.curl">
      <element name="curl">
        <ref name="mathml.attlist-curl"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.curl"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-curl" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.laplacian">
      <element name="laplacian">
        <ref name="mathml.attlist-laplacian"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.laplacian"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-laplacian" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.log">
      <element name="log">
        <ref name="mathml.attlist-log"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.log"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-log" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.int">
      <element name="int">
        <ref name="mathml.attlist-int"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.int"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-int" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.diff">
      <element name="diff">
        <ref name="mathml.attlist-diff"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.diff"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-diff" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.partialdiff">
      <element name="partialdiff">
        <ref name="mathml.attlist-partialdiff"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.partialdiff"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-partialdiff" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.ccalcop1ary">
      <ref name="mathml.ln"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.ln">
      <element name="ln">
        <ref name="mathml.attlist-ln"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.ln"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-ln" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.csetop1ary">
      <ref name="mathml.card"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.card">
      <element name="card">
        <ref name="mathml.attlist-card"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.card"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-card" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.csetop2ary">
      <ref name="mathml.setdiff"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.setdiff">
      <element name="setdiff">
        <ref name="mathml.attlist-setdiff"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.setdiff"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-setdiff" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.csetopnary">
      <choice>
        <ref name="mathml.union"/>
        <ref name="mathml.intersect"/>
        <ref name="mathml.cartesianproduct"/>
      </choice>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.union">
      <element name="union">
        <ref name="mathml.attlist-union"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.union"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-union" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.intersect">
      <element name="intersect">
        <ref name="mathml.attlist-intersect"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.intersect"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-intersect" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.cartesianproduct">
      <element name="cartesianproduct">
        <ref name="mathml.attlist-cartesianproduct"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.cartesianproduct"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-cartesianproduct" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.cseqop">
      <choice>
        <ref name="mathml.sum"/>
        <ref name="mathml.product"/>
        <ref name="mathml.limit"/>
      </choice>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.sum">
      <element name="sum">
        <ref name="mathml.attlist-sum"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.sum"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-sum" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.product">
      <element name="product">
        <ref name="mathml.attlist-product"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.product"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-product" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.limit">
      <element name="limit">
        <ref name="mathml.attlist-limit"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.limit"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-limit" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.ctrigop">
      <choice>
        <ref name="mathml.sin"/>
        <ref name="mathml.cos"/>
        <ref name="mathml.tan"/>
        <ref name="mathml.sec"/>
        <ref name="mathml.csc"/>
        <ref name="mathml.cot"/>
        <ref name="mathml.sinh"/>
        <ref name="mathml.cosh"/>
        <ref name="mathml.tanh"/>
        <ref name="mathml.sech"/>
        <ref name="mathml.csch"/>
        <ref name="mathml.coth"/>
        <ref name="mathml.arcsin"/>
        <ref name="mathml.arccos"/>
        <ref name="mathml.arctan"/>
        <ref name="mathml.arccosh"/>
        <ref name="mathml.arccot"/>
        <ref name="mathml.arccoth"/>
        <ref name="mathml.arccsc"/>
        <ref name="mathml.arccsch"/>
        <ref name="mathml.arcsec"/>
        <ref name="mathml.arcsech"/>
        <ref name="mathml.arcsinh"/>
        <ref name="mathml.arctanh"/>
      </choice>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.sin">
      <element name="sin">
        <ref name="mathml.attlist-sin"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.sin"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-sin" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.cos">
      <element name="cos">
        <ref name="mathml.attlist-cos"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.cos"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-cos" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.tan">
      <element name="tan">
        <ref name="mathml.attlist-tan"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.tan"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-tan" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.sec">
      <element name="sec">
        <ref name="mathml.attlist-sec"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.sec"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-sec" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.csc">
      <element name="csc">
        <ref name="mathml.attlist-csc"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.csc"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-csc" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.cot">
      <element name="cot">
        <ref name="mathml.attlist-cot"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.cot"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-cot" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.sinh">
      <element name="sinh">
        <ref name="mathml.attlist-sinh"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.sinh"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-sinh" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.cosh">
      <element name="cosh">
        <ref name="mathml.attlist-cosh"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.cosh"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-cosh" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.tanh">
      <element name="tanh">
        <ref name="mathml.attlist-tanh"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.tanh"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-tanh" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.sech">
      <element name="sech">
        <ref name="mathml.attlist-sech"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.sech"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-sech" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.csch">
      <element name="csch">
        <ref name="mathml.attlist-csch"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.csch"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-csch" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.coth">
      <element name="coth">
        <ref name="mathml.attlist-coth"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.coth"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-coth" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.arcsin">
      <element name="arcsin">
        <ref name="mathml.attlist-arcsin"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.arcsin"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-arcsin" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.arccos">
      <element name="arccos">
        <ref name="mathml.attlist-arccos"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.arccos"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-arccos" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.arctan">
      <element name="arctan">
        <ref name="mathml.attlist-arctan"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.arctan"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-arctan" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.arccosh">
      <element name="arccosh">
        <ref name="mathml.attlist-arccosh"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.arccosh"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-arccosh" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.arccot">
      <element name="arccot">
        <ref name="mathml.attlist-arccot"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.arccot"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-arccot" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.arccoth">
      <element name="arccoth">
        <ref name="mathml.attlist-arccoth"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.arccoth"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-arccoth" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.arccsc">
      <element name="arccsc">
        <ref name="mathml.attlist-arccsc"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.arccsc"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-arccsc" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.arccsch">
      <element name="arccsch">
        <ref name="mathml.attlist-arccsch"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.arccsch"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-arccsch" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.arcsec">
      <element name="arcsec">
        <ref name="mathml.attlist-arcsec"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.arcsec"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-arcsec" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.arcsech">
      <element name="arcsech">
        <ref name="mathml.attlist-arcsech"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.arcsech"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-arcsech" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.arcsinh">
      <element name="arcsinh">
        <ref name="mathml.attlist-arcsinh"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.arcsinh"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-arcsinh" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.arctanh">
      <element name="arctanh">
        <ref name="mathml.attlist-arctanh"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.arctanh"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-arctanh" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.cstatopnary">
      <choice>
        <ref name="mathml.mean"/>
        <ref name="mathml.sdev"/>
        <ref name="mathml.variance"/>
        <ref name="mathml.median"/>
        <ref name="mathml.mode"/>
      </choice>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.mean">
      <element name="mean">
        <ref name="mathml.attlist-mean"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.mean"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-mean" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.sdev">
      <element name="sdev">
        <ref name="mathml.attlist-sdev"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.sdev"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-sdev" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.variance">
      <element name="variance">
        <ref name="mathml.attlist-variance"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.variance"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-variance" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.median">
      <element name="median">
        <ref name="mathml.attlist-median"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.median"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-median" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.mode">
      <element name="mode">
        <ref name="mathml.attlist-mode"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.mode"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-mode" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.cstatopmoment">
      <ref name="mathml.moment"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.moment">
      <element name="moment">
        <ref name="mathml.attlist-moment"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.moment"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-moment" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.clalgop1ary">
      <choice>
        <ref name="mathml.determinant"/>
        <ref name="mathml.transpose"/>
      </choice>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.determinant">
      <element name="determinant">
        <ref name="mathml.attlist-determinant"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.determinant"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-determinant" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.transpose">
      <element name="transpose">
        <ref name="mathml.attlist-transpose"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.transpose"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-transpose" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.clalgop2ary">
      <choice>
        <ref name="mathml.vectorproduct"/>
        <ref name="mathml.scalarproduct"/>
        <ref name="mathml.outerproduct"/>
      </choice>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.vectorproduct">
      <element name="vectorproduct">
        <ref name="mathml.attlist-vectorproduct"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.vectorproduct"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-vectorproduct" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.scalarproduct">
      <element name="scalarproduct">
        <ref name="mathml.attlist-scalarproduct"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.scalarproduct"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-scalarproduct" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.outerproduct">
      <element name="outerproduct">
        <ref name="mathml.attlist-outerproduct"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.outerproduct"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-outerproduct" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.clalgopnary">
      <ref name="mathml.selector"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.selector">
      <element name="selector">
        <ref name="mathml.attlist-selector"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.selector"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-selector" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.cgenrel2ary">
      <choice>
        <ref name="mathml.neq"/>
        <ref name="mathml.factorof"/>
      </choice>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.neq">
      <element name="neq">
        <ref name="mathml.attlist-neq"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.neq"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-neq" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.factorof">
      <element name="factorof">
        <ref name="mathml.attlist-factorof"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.factorof"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-factorof" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.cgenrelnary">
      <choice>
        <ref name="mathml.eq"/>
        <ref name="mathml.leq"/>
        <ref name="mathml.lt"/>
        <ref name="mathml.geq"/>
        <ref name="mathml.gt"/>
        <ref name="mathml.equivalent"/>
        <ref name="mathml.approx"/>
      </choice>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.eq">
      <element name="eq">
        <ref name="mathml.attlist-eq"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.eq"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-eq" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.equivalent">
      <element name="equivalent">
        <ref name="mathml.attlist-equivalent"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.equivalent"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-equivalent" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.approx">
      <element name="approx">
        <ref name="mathml.attlist-approx"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.approx"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-approx" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.gt">
      <element name="gt">
        <ref name="mathml.attlist-gt"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.gt"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-gt" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.lt">
      <element name="lt">
        <ref name="mathml.attlist-lt"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.lt"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-lt" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.geq">
      <element name="geq">
        <ref name="mathml.attlist-geq"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.geq"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-geq" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.leq">
      <element name="leq">
        <ref name="mathml.attlist-leq"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.leq"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-leq" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.csetrel2ary">
      <choice>
        <ref name="mathml.in"/>
        <ref name="mathml.notin"/>
        <ref name="mathml.notsubset"/>
        <ref name="mathml.notprsubset"/>
      </choice>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.in">
      <element name="in">
        <ref name="mathml.attlist-in"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.in"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-in" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.notin">
      <element name="notin">
        <ref name="mathml.attlist-notin"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.notin"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-notin" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.notsubset">
      <element name="notsubset">
        <ref name="mathml.attlist-notsubset"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.notsubset"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-notsubset" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.notprsubset">
      <element name="notprsubset">
        <ref name="mathml.attlist-notprsubset"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.notprsubset"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-notprsubset" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.csetrelnary">
      <choice>
        <ref name="mathml.subset"/>
        <ref name="mathml.prsubset"/>
      </choice>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.subset">
      <element name="subset">
        <ref name="mathml.attlist-subset"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.subset"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-subset" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.prsubset">
      <element name="prsubset">
        <ref name="mathml.attlist-prsubset"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.prsubset"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-prsubset" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.cseqrel2ary">
      <ref name="mathml.tendsto"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.tendsto">
      <element name="tendsto">
        <ref name="mathml.attlist-tendsto"/>
        <empty/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.tendsto"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-tendsto" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-definition"/>
      <ref name="mathml.att-encoding"/>
      <ref name="mathml.att-type"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.cquantifier">
      <choice>
        <ref name="mathml.lowlimit"/>
        <ref name="mathml.uplimit"/>
        <ref name="mathml.bvar"/>
        <ref name="mathml.degree"/>
        <ref name="mathml.logbase"/>
        <ref name="mathml.momentabout"/>
        <ref name="mathml.domainofapplication"/>
      </choice>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-lowlimit" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-uplimit" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-bvar" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-degree" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-logbase" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-momentabout" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-domainofapplication" combine="interleave">
      <ref name="MATHML.Common.attrib"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.cop1ary">
      <choice>
        <ref name="mathml.cfuncop1ary"/>
        <ref name="mathml.carithop1ary"/>
        <ref name="mathml.clogicop1ary"/>
        <ref name="mathml.ccalcop1ary"/>
        <ref name="mathml.ctrigop"/>
        <ref name="mathml.clalgop1ary"/>
        <ref name="mathml.csetop1ary"/>
      </choice>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.cop2ary">
      <choice>
        <ref name="mathml.carithop2ary"/>
        <ref name="mathml.clogicop2ary"/>
        <ref name="mathml.clalgop2ary"/>
        <ref name="mathml.csetop2ary"/>
      </choice>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.copnary">
      <choice>
        <ref name="mathml.cfuncopnary"/>
        <ref name="mathml.carithopnary"/>
        <ref name="mathml.clogicopnary"/>
        <ref name="mathml.csetopnary"/>
        <ref name="mathml.cstatopnary"/>
        <ref name="mathml.clalgopnary"/>
      </choice>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.copmisc">
      <choice>
        <ref name="mathml.carithoproot"/>
        <ref name="mathml.carithop1or2ary"/>
        <ref name="mathml.ccalcop"/>
        <ref name="mathml.cseqop"/>
        <ref name="mathml.cstatopmoment"/>
        <ref name="mathml.clogicopquant"/>
      </choice>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.crel2ary">
      <choice>
        <ref name="mathml.cgenrel2ary"/>
        <ref name="mathml.csetrel2ary"/>
        <ref name="mathml.cseqrel2ary"/>
      </choice>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.crelnary">
      <choice>
        <ref name="mathml.cgenrelnary"/>
        <ref name="mathml.csetrelnary"/>
      </choice>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.Content">
      <choice>
        <ref name="mathml.ctoken"/>
        <ref name="mathml.cspecial"/>
        <ref name="mathml.cother"/>
        <ref name="mathml.csemantics"/>
        <ref name="mathml.c0ary"/>
        <ref name="mathml.cconstructor"/>
        <ref name="mathml.cquantifier"/>
        <ref name="mathml.cop1ary"/>
        <ref name="mathml.cop2ary"/>
        <ref name="mathml.copnary"/>
        <ref name="mathml.copmisc"/>
        <ref name="mathml.crel2ary"/>
        <ref name="mathml.crelnary"/>
      </choice>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.ContInPres">
      <choice>
        <ref name="mathml.ci"/>
        <ref name="mathml.csymbol"/>
        <ref name="mathml.cn"/>
        <ref name="mathml.c0ary"/>
        <ref name="mathml.apply"/>
        <ref name="mathml.fn"/>
        <ref name="mathml.lambda"/>
        <ref name="mathml.reln"/>
        <ref name="mathml.cconstructor"/>
        <ref name="mathml.semantics"/>
        <ref name="mathml.declare"/>
      </choice>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.ContentExpression">
      <zeroOrMore>
        <choice>
          <ref name="mathml.Content"/>
          <ref name="mathml.PresInCont"/>
        </choice>
      </zeroOrMore>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.PresExpression">
      <zeroOrMore>
        <choice>
          <ref name="mathml.Presentation"/>
          <ref name="mathml.ContInPres"/>
        </choice>
      </zeroOrMore>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.MathExpression">
      <zeroOrMore>
        <choice>
          <ref name="mathml.PresInCont"/>
          <ref name="mathml.ContInPres"/>
        </choice>
      </zeroOrMore>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.MathMLCharacters">
      <choice>
        <text/>
        <ref name="mathml.mglyph"/>
      </choice>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.ci">
      <element name="ci">
        <ref name="mathml.attlist-ci"/>
        <zeroOrMore>
          <choice>
            <ref name="mathml.MathMLCharacters"/>
            <ref name="mathml.PresInCont"/>
          </choice>
        </zeroOrMore>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.ci"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.csymbol">
      <element name="csymbol">
        <ref name="mathml.attlist-csymbol"/>
        <zeroOrMore>
          <choice>
            <ref name="mathml.MathMLCharacters"/>
            <ref name="mathml.PresInCont"/>
          </choice>
        </zeroOrMore>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.csymbol"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.cn">
      <element name="cn">
        <ref name="mathml.attlist-cn"/>
        <zeroOrMore>
          <choice>
            <ref name="mathml.MathMLCharacters"/>
            <ref name="mathml.sep"/>
            <ref name="mathml.PresInCont"/>
          </choice>
        </zeroOrMore>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.cn"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.apply">
      <element name="apply">
        <ref name="mathml.attlist-apply"/>
        <ref name="mathml.ContentExpression"/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.apply"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.reln">
      <element name="reln">
        <ref name="mathml.attlist-reln"/>
        <ref name="mathml.ContentExpression"/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.reln"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.lambda">
      <element name="lambda">
        <ref name="mathml.attlist-lambda"/>
        <ref name="mathml.ContentExpression"/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.lambda"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.condition">
      <element name="condition">
        <ref name="mathml.attlist-condition"/>
        <ref name="mathml.ContentExpression"/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.condition"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.declare">
      <element name="declare">
        <ref name="mathml.attlist-declare"/>
        <ref name="mathml.ContentExpression"/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.declare"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.semantics">
      <element name="semantics">
        <ref name="mathml.attlist-semantics"/>
        <ref name="mathml.ContentExpression"/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.semantics"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.Annotation.content">
      <text/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.annotation">
      <element name="annotation">
        <ref name="mathml.attlist-annotation"/>
        <ref name="mathml.Annotation.content"/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.annotation"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.annotation-xml">
      <element name="annotation-xml">
        <ref name="mathml.attlist-annotation-xml"/>
        <ref name="mathml.any"/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.annotation-xml"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.interval">
      <element name="interval">
        <ref name="mathml.attlist-interval"/>
        <ref name="mathml.ContentExpression"/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.interval"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.set">
      <element name="set">
        <ref name="mathml.attlist-set"/>
        <ref name="mathml.ContentExpression"/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.set"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.list">
      <element name="list">
        <ref name="mathml.attlist-list"/>
        <ref name="mathml.ContentExpression"/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.list"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.vector">
      <element name="vector">
        <ref name="mathml.attlist-vector"/>
        <ref name="mathml.ContentExpression"/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.vector"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.matrix">
      <element name="matrix">
        <ref name="mathml.attlist-matrix"/>
        <ref name="mathml.ContentExpression"/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.matrix"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.matrixrow">
      <element name="matrixrow">
        <ref name="mathml.attlist-matrixrow"/>
        <ref name="mathml.ContentExpression"/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.matrixrow"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.piecewise">
      <element name="piecewise">
        <ref name="mathml.attlist-piecewise"/>
        <zeroOrMore>
          <ref name="mathml.piece"/>
        </zeroOrMore>
        <optional>
          <ref name="mathml.otherwise"/>
        </optional>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.piecewise"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.piece">
      <element name="piece">
        <ref name="mathml.attlist-piece"/>
        <ref name="mathml.ContentExpression"/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.piece"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.otherwise">
      <element name="otherwise">
        <ref name="mathml.attlist-otherwise"/>
        <ref name="mathml.ContentExpression"/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.otherwise"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.fn">
      <element name="fn">
        <ref name="mathml.attlist-fn"/>
        <ref name="mathml.ContentExpression"/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.fn"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.lowlimit">
      <element name="lowlimit">
        <ref name="mathml.attlist-lowlimit"/>
        <ref name="mathml.ContentExpression"/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.lowlimit"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.uplimit">
      <element name="uplimit">
        <ref name="mathml.attlist-uplimit"/>
        <ref name="mathml.ContentExpression"/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.uplimit"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.bvar">
      <element name="bvar">
        <ref name="mathml.attlist-bvar"/>
        <ref name="mathml.ContentExpression"/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.bvar"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.degree">
      <element name="degree">
        <ref name="mathml.attlist-degree"/>
        <ref name="mathml.ContentExpression"/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.degree"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.logbase">
      <element name="logbase">
        <ref name="mathml.attlist-logbase"/>
        <ref name="mathml.ContentExpression"/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.logbase"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.momentabout">
      <element name="momentabout">
        <ref name="mathml.attlist-momentabout"/>
        <ref name="mathml.ContentExpression"/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.momentabout"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.domainofapplication">
      <element name="domainofapplication">
        <ref name="mathml.attlist-domainofapplication"/>
        <ref name="mathml.ContentExpression"/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.domainofapplication"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.mstyle">
      <element name="mstyle">
        <ref name="mathml.attlist-mstyle"/>
        <ref name="mathml.PresExpression"/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.mstyle"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.merror">
      <element name="merror">
        <ref name="mathml.attlist-merror"/>
        <ref name="mathml.PresExpression"/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.merror"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.mphantom">
      <element name="mphantom">
        <ref name="mathml.attlist-mphantom"/>
        <ref name="mathml.PresExpression"/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.mphantom"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.mrow">
      <element name="mrow">
        <ref name="mathml.attlist-mrow"/>
        <ref name="mathml.PresExpression"/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.mrow"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.mfrac">
      <element name="mfrac">
        <ref name="mathml.attlist-mfrac"/>
        <ref name="mathml.PresExpression"/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.mfrac"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.msqrt">
      <element name="msqrt">
        <ref name="mathml.attlist-msqrt"/>
        <ref name="mathml.PresExpression"/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.msqrt"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.menclose">
      <element name="menclose">
        <ref name="mathml.attlist-menclose"/>
        <ref name="mathml.PresExpression"/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.menclose"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.mroot">
      <element name="mroot">
        <ref name="mathml.attlist-mroot"/>
        <ref name="mathml.PresExpression"/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.mroot"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.msub">
      <element name="msub">
        <ref name="mathml.attlist-msub"/>
        <ref name="mathml.PresExpression"/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.msub"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.msup">
      <element name="msup">
        <ref name="mathml.attlist-msup"/>
        <ref name="mathml.PresExpression"/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.msup"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.msubsup">
      <element name="msubsup">
        <ref name="mathml.attlist-msubsup"/>
        <ref name="mathml.PresExpression"/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.msubsup"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.mmultiscripts">
      <element name="mmultiscripts">
        <ref name="mathml.attlist-mmultiscripts"/>
        <ref name="mathml.PresExpression"/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.mmultiscripts"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.munder">
      <element name="munder">
        <ref name="mathml.attlist-munder"/>
        <ref name="mathml.PresExpression"/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.munder"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.mover">
      <element name="mover">
        <ref name="mathml.attlist-mover"/>
        <ref name="mathml.PresExpression"/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.mover"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.munderover">
      <element name="munderover">
        <ref name="mathml.attlist-munderover"/>
        <ref name="mathml.PresExpression"/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.munderover"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.mtable">
      <element name="mtable">
        <ref name="mathml.attlist-mtable"/>
        <ref name="mathml.PresExpression"/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.mtable"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.mtr">
      <element name="mtr">
        <ref name="mathml.attlist-mtr"/>
        <ref name="mathml.PresExpression"/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.mtr"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.mlabeledtr">
      <element name="mlabeledtr">
        <ref name="mathml.attlist-mlabeledtr"/>
        <ref name="mathml.PresExpression"/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.mlabeledtr"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.mtd">
      <element name="mtd">
        <ref name="mathml.attlist-mtd"/>
        <ref name="mathml.PresExpression"/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.mtd"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.maction">
      <element name="maction">
        <ref name="mathml.attlist-maction"/>
        <ref name="mathml.PresExpression"/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.maction"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.mfenced">
      <element name="mfenced">
        <ref name="mathml.attlist-mfenced"/>
        <ref name="mathml.PresExpression"/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.mfenced"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.mpadded">
      <element name="mpadded">
        <ref name="mathml.attlist-mpadded"/>
        <ref name="mathml.PresExpression"/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.mpadded"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.mi">
      <element name="mi">
        <ref name="mathml.attlist-mi"/>
        <zeroOrMore>
          <choice>
            <ref name="mathml.MathMLCharacters"/>
            <ref name="mathml.malignmark"/>
          </choice>
        </zeroOrMore>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.mi"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.mn">
      <element name="mn">
        <ref name="mathml.attlist-mn"/>
        <zeroOrMore>
          <choice>
            <ref name="mathml.MathMLCharacters"/>
            <ref name="mathml.malignmark"/>
          </choice>
        </zeroOrMore>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.mn"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.mo">
      <element name="mo">
        <ref name="mathml.attlist-mo"/>
        <zeroOrMore>
          <choice>
            <ref name="mathml.MathMLCharacters"/>
            <ref name="mathml.malignmark"/>
          </choice>
        </zeroOrMore>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.mo"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.mtext">
      <element name="mtext">
        <ref name="mathml.attlist-mtext"/>
        <zeroOrMore>
          <choice>
            <ref name="mathml.MathMLCharacters"/>
            <ref name="mathml.malignmark"/>
          </choice>
        </zeroOrMore>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.mtext"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.ms">
      <element name="ms">
        <ref name="mathml.attlist-ms"/>
        <zeroOrMore>
          <choice>
            <ref name="mathml.MathMLCharacters"/>
            <ref name="mathml.malignmark"/>
          </choice>
        </zeroOrMore>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.ms"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-macros">
      <optional>
        <attribute name="macros"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-mode">
      <optional>
        <attribute name="mode"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-display">
      <optional>
        <attribute name="display"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-topinfo">
      <ref name="MATHML.Common.attrib"/>
      <ref name="mathml.att-macros"/>
      <ref name="mathml.att-mode"/>
      <ref name="mathml.att-display"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-baseline">
      <optional>
        <attribute name="baseline"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-overflow">
      <optional>
        <attribute name="overflow" a:defaultValue="scroll">
          <choice>
            <value>scroll</value>
            <value>elide</value>
            <value>truncate</value>
            <value>scale</value>
          </choice>
        </attribute>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-altimg">
      <optional>
        <attribute name="altimg"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-alttext">
      <optional>
        <attribute name="alttext"/>
      </optional>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.att-browif">
      <ref name="mathml.att-type"/>
      <ref name="mathml.att-name"/>
      <ref name="mathml.att-height"/>
      <ref name="mathml.att-width"/>
      <ref name="mathml.att-baseline"/>
      <ref name="mathml.att-overflow"/>
      <ref name="mathml.att-altimg"/>
      <ref name="mathml.att-alttext"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.math">
      <element name="math">
        <ref name="mathml.attlist-math"/>
        <ref name="mathml.MathExpression"/>
      </element>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <ref name="mathml.math"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.attlist-math" combine="interleave">
      <ref name="mathml.att-topinfo"/>
      <ref name="mathml.att-browif"/>
    </define>
    <define xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="mathml.any" combine="choice">
      <text/>
    </define>
  </div>
  <define name="macro.paraContent">
    <rng:zeroOrMore xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns="http://www.tei-c.org/ns/1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0">
      <rng:choice>
        <rng:text/>
        <ref xmlns="http://relaxng.org/ns/structure/1.0" name="model.gLike"/>
        <ref xmlns="http://relaxng.org/ns/structure/1.0" name="model.phrase"/>
        <ref xmlns="http://relaxng.org/ns/structure/1.0" name="model.inter"/>
        <ref xmlns="http://relaxng.org/ns/structure/1.0" name="model.global"/>
        <ref xmlns="http://relaxng.org/ns/structure/1.0" name="mathml.math"/>
      </rng:choice>
    </rng:zeroOrMore>
  </define>
  <define name="macro.limitedContent">
    <zeroOrMore xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
      <choice>
        <text/>
        <ref name="model.limitedPhrase"/>
        <ref name="model.inter"/>
      </choice>
    </zeroOrMore>
  </define>
  <define name="macro.phraseSeq">
    <rng:zeroOrMore xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns="http://www.tei-c.org/ns/1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0">
      <rng:choice>
        <rng:text/>
        <ref xmlns="http://relaxng.org/ns/structure/1.0" name="model.gLike"/>
        <ref xmlns="http://relaxng.org/ns/structure/1.0" name="model.phrase"/>
        <ref xmlns="http://relaxng.org/ns/structure/1.0" name="model.global"/>
        <ref xmlns="http://relaxng.org/ns/structure/1.0" name="mathml.math"/>
      </rng:choice>
    </rng:zeroOrMore>
  </define>
  <define name="macro.phraseSeq.limited">
    <zeroOrMore xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
      <choice>
        <text/>
        <ref name="model.limitedPhrase"/>
        <ref name="model.global"/>
      </choice>
    </zeroOrMore>
  </define>
  <define name="macro.specialPara">
    <rng:zeroOrMore xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns="http://www.tei-c.org/ns/1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0">
      <rng:choice>
        <rng:text/>
        <ref xmlns="http://relaxng.org/ns/structure/1.0" name="model.gLike"/>
        <ref xmlns="http://relaxng.org/ns/structure/1.0" name="model.phrase"/>
        <ref xmlns="http://relaxng.org/ns/structure/1.0" name="model.inter"/>
        <ref xmlns="http://relaxng.org/ns/structure/1.0" name="model.divPart"/>
        <ref xmlns="http://relaxng.org/ns/structure/1.0" name="model.global"/>
        <ref xmlns="http://relaxng.org/ns/structure/1.0" name="mathml.math"/>
      </rng:choice>
    </rng:zeroOrMore>
  </define>
  <define name="macro.xtext">
    <zeroOrMore xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
      <choice>
        <text/>
        <ref name="model.gLike"/>
      </choice>
    </zeroOrMore>
  </define>
  <define name="macro.anyXML">
    <element xmlns:sch="http://purl.oclc.org/dsdl/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
      <anyName>
        <except>
          <nsName ns="http://www.tei-c.org/ns/1.0"/>
          <name ns="http://www.tei-c.org/ns/Examples">egXML</name>
        </except>
      </anyName>
      <zeroOrMore>
        <attribute>
          <anyName/>
        </attribute>
      </zeroOrMore>
      <zeroOrMore>
        <choice>
          <text/>
          <ref name="macro.anyXML"/>
        </choice>
      </zeroOrMore>
    </element>
  </define>
  <define name="yesorno">
    <choice xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
      <value>0</value>
      <value>1</value>
    </choice>
  </define>
  <define name="anyVML">
    <element xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
      <nsName ns="urn:schemas-microsoft-com:vml"/>
      <zeroOrMore>
        <attribute>
          <anyName/>
          <data type="token"/>
        </attribute>
      </zeroOrMore>
      <zeroOrMore>
        <choice>
          <text/>
          <ref name="anyVML"/>
          <ref name="anyOLE"/>
        </choice>
      </zeroOrMore>
    </element>
  </define>
  <define name="anyOLE">
    <element xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
      <nsName ns="urn:schemas-microsoft-com:office:office"/>
      <zeroOrMore>
        <attribute>
          <anyName/>
          <data type="token"/>
        </attribute>
      </zeroOrMore>
      <zeroOrMore>
        <choice>
          <text/>
          <ref name="anyVML"/>
          <ref name="anyOLE"/>
        </choice>
      </zeroOrMore>
    </element>
  </define>
  <define name="anyOOXML">
    <element xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
      <nsName ns="http://schemas.openxmlformats.org/wordprocessingml/2006/main"/>
      <zeroOrMore>
        <attribute>
          <anyName/>
          <data type="token"/>
        </attribute>
      </zeroOrMore>
      <zeroOrMore>
        <choice>
          <text/>
          <ref name="anyOLE"/>
          <ref name="anyVML"/>
          <ref name="anyOOXML"/>
        </choice>
      </zeroOrMore>
    </element>
  </define>
  <define name="anyOOXMLDrawing">
    <element xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
      <nsName ns="http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing"/>
      <zeroOrMore>
        <attribute>
          <anyName/>
          <data type="token"/>
        </attribute>
      </zeroOrMore>
      <zeroOrMore>
        <choice>
          <text/>
          <ref name="anyOOXMLDrawingPic"/>
          <ref name="anyOOXMLDrawingMain"/>
          <ref name="anyOOXMLDrawing"/>
        </choice>
      </zeroOrMore>
    </element>
  </define>
  <define name="anyOOXMLDrawingMain">
    <element xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
      <nsName ns="http://schemas.openxmlformats.org/drawingml/2006/main"/>
      <zeroOrMore>
        <attribute>
          <anyName/>
          <data type="token"/>
        </attribute>
      </zeroOrMore>
      <zeroOrMore>
        <choice>
          <text/>
          <ref name="anyOOXMLDrawing"/>
          <ref name="anyOOXMLDrawingMain"/>
          <ref name="anyOOXMLDrawingPic"/>
        </choice>
      </zeroOrMore>
    </element>
  </define>
  <define name="anyOOXMLDrawingPic">
    <element xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
      <nsName ns="http://schemas.openxmlformats.org/drawingml/2006/picture"/>
      <zeroOrMore>
        <attribute>
          <anyName/>
          <data type="token"/>
        </attribute>
      </zeroOrMore>
      <zeroOrMore>
        <choice>
          <text/>
          <ref name="anyOOXMLDrawing"/>
          <ref name="anyOOXMLDrawingMain"/>
          <ref name="anyOOXMLDrawingPic"/>
        </choice>
      </zeroOrMore>
    </element>
  </define>
  <define name="tbx_entity.noteText">
    <zeroOrMore xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
      <choice>
        <ref name="macro.xtext"/>
        <ref name="model.segLike"/>
        <ref name="model.ptrLike"/>
        <ref name="mathml.math"/>
        <ref name="tbx_hi"/>
        <ref name="hi"/>
      </choice>
    </zeroOrMore>
  </define>
  <define name="tbx_entity.auxInfo">
    <zeroOrMore xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
      <choice>
        <ref name="tbx_descrip"/>
        <ref name="tbx_descripGrp"/>
        <ref name="tbx_admin"/>
        <ref name="tbx_note"/>
        <ref name="tbx_ref"/>
      </choice>
    </zeroOrMore>
  </define>
  <define name="tbx_entity.basicText">
    <zeroOrMore xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
      <choice>
        <ref name="macro.xtext"/>
        <ref name="model.pPart.transcriptional"/>
        <ref name="model.segLike"/>
        <ref name="mathml.math"/>
        <ref name="hi"/>
      </choice>
    </zeroOrMore>
  </define>
  <define name="att.ascribed.attributes">
    <ref name="att.ascribed.attribute.who"/>
  </define>
  <define name="att.ascribed.attribute.who">
    <optional>
      <attribute name="who">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the person, or group of people, to whom the element content is ascribed.</a:documentation>
        <list>
          <data type="anyURI"/>
          <zeroOrMore>
            <data type="anyURI"/>
          </zeroOrMore>
        </list>
      </attribute>
    </optional>
  </define>
  <define name="att.canonical.attributes">
    <ref name="att.canonical.attribute.key"/>
    <ref name="att.canonical.attribute.ref"/>
  </define>
  <define name="att.canonical.attribute.key">
    <optional>
      <attribute name="key">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">provides an externally-defined means of identifying the entity (or entities) being
        named, using a coded value of some kind.</a:documentation>
        <data type="string"/>
      </attribute>
    </optional>
  </define>
  <define name="att.canonical.attribute.ref">
    <optional>
      <attribute name="ref">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(reference) provides an explicit means of locating a full definition for the entity being named by
        means of one or more URIs.</a:documentation>
        <list>
          <data type="anyURI"/>
          <zeroOrMore>
            <data type="anyURI"/>
          </zeroOrMore>
        </list>
      </attribute>
    </optional>
  </define>
  <define name="att.ranging.attributes">
    <ref name="att.ranging.attribute.atLeast"/>
    <ref name="att.ranging.attribute.atMost"/>
    <ref name="att.ranging.attribute.min"/>
    <ref name="att.ranging.attribute.max"/>
  </define>
  <define name="att.ranging.attribute.atLeast">
    <optional>
      <attribute name="atLeast">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">gives a minimum estimated value for the approximate measurement.</a:documentation>
        <choice>
          <data type="double"/>
          <data type="token">
            <param name="pattern">(\-?[\d]+/\-?[\d]+)</param>
          </data>
          <data type="decimal"/>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="att.ranging.attribute.atMost">
    <optional>
      <attribute name="atMost">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">gives a maximum estimated value for the approximate measurement.</a:documentation>
        <choice>
          <data type="double"/>
          <data type="token">
            <param name="pattern">(\-?[\d]+/\-?[\d]+)</param>
          </data>
          <data type="decimal"/>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="att.ranging.attribute.min">
    <optional>
      <attribute name="min">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">where the measurement summarizes more than one observation
      or a range, supplies the minimum value
        observed.</a:documentation>
        <choice>
          <data type="double"/>
          <data type="token">
            <param name="pattern">(\-?[\d]+/\-?[\d]+)</param>
          </data>
          <data type="decimal"/>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="att.ranging.attribute.max">
    <optional>
      <attribute name="max">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">where the measurement summarizes more than one observation
      or a range, supplies the maximum value
      observed.</a:documentation>
        <choice>
          <data type="double"/>
          <data type="token">
            <param name="pattern">(\-?[\d]+/\-?[\d]+)</param>
          </data>
          <data type="decimal"/>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="att.dimensions.attributes">
    <ref name="att.ranging.attributes"/>
    <ref name="att.dimensions.attribute.unit"/>
    <ref name="att.dimensions.attribute.quantity"/>
    <ref name="att.dimensions.attribute.extent"/>
    <ref name="att.dimensions.attribute.precision"/>
    <ref name="att.dimensions.attribute.scope"/>
  </define>
  <define name="att.dimensions.attribute.unit">
    <optional>
      <attribute name="unit">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">names the unit used for the measurement
Suggested values include: 1] cm(centimetres) ; 2] mm(millimetres) ; 3] in(inches) ; 4] lines; 5] chars(characters) </a:documentation>
        <choice>
          <value>cm</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(centimetres) </a:documentation>
          <value>mm</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(millimetres) </a:documentation>
          <value>in</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(inches) </a:documentation>
          <value>lines</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">lines of text</a:documentation>
          <value>chars</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(characters) characters of text</a:documentation>
          <data type="Name"/>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="att.dimensions.attribute.quantity">
    <optional>
      <attribute name="quantity">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the length in the units specified</a:documentation>
        <choice>
          <data type="double"/>
          <data type="token">
            <param name="pattern">(\-?[\d]+/\-?[\d]+)</param>
          </data>
          <data type="decimal"/>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="att.dimensions.attribute.extent">
    <optional>
      <attribute name="extent">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the size of the object concerned using a project-specific vocabulary combining
        quantity and units in a single string of words. </a:documentation>
        <list>
          <data type="token">
            <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
          </data>
          <zeroOrMore>
            <data type="token">
              <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
            </data>
          </zeroOrMore>
        </list>
      </attribute>
    </optional>
  </define>
  <define name="att.dimensions.attribute.precision">
    <optional>
      <attribute name="precision">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">characterizes the precision of the values specified by the other attributes.</a:documentation>
        <choice>
          <value>high</value>
          <value>medium</value>
          <value>low</value>
          <value>unknown</value>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="att.dimensions.attribute.scope">
    <optional>
      <attribute name="scope">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">where the measurement summarizes more than one observation, specifies the applicability
        of this measurement.
Sample values include: 1] all; 2] most; 3] range</a:documentation>
        <data type="Name"/>
      </attribute>
    </optional>
  </define>
  <define name="att.datable.w3c.attributes">
    <ref name="att.datable.w3c.attribute.period"/>
    <ref name="att.datable.w3c.attribute.when"/>
    <ref name="att.datable.w3c.attribute.notBefore"/>
    <ref name="att.datable.w3c.attribute.notAfter"/>
    <ref name="att.datable.w3c.attribute.from"/>
    <ref name="att.datable.w3c.attribute.to"/>
  </define>
  <define name="att.datable.w3c.attribute.period">
    <optional>
      <attribute name="period">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">supplies a pointer to some location defining a named
      period of time within which the datable item is understood to
      have occurred.</a:documentation>
        <data type="anyURI"/>
      </attribute>
    </optional>
  </define>
  <define name="att.datable.w3c.attribute.when">
    <optional>
      <attribute name="when">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">supplies the value of the date or time in a standard form,
      e.g. yyyy-mm-dd.</a:documentation>
        <choice>
          <data type="date"/>
          <data type="gYear"/>
          <data type="gMonth"/>
          <data type="gDay"/>
          <data type="gYearMonth"/>
          <data type="gMonthDay"/>
          <data type="time"/>
          <data type="dateTime"/>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="att.datable.w3c.attribute.notBefore">
    <optional>
      <attribute name="notBefore">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the earliest possible date for the event in
	  standard form, e.g. yyyy-mm-dd.</a:documentation>
        <choice>
          <data type="date"/>
          <data type="gYear"/>
          <data type="gMonth"/>
          <data type="gDay"/>
          <data type="gYearMonth"/>
          <data type="gMonthDay"/>
          <data type="time"/>
          <data type="dateTime"/>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="att.datable.w3c.attribute.notAfter">
    <optional>
      <attribute name="notAfter">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the latest possible date for the event in
	  standard form, e.g. yyyy-mm-dd.</a:documentation>
        <choice>
          <data type="date"/>
          <data type="gYear"/>
          <data type="gMonth"/>
          <data type="gDay"/>
          <data type="gYearMonth"/>
          <data type="gMonthDay"/>
          <data type="time"/>
          <data type="dateTime"/>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="att.datable.w3c.attribute.from">
    <optional>
      <attribute name="from">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the starting point of the period in standard form, e.g. yyyy-mm-dd.</a:documentation>
        <choice>
          <data type="date"/>
          <data type="gYear"/>
          <data type="gMonth"/>
          <data type="gDay"/>
          <data type="gYearMonth"/>
          <data type="gMonthDay"/>
          <data type="time"/>
          <data type="dateTime"/>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="att.datable.w3c.attribute.to">
    <optional>
      <attribute name="to">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the ending point of the period in standard
	  form, e.g. yyyy-mm-dd.</a:documentation>
        <choice>
          <data type="date"/>
          <data type="gYear"/>
          <data type="gMonth"/>
          <data type="gDay"/>
          <data type="gYearMonth"/>
          <data type="gMonthDay"/>
          <data type="time"/>
          <data type="dateTime"/>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="att.datable.attributes">
    <ref name="att.datable.w3c.attributes"/>
    <ref name="att.datable.iso.attributes"/>
  </define>
  <define name="att.declarable.attributes">
    <ref name="att.declarable.attribute.default"/>
  </define>
  <define name="att.declarable.attribute.default">
    <optional>
      <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="default" a:defaultValue="false">
        <a:documentation>indicates whether or not this element is selected by default when
its parent is selected.</a:documentation>
        <choice>
          <value>true</value>
          <a:documentation>This element is selected if its parent is selected</a:documentation>
          <value>false</value>
          <a:documentation>This element can only be selected explicitly, unless it is the
only one of its kind, in which case it is selected if its parent is selected.</a:documentation>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="att.declaring.attributes">
    <ref name="att.declaring.attribute.decls"/>
  </define>
  <define name="att.declaring.attribute.decls">
    <optional>
      <attribute name="decls">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">identifies one or more declarable elements within the
header, which are understood to apply to the element bearing this
attribute and its content.</a:documentation>
        <list>
          <data type="anyURI"/>
          <zeroOrMore>
            <data type="anyURI"/>
          </zeroOrMore>
        </list>
      </attribute>
    </optional>
  </define>
  <define name="att.divLike.attributes">
    <ref name="att.divLike.attribute.org"/>
    <ref name="att.divLike.attribute.sample"/>
    <ref name="att.divLike.attribute.part"/>
  </define>
  <define name="att.divLike.attribute.org">
    <optional>
      <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="org" a:defaultValue="uniform">
        <a:documentation>(organization) specifies how the content of the division is organized.</a:documentation>
        <choice>
          <value>composite</value>
          <a:documentation>composite content: i.e. no claim is made about the
		  sequence in which the immediate contents of this division
		  are to be processed, or their inter-relationships.</a:documentation>
          <value>uniform</value>
          <a:documentation>uniform content: i.e. the immediate contents of this
		  element are regarded as forming a logical unit, to be
		  processed in sequence.</a:documentation>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="att.divLike.attribute.sample">
    <optional>
      <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="sample" a:defaultValue="complete">
        <a:documentation>indicates whether this division is a sample of the
		original source and if so, from which part.</a:documentation>
        <choice>
          <value>initial</value>
          <a:documentation>division lacks material present at end in source.</a:documentation>
          <value>medial</value>
          <a:documentation>division lacks material at start and end.</a:documentation>
          <value>final</value>
          <a:documentation>division lacks material at start.</a:documentation>
          <value>unknown</value>
          <a:documentation>position of sampled material within original unknown.</a:documentation>
          <value>complete</value>
          <a:documentation>division is not a sample.</a:documentation>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="att.divLike.attribute.part">
    <optional>
      <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="part" a:defaultValue="N">
        <a:documentation>specifies whether or not the division is fragmented by
		some other structural element, for example a speech which is
		divided between two or more verse stanzas.</a:documentation>
        <choice>
          <value>Y</value>
          <a:documentation>(yes) the division is incomplete in some respect</a:documentation>
          <value>N</value>
          <a:documentation>(no) either the division is complete, or no claim is made as to its completeness.</a:documentation>
          <value>I</value>
          <a:documentation>(initial) the initial part of an incomplete division</a:documentation>
          <value>M</value>
          <a:documentation>(medial) a medial part of an incomplete division</a:documentation>
          <value>F</value>
          <a:documentation>(final) the final part of an incomplete division</a:documentation>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="att.docStatus.attributes">
    <ref name="att.docStatus.attribute.status"/>
  </define>
  <define name="att.docStatus.attribute.status">
    <optional>
      <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="status" a:defaultValue="draft">
        <a:documentation>describes the status of a document either currently or, when
associated with a dated element, at the time indicated.
Sample values include: 1] candidate; 2] recommendation; 3] submitted; 4] approved; 5] deprecated; 6] proposed; 7] cleared; 8] embargoed; 9] draft; 10] frozen; 11] expired; 12] unfinished; 13] draft; 14] galley; 15] published; 16] withdrawn; 17] expired </a:documentation>
        <data type="Name"/>
      </attribute>
    </optional>
  </define>
  <define name="att.responsibility.attributes">
    <ref name="att.responsibility.attribute.cert"/>
    <ref name="att.responsibility.attribute.resp"/>
  </define>
  <define name="att.responsibility.attribute.cert">
    <optional>
      <attribute name="cert">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(certainty) signifies the degree of certainty associated with the intervention or interpretation.</a:documentation>
        <choice>
          <value>high</value>
          <value>medium</value>
          <value>low</value>
          <value>unknown</value>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="att.responsibility.attribute.resp">
    <optional>
      <attribute name="resp">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(responsible party) indicates the agency responsible for the intervention or interpretation, for example an
        editor or transcriber.</a:documentation>
        <list>
          <data type="anyURI"/>
          <zeroOrMore>
            <data type="anyURI"/>
          </zeroOrMore>
        </list>
      </attribute>
    </optional>
  </define>
  <define name="att.editLike.attributes">
    <ref name="att.dimensions.attributes"/>
    <ref name="att.responsibility.attributes"/>
    <ref name="att.editLike.attribute.evidence"/>
    <ref name="att.editLike.attribute.source"/>
  </define>
  <define name="att.editLike.attribute.evidence">
    <optional>
      <attribute name="evidence">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the nature of the evidence supporting the reliability or accuracy of the
        intervention or interpretation.
Suggested values include: 1] internal; 2] external; 3] conjecture</a:documentation>
        <choice>
          <value>internal</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">there is internal evidence to support the intervention.</a:documentation>
          <value>external</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">there is external evidence to support the intervention.</a:documentation>
          <value>conjecture</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">the intervention or interpretation has been made by the editor, cataloguer, or
            scholar on the basis of their expertise.</a:documentation>
          <data type="Name"/>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="att.editLike.attribute.source">
    <optional>
      <attribute name="source">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a list of one or more pointers indicating the sources which support the given
        reading.</a:documentation>
        <list>
          <data type="anyURI"/>
          <zeroOrMore>
            <data type="anyURI"/>
          </zeroOrMore>
        </list>
      </attribute>
    </optional>
  </define>
  <define name="att.global.attributes">
    <ref name="att.global.analytic.attributes"/>
    <ref name="att.global.facs.attributes"/>
    <ref name="att.global.attribute.style"/>
    <ref name="att.global.attribute.meta"/>
    <ref name="att.global.attribute.status"/>
    <ref name="att.global.attribute.provision"/>
    <ref name="att.global.attribute.spaceBefore"/>
    <ref name="att.global.attribute.spaceAfter"/>
    <ref name="att.global.attribute.align"/>
    <ref name="att.global.attribute.replaceable"/>
    <ref name="att.global.attribute.xmlid"/>
    <ref name="att.global.attribute.n"/>
    <ref name="att.global.attribute.xmllang"/>
    <ref name="att.global.attribute.rend"/>
    <ref name="att.global.attribute.xmlbase"/>
    <ref name="att.global.attribute.xmlspace"/>
  </define>
  <define name="att.global.attribute.style">
    <optional>
      <attribute name="style" ns="http://www.iso.org/ns/1.0">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <text/>
      </attribute>
    </optional>
  </define>
  <define name="att.global.attribute.meta">
    <optional>
      <attribute name="meta" ns="http://www.iso.org/ns/1.0">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">label a metadata element</a:documentation>
        <choice>
          <value>Date completed</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Date completed</a:documentation>
          <value>Dialogue Language</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Dialogue Language</a:documentation>
          <value>Document number</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Document number</a:documentation>
          <value>Language</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Language</a:documentation>
          <value>Solution ID</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Solution ID</a:documentation>
          <value>committeeReference</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Committee</a:documentation>
          <value>complementaryTitle</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Complementary Title</a:documentation>
          <value>complementaryTitle_fr</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Complementary Title in French</a:documentation>
          <value>copyright</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Copyright</a:documentation>
          <value>docBaseName</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">document base name</a:documentation>
          <value>docDate</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Document date</a:documentation>
          <value>docEdition</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Document edition</a:documentation>
          <value>docLanguage</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Document language</a:documentation>
          <value>docLanguage</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">document language</a:documentation>
          <value>docNumber</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Document number</a:documentation>
          <value>docPartNumber</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Document Part number</a:documentation>
          <value>docReference</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">document reference</a:documentation>
          <value>docStage</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Document stage</a:documentation>
          <value>docSubtype</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Document subtype</a:documentation>
          <value>docType</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Document Type</a:documentation>
          <value>docTypeFull</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Document Type in full</a:documentation>
          <value>draftNumber</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Draft number</a:documentation>
          <value>fullTitle</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Full title</a:documentation>
          <value>fullTitle_fr</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Full title in French</a:documentation>
          <value>fw_parts</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Parts description in Foreword</a:documentation>
          <value>fw_patents</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Patent description in Foreword</a:documentation>
          <value>fw_revision</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Revision description in Foreword</a:documentation>
          <value>introductoryTitle</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Introductory Title</a:documentation>
          <value>introductoryTitle_fr</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Introductory Title in French</a:documentation>
          <value>mainTitle</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Main title</a:documentation>
          <value>mainTitle_fr</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Main title in French</a:documentation>
          <value>organization</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Organization</a:documentation>
          <value>partNumber</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Part Number</a:documentation>
          <value>projectId</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Project ID</a:documentation>
          <value>scNumber</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Subcommittee</a:documentation>
          <value>secretariat</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Secretariat</a:documentation>
          <value>serialNumber</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Serial number</a:documentation>
          <value>stage</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Producion stage</a:documentation>
          <value>supplementTitle</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Supplementary title</a:documentation>
          <value>supplementTitle_fr</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Supplementisoary title in French</a:documentation>
          <value>tcNumber</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Technical Committee</a:documentation>
          <value>wgNumber</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Working Group number</a:documentation>
          <value>referenceNumber</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="att.global.attribute.status">
    <optional>
      <attribute name="status" ns="http://www.iso.org/ns/1.0">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <choice>
          <value>normative</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Normative prose</a:documentation>
          <value>informative</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Informative or illustrative prose</a:documentation>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="att.global.attribute.provision">
    <optional>
      <attribute name="provision" ns="http://www.iso.org/ns/1.0">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <choice>
          <value>requirement</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Requirement</a:documentation>
          <value>recommendation</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Recommendation</a:documentation>
          <value>statement</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Statement</a:documentation>
          <value>permission</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Permission</a:documentation>
          <value>capability</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Capability</a:documentation>
          <value>possibility</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Possibility</a:documentation>
          <value>possibilityandcapability</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Possibility
		  and capability</a:documentation>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="att.global.attribute.spaceBefore">
    <optional>
      <attribute name="spaceBefore" ns="http://www.iso.org/ns/1.0">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <data type="token"/>
      </attribute>
    </optional>
  </define>
  <define name="att.global.attribute.spaceAfter">
    <optional>
      <attribute name="spaceAfter" ns="http://www.iso.org/ns/1.0">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <data type="token"/>
      </attribute>
    </optional>
  </define>
  <define name="att.global.attribute.align">
    <optional>
      <attribute name="align" ns="http://www.iso.org/ns/1.0">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <data type="token"/>
      </attribute>
    </optional>
  </define>
  <define name="att.global.attribute.replaceable">
    <optional>
      <attribute name="replaceable" ns="http://www.iso.org/ns/1.0">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <data type="token"/>
      </attribute>
    </optional>
  </define>
  <define name="att.global.attribute.xmlid">
    <optional>
      <attribute name="xml:id">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(identifier) provides a unique identifier for the element bearing the attribute.</a:documentation>
        <data type="ID"/>
      </attribute>
    </optional>
  </define>
  <define name="att.global.attribute.n">
    <optional>
      <attribute name="n">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(number) gives a number (or other label) for an element, which is not necessarily unique within
        the document.</a:documentation>
        <list>
          <data type="token">
            <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
          </data>
          <zeroOrMore>
            <data type="token">
              <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
            </data>
          </zeroOrMore>
        </list>
      </attribute>
    </optional>
  </define>
  <define name="att.global.attribute.xmllang">
    <optional>
      <attribute name="xml:lang">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(language) indicates the language of the element content using a tag generated
        according to BCP 47
                           </a:documentation>
        <data type="language"/>
      </attribute>
    </optional>
  </define>
  <define name="att.global.attribute.rend">
    <optional>
      <attribute name="rend">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(rendition) indicates how the element in question was rendered or presented in the source text.</a:documentation>
        <list>
          <data type="token">
            <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
          </data>
          <zeroOrMore>
            <data type="token">
              <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
            </data>
          </zeroOrMore>
        </list>
      </attribute>
    </optional>
  </define>
  <define name="att.global.attribute.xmlbase">
    <optional>
      <attribute name="xml:base">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">provides a base URI reference with which applications can resolve relative URI
        references into absolute URI references.</a:documentation>
        <data type="anyURI"/>
      </attribute>
    </optional>
  </define>
  <define name="att.global.attribute.xmlspace">
    <optional>
      <attribute name="xml:space">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">signals an intention about how white space should be 
      managed by  applications. </a:documentation>
        <choice>
          <value>default</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">the processor should treat white space according to the
	default XML white space handling rules</a:documentation>
          <value>preserve</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">the processor should preserve unchanged any and all
	white space in the source</a:documentation>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="att.internetMedia.attributes">
    <ref name="att.internetMedia.attribute.mimeType"/>
  </define>
  <define name="att.internetMedia.attribute.mimeType">
    <optional>
      <attribute name="mimeType">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(MIME media type) specifies the applicable multimedia internet mail extension (MIME) media type</a:documentation>
        <data type="token">
          <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
        </data>
      </attribute>
    </optional>
  </define>
  <define name="att.naming.attributes">
    <ref name="att.canonical.attributes"/>
    <ref name="att.naming.attribute.role"/>
    <ref name="att.naming.attribute.nymRef"/>
  </define>
  <define name="att.naming.attribute.role">
    <optional>
      <attribute name="role">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">may be used to specify further information about the entity referenced by
this name, for example the occupation of a person, or the status of a place. </a:documentation>
        <data type="Name"/>
      </attribute>
    </optional>
  </define>
  <define name="att.naming.attribute.nymRef">
    <optional>
      <attribute name="nymRef">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(reference to the canonical name) provides a means of locating the canonical form
      (nym) of the names associated with the object
       named by
      the element bearing it.</a:documentation>
        <list>
          <data type="anyURI"/>
          <zeroOrMore>
            <data type="anyURI"/>
          </zeroOrMore>
        </list>
      </attribute>
    </optional>
  </define>
  <define name="att.placement.attributes">
    <ref name="att.placement.attribute.place"/>
  </define>
  <define name="att.placement.attribute.place">
    <optional>
      <attribute name="place">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">
Suggested values include: 1] below; 2] bottom; 3] margin; 4] top; 5] opposite; 6] overleaf; 7] above; 8] end; 9] inline; 10] inspace</a:documentation>
        <list>
          <choice>
            <value>below</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">below the line</a:documentation>
            <value>bottom</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">at the foot of the page</a:documentation>
            <value>margin</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">in the margin (left, right, or both)</a:documentation>
            <value>top</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">at the top of the page</a:documentation>
            <value>opposite</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">on the opposite, i.e. facing, page</a:documentation>
            <value>overleaf</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">on the other side of the leaf</a:documentation>
            <value>above</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">above the line</a:documentation>
            <value>end</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">at the end of e.g. chapter or volume.</a:documentation>
            <value>inline</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">within the body of the text.</a:documentation>
            <value>inspace</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> in a predefined space, for example left by an earlier scribe.</a:documentation>
            <data type="Name"/>
          </choice>
          <zeroOrMore>
            <choice>
              <value>below</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">below the line</a:documentation>
              <value>bottom</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">at the foot of the page</a:documentation>
              <value>margin</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">in the margin (left, right, or both)</a:documentation>
              <value>top</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">at the top of the page</a:documentation>
              <value>opposite</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">on the opposite, i.e. facing, page</a:documentation>
              <value>overleaf</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">on the other side of the leaf</a:documentation>
              <value>above</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">above the line</a:documentation>
              <value>end</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">at the end of e.g. chapter or volume.</a:documentation>
              <value>inline</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">within the body of the text.</a:documentation>
              <value>inspace</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> in a predefined space, for example left by an earlier scribe.</a:documentation>
              <data type="Name"/>
            </choice>
          </zeroOrMore>
        </list>
      </attribute>
    </optional>
  </define>
  <define name="att.typed.attributes">
    <ref name="att.typed.attribute.type"/>
    <ref name="att.typed.attribute.subtype"/>
  </define>
  <define name="att.typed.attribute.type">
    <optional>
      <attribute name="type">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">characterizes the element in some sense, using any convenient
 classification scheme or typology.</a:documentation>
        <data type="Name"/>
      </attribute>
    </optional>
  </define>
  <define name="att.typed.attribute.subtype">
    <optional>
      <attribute name="subtype">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">provides a sub-categorization of the element, if needed</a:documentation>
        <data type="Name"/>
      </attribute>
    </optional>
  </define>
  <define name="att.pointing.attributes">
    <ref name="att.pointing.attribute.target"/>
  </define>
  <define name="att.pointing.attribute.target">
    <optional>
      <attribute name="target">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the destination of the reference by supplying one or more URI References</a:documentation>
        <list>
          <data type="anyURI"/>
          <zeroOrMore>
            <data type="anyURI"/>
          </zeroOrMore>
        </list>
      </attribute>
    </optional>
  </define>
  <define name="att.segLike.attributes">
    <ref name="att.segLike.attribute.function"/>
    <ref name="att.segLike.attribute.part"/>
  </define>
  <define name="att.segLike.attribute.function">
    <optional>
      <attribute name="function">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">characterizes the function of the segment.</a:documentation>
        <data type="Name"/>
      </attribute>
    </optional>
  </define>
  <define name="att.segLike.attribute.part">
    <optional>
      <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="part" a:defaultValue="N">
        <a:documentation>specifies whether or not the segment is fragmented by some other
structural element, for example a clause which is divided between two
or more sentences.</a:documentation>
        <choice>
          <value>Y</value>
          <a:documentation>(yes) the segment is incomplete in some respect</a:documentation>
          <value>N</value>
          <a:documentation>(no) either the segment is complete, or no claim is made as to
its completeness</a:documentation>
          <value>I</value>
          <a:documentation>(initial) the initial part of an incomplete segment</a:documentation>
          <value>M</value>
          <a:documentation>(medial) a medial part of an incomplete segment</a:documentation>
          <value>F</value>
          <a:documentation>(final) the final part of an incomplete segment</a:documentation>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="att.sourced.attributes">
    <ref name="att.sourced.attribute.ed"/>
  </define>
  <define name="att.sourced.attribute.ed">
    <optional>
      <attribute name="ed">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(edition) supplies an arbitrary identifier for the source edition in which
      the associated feature (for example, a  page, column, or line
      break) occurs at this point in the text.</a:documentation>
        <list>
          <data type="anyURI"/>
          <zeroOrMore>
            <data type="anyURI"/>
          </zeroOrMore>
        </list>
      </attribute>
    </optional>
  </define>
  <define name="att.spanning.attributes">
    <ref name="att.spanning.attribute.spanTo"/>
  </define>
  <define name="att.spanning.attribute.spanTo">
    <optional>
      <attribute name="spanTo">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the end of a span initiated by the element
	bearing this attribute.</a:documentation>
        <data type="anyURI"/>
      </attribute>
    </optional>
  </define>
  <define name="att.transcriptional.attributes">
    <ref name="att.editLike.attributes"/>
    <ref name="att.transcriptional.attribute.hand"/>
    <ref name="att.transcriptional.attribute.status"/>
    <ref name="att.transcriptional.attribute.seq"/>
  </define>
  <define name="att.transcriptional.attribute.hand">
    <optional>
      <attribute name="hand">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">signifies the hand of the agent which made the intervention.</a:documentation>
        <data type="anyURI"/>
      </attribute>
    </optional>
  </define>
  <define name="att.transcriptional.attribute.status">
    <optional>
      <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="status" a:defaultValue="unremarkable">
        <a:documentation>indicates the effect of the intervention, for example in
      the case of a deletion, strikeouts
      which include too much or too little text, or in the case of an
      addition, an insertion which duplicates some of the text
      already present.
Sample values include: 1] duplicate; 2] duplicate-partial; 3] excessStart; 4] excessEnd; 5] shortStart; 6] shortEnd; 7] partial; 8] unremarkable</a:documentation>
        <data type="Name"/>
      </attribute>
    </optional>
  </define>
  <define name="att.transcriptional.attribute.seq">
    <optional>
      <attribute name="seq">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(sequence) assigns a sequence number related to the order in which
      the encoded features carrying this attribute are believed to have occurred.</a:documentation>
        <data type="nonNegativeInteger"/>
      </attribute>
    </optional>
  </define>
  <define name="att.translatable.attributes">
    <ref name="att.translatable.attribute.version"/>
  </define>
  <define name="att.translatable.attribute.version">
    <optional>
      <attribute name="version">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the version name or number of the source from
	which the translated version was derived</a:documentation>
        <data type="token">
          <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
        </data>
      </attribute>
    </optional>
  </define>
  <define name="model.nameLike.agent">
    <choice>
      <ref name="name"/>
      <ref name="orgName"/>
      <ref name="persName"/>
    </choice>
  </define>
  <define name="model.nameLike.agent_alternation">
    <choice>
      <ref name="name"/>
      <ref name="orgName"/>
      <ref name="persName"/>
    </choice>
  </define>
  <define name="model.nameLike.agent_sequence">
    <ref name="name"/>
    <ref name="orgName"/>
    <ref name="persName"/>
  </define>
  <define name="model.nameLike.agent_sequenceOptional">
    <optional>
      <ref name="name"/>
    </optional>
    <optional>
      <ref name="orgName"/>
    </optional>
    <optional>
      <ref name="persName"/>
    </optional>
  </define>
  <define name="model.nameLike.agent_sequenceOptionalRepeatable">
    <zeroOrMore>
      <ref name="name"/>
    </zeroOrMore>
    <zeroOrMore>
      <ref name="orgName"/>
    </zeroOrMore>
    <zeroOrMore>
      <ref name="persName"/>
    </zeroOrMore>
  </define>
  <define name="model.nameLike.agent_sequenceRepeatable">
    <oneOrMore>
      <ref name="name"/>
    </oneOrMore>
    <oneOrMore>
      <ref name="orgName"/>
    </oneOrMore>
    <oneOrMore>
      <ref name="persName"/>
    </oneOrMore>
  </define>
  <define name="model.segLike">
    <choice>
      <ref name="c"/>
      <ref name="seg"/>
    </choice>
  </define>
  <define name="model.segLike_alternation">
    <choice>
      <ref name="c"/>
      <ref name="seg"/>
    </choice>
  </define>
  <define name="model.segLike_sequence">
    <ref name="c"/>
    <ref name="seg"/>
  </define>
  <define name="model.segLike_sequenceOptional">
    <optional>
      <ref name="c"/>
    </optional>
    <optional>
      <ref name="seg"/>
    </optional>
  </define>
  <define name="model.segLike_sequenceOptionalRepeatable">
    <zeroOrMore>
      <ref name="c"/>
    </zeroOrMore>
    <zeroOrMore>
      <ref name="seg"/>
    </zeroOrMore>
  </define>
  <define name="model.segLike_sequenceRepeatable">
    <oneOrMore>
      <ref name="c"/>
    </oneOrMore>
    <oneOrMore>
      <ref name="seg"/>
    </oneOrMore>
  </define>
  <define name="model.hiLike">
    <choice>
      <ref name="hi"/>
    </choice>
  </define>
  <define name="model.hiLike_alternation">
    <choice>
      <ref name="hi"/>
    </choice>
  </define>
  <define name="model.hiLike_sequence">
    <ref name="hi"/>
  </define>
  <define name="model.hiLike_sequenceOptional">
    <optional>
      <ref name="hi"/>
    </optional>
  </define>
  <define name="model.hiLike_sequenceOptionalRepeatable">
    <zeroOrMore>
      <ref name="hi"/>
    </zeroOrMore>
  </define>
  <define name="model.hiLike_sequenceRepeatable">
    <oneOrMore>
      <ref name="hi"/>
    </oneOrMore>
  </define>
  <define name="model.emphLike">
    <choice>
      <ref name="foreign"/>
      <ref name="emph"/>
      <ref name="mentioned"/>
      <ref name="gloss"/>
      <ref name="term"/>
      <ref name="title"/>
      <ref name="code"/>
    </choice>
  </define>
  <define name="model.emphLike_alternation">
    <choice>
      <ref name="foreign"/>
      <ref name="emph"/>
      <ref name="mentioned"/>
      <ref name="gloss"/>
      <ref name="term"/>
      <ref name="title"/>
      <ref name="code"/>
    </choice>
  </define>
  <define name="model.emphLike_sequence">
    <ref name="foreign"/>
    <ref name="emph"/>
    <ref name="mentioned"/>
    <ref name="gloss"/>
    <ref name="term"/>
    <ref name="title"/>
    <ref name="code"/>
  </define>
  <define name="model.emphLike_sequenceOptional">
    <optional>
      <ref name="foreign"/>
    </optional>
    <optional>
      <ref name="emph"/>
    </optional>
    <optional>
      <ref name="mentioned"/>
    </optional>
    <optional>
      <ref name="gloss"/>
    </optional>
    <optional>
      <ref name="term"/>
    </optional>
    <optional>
      <ref name="title"/>
    </optional>
    <optional>
      <ref name="code"/>
    </optional>
  </define>
  <define name="model.emphLike_sequenceOptionalRepeatable">
    <zeroOrMore>
      <ref name="foreign"/>
    </zeroOrMore>
    <zeroOrMore>
      <ref name="emph"/>
    </zeroOrMore>
    <zeroOrMore>
      <ref name="mentioned"/>
    </zeroOrMore>
    <zeroOrMore>
      <ref name="gloss"/>
    </zeroOrMore>
    <zeroOrMore>
      <ref name="term"/>
    </zeroOrMore>
    <zeroOrMore>
      <ref name="title"/>
    </zeroOrMore>
    <zeroOrMore>
      <ref name="code"/>
    </zeroOrMore>
  </define>
  <define name="model.emphLike_sequenceRepeatable">
    <oneOrMore>
      <ref name="foreign"/>
    </oneOrMore>
    <oneOrMore>
      <ref name="emph"/>
    </oneOrMore>
    <oneOrMore>
      <ref name="mentioned"/>
    </oneOrMore>
    <oneOrMore>
      <ref name="gloss"/>
    </oneOrMore>
    <oneOrMore>
      <ref name="term"/>
    </oneOrMore>
    <oneOrMore>
      <ref name="title"/>
    </oneOrMore>
    <oneOrMore>
      <ref name="code"/>
    </oneOrMore>
  </define>
  <define name="model.highlighted">
    <choice>
      <ref name="model.hiLike"/>
      <ref name="model.emphLike"/>
    </choice>
  </define>
  <define name="model.highlighted_alternation">
    <choice>
      <ref name="model.hiLike_alternation"/>
      <ref name="model.emphLike_alternation"/>
    </choice>
  </define>
  <define name="model.highlighted_sequence">
    <ref name="model.hiLike_sequence"/>
    <ref name="model.emphLike_sequence"/>
  </define>
  <define name="model.highlighted_sequenceOptional">
    <optional>
      <ref name="model.hiLike_sequenceOptional"/>
    </optional>
    <optional>
      <ref name="model.emphLike_sequenceOptional"/>
    </optional>
  </define>
  <define name="model.highlighted_sequenceOptionalRepeatable">
    <zeroOrMore>
      <ref name="model.hiLike_sequenceOptionalRepeatable"/>
    </zeroOrMore>
    <zeroOrMore>
      <ref name="model.emphLike_sequenceOptionalRepeatable"/>
    </zeroOrMore>
  </define>
  <define name="model.highlighted_sequenceRepeatable">
    <oneOrMore>
      <ref name="model.hiLike_sequenceRepeatable"/>
    </oneOrMore>
    <oneOrMore>
      <ref name="model.emphLike_sequenceRepeatable"/>
    </oneOrMore>
  </define>
  <define name="model.dateLike">
    <choice>
      <ref name="date"/>
      <ref name="time"/>
    </choice>
  </define>
  <define name="model.dateLike_alternation">
    <choice>
      <ref name="date"/>
      <ref name="time"/>
    </choice>
  </define>
  <define name="model.dateLike_sequence">
    <ref name="date"/>
    <ref name="time"/>
  </define>
  <define name="model.dateLike_sequenceOptional">
    <optional>
      <ref name="date"/>
    </optional>
    <optional>
      <ref name="time"/>
    </optional>
  </define>
  <define name="model.dateLike_sequenceOptionalRepeatable">
    <zeroOrMore>
      <ref name="date"/>
    </zeroOrMore>
    <zeroOrMore>
      <ref name="time"/>
    </zeroOrMore>
  </define>
  <define name="model.dateLike_sequenceRepeatable">
    <oneOrMore>
      <ref name="date"/>
    </oneOrMore>
    <oneOrMore>
      <ref name="time"/>
    </oneOrMore>
  </define>
  <define name="model.measureLike">
    <choice>
      <ref name="num"/>
    </choice>
  </define>
  <define name="model.measureLike_alternation">
    <choice>
      <ref name="num"/>
    </choice>
  </define>
  <define name="model.measureLike_sequence">
    <ref name="num"/>
  </define>
  <define name="model.measureLike_sequenceOptional">
    <optional>
      <ref name="num"/>
    </optional>
  </define>
  <define name="model.measureLike_sequenceOptionalRepeatable">
    <zeroOrMore>
      <ref name="num"/>
    </zeroOrMore>
  </define>
  <define name="model.measureLike_sequenceRepeatable">
    <oneOrMore>
      <ref name="num"/>
    </oneOrMore>
  </define>
  <define name="model.egLike">
    <choice>
      <ref name="eg"/>
    </choice>
  </define>
  <define name="model.egLike_alternation">
    <choice>
      <ref name="eg"/>
    </choice>
  </define>
  <define name="model.egLike_sequence">
    <ref name="eg"/>
  </define>
  <define name="model.egLike_sequenceOptional">
    <optional>
      <ref name="eg"/>
    </optional>
  </define>
  <define name="model.egLike_sequenceOptionalRepeatable">
    <zeroOrMore>
      <ref name="eg"/>
    </zeroOrMore>
  </define>
  <define name="model.egLike_sequenceRepeatable">
    <oneOrMore>
      <ref name="eg"/>
    </oneOrMore>
  </define>
  <define name="model.graphicLike">
    <choice>
      <ref name="graphic"/>
      <ref name="formula"/>
    </choice>
  </define>
  <define name="model.graphicLike_alternation">
    <choice>
      <ref name="graphic"/>
      <ref name="formula"/>
    </choice>
  </define>
  <define name="model.graphicLike_sequence">
    <ref name="graphic"/>
    <ref name="formula"/>
  </define>
  <define name="model.graphicLike_sequenceOptional">
    <optional>
      <ref name="graphic"/>
    </optional>
    <optional>
      <ref name="formula"/>
    </optional>
  </define>
  <define name="model.graphicLike_sequenceOptionalRepeatable">
    <zeroOrMore>
      <ref name="graphic"/>
    </zeroOrMore>
    <zeroOrMore>
      <ref name="formula"/>
    </zeroOrMore>
  </define>
  <define name="model.graphicLike_sequenceRepeatable">
    <oneOrMore>
      <ref name="graphic"/>
    </oneOrMore>
    <oneOrMore>
      <ref name="formula"/>
    </oneOrMore>
  </define>
  <define name="model.pPart.editorial">
    <choice>
      <ref name="abbr"/>
    </choice>
  </define>
  <define name="model.pPart.editorial_alternation">
    <choice>
      <ref name="abbr"/>
    </choice>
  </define>
  <define name="model.pPart.editorial_sequence">
    <ref name="abbr"/>
  </define>
  <define name="model.pPart.editorial_sequenceOptional">
    <optional>
      <ref name="abbr"/>
    </optional>
  </define>
  <define name="model.pPart.editorial_sequenceOptionalRepeatable">
    <zeroOrMore>
      <ref name="abbr"/>
    </zeroOrMore>
  </define>
  <define name="model.pPart.editorial_sequenceRepeatable">
    <oneOrMore>
      <ref name="abbr"/>
    </oneOrMore>
  </define>
  <define name="model.pPart.transcriptional">
    <choice>
      <ref name="add"/>
      <ref name="del"/>
    </choice>
  </define>
  <define name="model.pPart.transcriptional_alternation">
    <choice>
      <ref name="add"/>
      <ref name="del"/>
    </choice>
  </define>
  <define name="model.pPart.transcriptional_sequence">
    <ref name="add"/>
    <ref name="del"/>
  </define>
  <define name="model.pPart.transcriptional_sequenceOptional">
    <optional>
      <ref name="add"/>
    </optional>
    <optional>
      <ref name="del"/>
    </optional>
  </define>
  <define name="model.pPart.transcriptional_sequenceOptionalRepeatable">
    <zeroOrMore>
      <ref name="add"/>
    </zeroOrMore>
    <zeroOrMore>
      <ref name="del"/>
    </zeroOrMore>
  </define>
  <define name="model.pPart.transcriptional_sequenceRepeatable">
    <oneOrMore>
      <ref name="add"/>
    </oneOrMore>
    <oneOrMore>
      <ref name="del"/>
    </oneOrMore>
  </define>
  <define name="model.pPart.edit">
    <choice>
      <ref name="model.pPart.editorial"/>
      <ref name="model.pPart.transcriptional"/>
    </choice>
  </define>
  <define name="model.pPart.edit_alternation">
    <choice>
      <ref name="model.pPart.editorial_alternation"/>
      <ref name="model.pPart.transcriptional_alternation"/>
    </choice>
  </define>
  <define name="model.pPart.edit_sequence">
    <ref name="model.pPart.editorial_sequence"/>
    <ref name="model.pPart.transcriptional_sequence"/>
  </define>
  <define name="model.pPart.edit_sequenceOptional">
    <optional>
      <ref name="model.pPart.editorial_sequenceOptional"/>
    </optional>
    <optional>
      <ref name="model.pPart.transcriptional_sequenceOptional"/>
    </optional>
  </define>
  <define name="model.pPart.edit_sequenceOptionalRepeatable">
    <zeroOrMore>
      <ref name="model.pPart.editorial_sequenceOptionalRepeatable"/>
    </zeroOrMore>
    <zeroOrMore>
      <ref name="model.pPart.transcriptional_sequenceOptionalRepeatable"/>
    </zeroOrMore>
  </define>
  <define name="model.pPart.edit_sequenceRepeatable">
    <oneOrMore>
      <ref name="model.pPart.editorial_sequenceRepeatable"/>
    </oneOrMore>
    <oneOrMore>
      <ref name="model.pPart.transcriptional_sequenceRepeatable"/>
    </oneOrMore>
  </define>
  <define name="model.ptrLike">
    <choice>
      <ref name="ptr"/>
      <ref name="ref"/>
    </choice>
  </define>
  <define name="model.ptrLike_alternation">
    <choice>
      <ref name="ptr"/>
      <ref name="ref"/>
    </choice>
  </define>
  <define name="model.ptrLike_sequence">
    <ref name="ptr"/>
    <ref name="ref"/>
  </define>
  <define name="model.ptrLike_sequenceOptional">
    <optional>
      <ref name="ptr"/>
    </optional>
    <optional>
      <ref name="ref"/>
    </optional>
  </define>
  <define name="model.ptrLike_sequenceOptionalRepeatable">
    <zeroOrMore>
      <ref name="ptr"/>
    </zeroOrMore>
    <zeroOrMore>
      <ref name="ref"/>
    </zeroOrMore>
  </define>
  <define name="model.ptrLike_sequenceRepeatable">
    <oneOrMore>
      <ref name="ptr"/>
    </oneOrMore>
    <oneOrMore>
      <ref name="ref"/>
    </oneOrMore>
  </define>
  <define name="model.milestoneLike">
    <choice>
      <ref name="milestone"/>
      <ref name="pb"/>
      <ref name="lb"/>
      <ref name="fw"/>
      <ref name="anchor"/>
      <ref name="wordObject"/>
    </choice>
  </define>
  <define name="model.milestoneLike_alternation">
    <choice>
      <ref name="milestone"/>
      <ref name="pb"/>
      <ref name="lb"/>
      <ref name="fw"/>
      <ref name="anchor"/>
      <ref name="wordObject"/>
    </choice>
  </define>
  <define name="model.milestoneLike_sequence">
    <ref name="milestone"/>
    <ref name="pb"/>
    <ref name="lb"/>
    <ref name="fw"/>
    <ref name="anchor"/>
    <ref name="wordObject"/>
  </define>
  <define name="model.milestoneLike_sequenceOptional">
    <optional>
      <ref name="milestone"/>
    </optional>
    <optional>
      <ref name="pb"/>
    </optional>
    <optional>
      <ref name="lb"/>
    </optional>
    <optional>
      <ref name="fw"/>
    </optional>
    <optional>
      <ref name="anchor"/>
    </optional>
    <optional>
      <ref name="wordObject"/>
    </optional>
  </define>
  <define name="model.milestoneLike_sequenceOptionalRepeatable">
    <zeroOrMore>
      <ref name="milestone"/>
    </zeroOrMore>
    <zeroOrMore>
      <ref name="pb"/>
    </zeroOrMore>
    <zeroOrMore>
      <ref name="lb"/>
    </zeroOrMore>
    <zeroOrMore>
      <ref name="fw"/>
    </zeroOrMore>
    <zeroOrMore>
      <ref name="anchor"/>
    </zeroOrMore>
    <zeroOrMore>
      <ref name="wordObject"/>
    </zeroOrMore>
  </define>
  <define name="model.milestoneLike_sequenceRepeatable">
    <oneOrMore>
      <ref name="milestone"/>
    </oneOrMore>
    <oneOrMore>
      <ref name="pb"/>
    </oneOrMore>
    <oneOrMore>
      <ref name="lb"/>
    </oneOrMore>
    <oneOrMore>
      <ref name="fw"/>
    </oneOrMore>
    <oneOrMore>
      <ref name="anchor"/>
    </oneOrMore>
    <oneOrMore>
      <ref name="wordObject"/>
    </oneOrMore>
  </define>
  <define name="model.gLike">
    <choice>
      <ref name="g"/>
    </choice>
  </define>
  <define name="model.phrase.xml">
    <choice>
      <ref name="gi"/>
    </choice>
  </define>
  <define name="model.phrase.xml_alternation">
    <choice>
      <ref name="gi"/>
    </choice>
  </define>
  <define name="model.phrase.xml_sequence">
    <ref name="gi"/>
  </define>
  <define name="model.phrase.xml_sequenceOptional">
    <optional>
      <ref name="gi"/>
    </optional>
  </define>
  <define name="model.phrase.xml_sequenceOptionalRepeatable">
    <zeroOrMore>
      <ref name="gi"/>
    </zeroOrMore>
  </define>
  <define name="model.phrase.xml_sequenceRepeatable">
    <oneOrMore>
      <ref name="gi"/>
    </oneOrMore>
  </define>
  <define name="model.biblLike">
    <choice>
      <ref name="bibl"/>
      <ref name="biblStruct"/>
      <ref name="biblFull"/>
    </choice>
  </define>
  <define name="model.biblLike_alternation">
    <choice>
      <ref name="bibl"/>
      <ref name="biblStruct"/>
      <ref name="biblFull"/>
    </choice>
  </define>
  <define name="model.biblLike_sequence">
    <ref name="bibl"/>
    <ref name="biblStruct"/>
    <ref name="biblFull"/>
  </define>
  <define name="model.biblLike_sequenceOptional">
    <optional>
      <ref name="bibl"/>
    </optional>
    <optional>
      <ref name="biblStruct"/>
    </optional>
    <optional>
      <ref name="biblFull"/>
    </optional>
  </define>
  <define name="model.biblLike_sequenceOptionalRepeatable">
    <zeroOrMore>
      <ref name="bibl"/>
    </zeroOrMore>
    <zeroOrMore>
      <ref name="biblStruct"/>
    </zeroOrMore>
    <zeroOrMore>
      <ref name="biblFull"/>
    </zeroOrMore>
  </define>
  <define name="model.biblLike_sequenceRepeatable">
    <oneOrMore>
      <ref name="bibl"/>
    </oneOrMore>
    <oneOrMore>
      <ref name="biblStruct"/>
    </oneOrMore>
    <oneOrMore>
      <ref name="biblFull"/>
    </oneOrMore>
  </define>
  <define name="model.headLike">
    <choice>
      <ref name="head"/>
    </choice>
  </define>
  <define name="model.headLike_alternation">
    <choice>
      <ref name="head"/>
    </choice>
  </define>
  <define name="model.headLike_sequence">
    <ref name="head"/>
  </define>
  <define name="model.headLike_sequenceOptional">
    <optional>
      <ref name="head"/>
    </optional>
  </define>
  <define name="model.headLike_sequenceOptionalRepeatable">
    <zeroOrMore>
      <ref name="head"/>
    </zeroOrMore>
  </define>
  <define name="model.headLike_sequenceRepeatable">
    <oneOrMore>
      <ref name="head"/>
    </oneOrMore>
  </define>
  <define name="model.labelLike">
    <choice>
      <ref name="desc"/>
      <ref name="label"/>
    </choice>
  </define>
  <define name="model.labelLike_alternation">
    <choice>
      <ref name="desc"/>
      <ref name="label"/>
    </choice>
  </define>
  <define name="model.labelLike_sequence">
    <ref name="desc"/>
    <ref name="label"/>
  </define>
  <define name="model.labelLike_sequenceOptional">
    <optional>
      <ref name="desc"/>
    </optional>
    <optional>
      <ref name="label"/>
    </optional>
  </define>
  <define name="model.labelLike_sequenceOptionalRepeatable">
    <zeroOrMore>
      <ref name="desc"/>
    </zeroOrMore>
    <zeroOrMore>
      <ref name="label"/>
    </zeroOrMore>
  </define>
  <define name="model.labelLike_sequenceRepeatable">
    <oneOrMore>
      <ref name="desc"/>
    </oneOrMore>
    <oneOrMore>
      <ref name="label"/>
    </oneOrMore>
  </define>
  <define name="model.listLike">
    <choice>
      <ref name="list"/>
      <ref name="listBibl"/>
      <ref name="listEvent"/>
    </choice>
  </define>
  <define name="model.listLike_alternation">
    <choice>
      <ref name="list"/>
      <ref name="listBibl"/>
      <ref name="listEvent"/>
    </choice>
  </define>
  <define name="model.listLike_sequence">
    <ref name="list"/>
    <ref name="listBibl"/>
    <ref name="listEvent"/>
  </define>
  <define name="model.listLike_sequenceOptional">
    <optional>
      <ref name="list"/>
    </optional>
    <optional>
      <ref name="listBibl"/>
    </optional>
    <optional>
      <ref name="listEvent"/>
    </optional>
  </define>
  <define name="model.listLike_sequenceOptionalRepeatable">
    <zeroOrMore>
      <ref name="list"/>
    </zeroOrMore>
    <zeroOrMore>
      <ref name="listBibl"/>
    </zeroOrMore>
    <zeroOrMore>
      <ref name="listEvent"/>
    </zeroOrMore>
  </define>
  <define name="model.listLike_sequenceRepeatable">
    <oneOrMore>
      <ref name="list"/>
    </oneOrMore>
    <oneOrMore>
      <ref name="listBibl"/>
    </oneOrMore>
    <oneOrMore>
      <ref name="listEvent"/>
    </oneOrMore>
  </define>
  <define name="model.noteLike">
    <choice>
      <ref name="note"/>
    </choice>
  </define>
  <define name="model.noteLike_alternation">
    <choice>
      <ref name="note"/>
    </choice>
  </define>
  <define name="model.noteLike_sequence">
    <ref name="note"/>
  </define>
  <define name="model.noteLike_sequenceOptional">
    <optional>
      <ref name="note"/>
    </optional>
  </define>
  <define name="model.noteLike_sequenceOptionalRepeatable">
    <zeroOrMore>
      <ref name="note"/>
    </zeroOrMore>
  </define>
  <define name="model.noteLike_sequenceRepeatable">
    <oneOrMore>
      <ref name="note"/>
    </oneOrMore>
  </define>
  <define name="model.lLike">
    <choice>
      <ref name="l"/>
    </choice>
  </define>
  <define name="model.lLike_alternation">
    <choice>
      <ref name="l"/>
    </choice>
  </define>
  <define name="model.lLike_sequence">
    <ref name="l"/>
  </define>
  <define name="model.lLike_sequenceOptional">
    <optional>
      <ref name="l"/>
    </optional>
  </define>
  <define name="model.lLike_sequenceOptionalRepeatable">
    <zeroOrMore>
      <ref name="l"/>
    </zeroOrMore>
  </define>
  <define name="model.lLike_sequenceRepeatable">
    <oneOrMore>
      <ref name="l"/>
    </oneOrMore>
  </define>
  <define name="model.pLike">
    <choice>
      <ref name="p"/>
    </choice>
  </define>
  <define name="model.pLike_alternation">
    <choice>
      <ref name="p"/>
    </choice>
  </define>
  <define name="model.pLike_sequence">
    <ref name="p"/>
  </define>
  <define name="model.pLike_sequenceOptional">
    <optional>
      <ref name="p"/>
    </optional>
  </define>
  <define name="model.pLike_sequenceOptionalRepeatable">
    <zeroOrMore>
      <ref name="p"/>
    </zeroOrMore>
  </define>
  <define name="model.pLike_sequenceRepeatable">
    <oneOrMore>
      <ref name="p"/>
    </oneOrMore>
  </define>
  <define name="model.entryPart">
    <notAllowed/>
  </define>
  <define name="model.global.edit">
    <choice>
      <ref name="addSpan"/>
      <ref name="delSpan"/>
    </choice>
  </define>
  <define name="model.global.edit_alternation">
    <choice>
      <ref name="addSpan"/>
      <ref name="delSpan"/>
    </choice>
  </define>
  <define name="model.global.edit_sequence">
    <ref name="addSpan"/>
    <ref name="delSpan"/>
  </define>
  <define name="model.global.edit_sequenceOptional">
    <optional>
      <ref name="addSpan"/>
    </optional>
    <optional>
      <ref name="delSpan"/>
    </optional>
  </define>
  <define name="model.global.edit_sequenceOptionalRepeatable">
    <zeroOrMore>
      <ref name="addSpan"/>
    </zeroOrMore>
    <zeroOrMore>
      <ref name="delSpan"/>
    </zeroOrMore>
  </define>
  <define name="model.global.edit_sequenceRepeatable">
    <oneOrMore>
      <ref name="addSpan"/>
    </oneOrMore>
    <oneOrMore>
      <ref name="delSpan"/>
    </oneOrMore>
  </define>
  <define name="model.divPart">
    <choice>
      <ref name="model.lLike"/>
      <ref name="model.pLike"/>
    </choice>
  </define>
  <define name="model.divPart_alternation">
    <choice>
      <ref name="model.lLike_alternation"/>
      <ref name="model.pLike_alternation"/>
    </choice>
  </define>
  <define name="model.divPart_sequence">
    <ref name="model.lLike_sequence"/>
    <ref name="model.pLike_sequence"/>
  </define>
  <define name="model.divPart_sequenceOptional">
    <optional>
      <ref name="model.lLike_sequenceOptional"/>
    </optional>
    <optional>
      <ref name="model.pLike_sequenceOptional"/>
    </optional>
  </define>
  <define name="model.divPart_sequenceOptionalRepeatable">
    <zeroOrMore>
      <ref name="model.lLike_sequenceOptionalRepeatable"/>
    </zeroOrMore>
    <zeroOrMore>
      <ref name="model.pLike_sequenceOptionalRepeatable"/>
    </zeroOrMore>
  </define>
  <define name="model.divPart_sequenceRepeatable">
    <oneOrMore>
      <ref name="model.lLike_sequenceRepeatable"/>
    </oneOrMore>
    <oneOrMore>
      <ref name="model.pLike_sequenceRepeatable"/>
    </oneOrMore>
  </define>
  <define name="model.persStateLike">
    <choice>
      <ref name="persName"/>
    </choice>
  </define>
  <define name="model.persStateLike_alternation">
    <choice>
      <ref name="persName"/>
    </choice>
  </define>
  <define name="model.persStateLike_sequence">
    <ref name="persName"/>
  </define>
  <define name="model.persStateLike_sequenceOptional">
    <optional>
      <ref name="persName"/>
    </optional>
  </define>
  <define name="model.persStateLike_sequenceOptionalRepeatable">
    <zeroOrMore>
      <ref name="persName"/>
    </zeroOrMore>
  </define>
  <define name="model.persStateLike_sequenceRepeatable">
    <oneOrMore>
      <ref name="persName"/>
    </oneOrMore>
  </define>
  <define name="model.personLike">
    <choice>
      <ref name="org"/>
    </choice>
  </define>
  <define name="model.publicationStmtPart">
    <choice>
      <ref name="address"/>
      <ref name="date"/>
      <ref name="publisher"/>
      <ref name="pubPlace"/>
      <ref name="distributor"/>
      <ref name="authority"/>
      <ref name="idno"/>
      <ref name="availability"/>
    </choice>
  </define>
  <define name="model.glossLike">
    <choice>
      <ref name="desc"/>
      <ref name="gloss"/>
    </choice>
  </define>
  <define name="model.quoteLike">
    <choice>
      <ref name="quote"/>
      <ref name="cit"/>
    </choice>
  </define>
  <define name="model.quoteLike_alternation">
    <choice>
      <ref name="quote"/>
      <ref name="cit"/>
    </choice>
  </define>
  <define name="model.quoteLike_sequence">
    <ref name="quote"/>
    <ref name="cit"/>
  </define>
  <define name="model.quoteLike_sequenceOptional">
    <optional>
      <ref name="quote"/>
    </optional>
    <optional>
      <ref name="cit"/>
    </optional>
  </define>
  <define name="model.quoteLike_sequenceOptionalRepeatable">
    <zeroOrMore>
      <ref name="quote"/>
    </zeroOrMore>
    <zeroOrMore>
      <ref name="cit"/>
    </zeroOrMore>
  </define>
  <define name="model.quoteLike_sequenceRepeatable">
    <oneOrMore>
      <ref name="quote"/>
    </oneOrMore>
    <oneOrMore>
      <ref name="cit"/>
    </oneOrMore>
  </define>
  <define name="model.qLike">
    <choice>
      <ref name="model.quoteLike"/>
      <ref name="q"/>
    </choice>
  </define>
  <define name="model.qLike_alternation">
    <choice>
      <ref name="model.quoteLike_alternation"/>
      <ref name="q"/>
    </choice>
  </define>
  <define name="model.qLike_sequence">
    <ref name="model.quoteLike_sequence"/>
    <ref name="q"/>
  </define>
  <define name="model.qLike_sequenceOptional">
    <optional>
      <ref name="model.quoteLike_sequenceOptional"/>
    </optional>
    <optional>
      <ref name="q"/>
    </optional>
  </define>
  <define name="model.qLike_sequenceOptionalRepeatable">
    <zeroOrMore>
      <ref name="model.quoteLike_sequenceOptionalRepeatable"/>
    </zeroOrMore>
    <zeroOrMore>
      <ref name="q"/>
    </zeroOrMore>
  </define>
  <define name="model.qLike_sequenceRepeatable">
    <oneOrMore>
      <ref name="model.quoteLike_sequenceRepeatable"/>
    </oneOrMore>
    <oneOrMore>
      <ref name="q"/>
    </oneOrMore>
  </define>
  <define name="model.respLike">
    <choice>
      <ref name="author"/>
      <ref name="editor"/>
      <ref name="respStmt"/>
      <ref name="meeting"/>
      <ref name="sponsor"/>
      <ref name="funder"/>
      <ref name="principal"/>
    </choice>
  </define>
  <define name="model.respLike_alternation">
    <choice>
      <ref name="author"/>
      <ref name="editor"/>
      <ref name="respStmt"/>
      <ref name="meeting"/>
      <ref name="sponsor"/>
      <ref name="funder"/>
      <ref name="principal"/>
    </choice>
  </define>
  <define name="model.respLike_sequence">
    <ref name="author"/>
    <ref name="editor"/>
    <ref name="respStmt"/>
    <ref name="meeting"/>
    <ref name="sponsor"/>
    <ref name="funder"/>
    <ref name="principal"/>
  </define>
  <define name="model.respLike_sequenceOptional">
    <optional>
      <ref name="author"/>
    </optional>
    <optional>
      <ref name="editor"/>
    </optional>
    <optional>
      <ref name="respStmt"/>
    </optional>
    <optional>
      <ref name="meeting"/>
    </optional>
    <optional>
      <ref name="sponsor"/>
    </optional>
    <optional>
      <ref name="funder"/>
    </optional>
    <optional>
      <ref name="principal"/>
    </optional>
  </define>
  <define name="model.respLike_sequenceOptionalRepeatable">
    <zeroOrMore>
      <ref name="author"/>
    </zeroOrMore>
    <zeroOrMore>
      <ref name="editor"/>
    </zeroOrMore>
    <zeroOrMore>
      <ref name="respStmt"/>
    </zeroOrMore>
    <zeroOrMore>
      <ref name="meeting"/>
    </zeroOrMore>
    <zeroOrMore>
      <ref name="sponsor"/>
    </zeroOrMore>
    <zeroOrMore>
      <ref name="funder"/>
    </zeroOrMore>
    <zeroOrMore>
      <ref name="principal"/>
    </zeroOrMore>
  </define>
  <define name="model.respLike_sequenceRepeatable">
    <oneOrMore>
      <ref name="author"/>
    </oneOrMore>
    <oneOrMore>
      <ref name="editor"/>
    </oneOrMore>
    <oneOrMore>
      <ref name="respStmt"/>
    </oneOrMore>
    <oneOrMore>
      <ref name="meeting"/>
    </oneOrMore>
    <oneOrMore>
      <ref name="sponsor"/>
    </oneOrMore>
    <oneOrMore>
      <ref name="funder"/>
    </oneOrMore>
    <oneOrMore>
      <ref name="principal"/>
    </oneOrMore>
  </define>
  <define name="model.divWrapper">
    <choice>
      <ref name="meeting"/>
    </choice>
  </define>
  <define name="model.divWrapper_alternation">
    <choice>
      <ref name="meeting"/>
    </choice>
  </define>
  <define name="model.divWrapper_sequence">
    <ref name="meeting"/>
  </define>
  <define name="model.divWrapper_sequenceOptional">
    <optional>
      <ref name="meeting"/>
    </optional>
  </define>
  <define name="model.divWrapper_sequenceOptionalRepeatable">
    <zeroOrMore>
      <ref name="meeting"/>
    </zeroOrMore>
  </define>
  <define name="model.divWrapper_sequenceRepeatable">
    <oneOrMore>
      <ref name="meeting"/>
    </oneOrMore>
  </define>
  <define name="model.divTopPart">
    <choice>
      <ref name="model.headLike"/>
    </choice>
  </define>
  <define name="model.divTopPart_alternation">
    <choice>
      <ref name="model.headLike_alternation"/>
    </choice>
  </define>
  <define name="model.divTopPart_sequence">
    <ref name="model.headLike_sequence"/>
  </define>
  <define name="model.divTopPart_sequenceOptional">
    <optional>
      <ref name="model.headLike_sequenceOptional"/>
    </optional>
  </define>
  <define name="model.divTopPart_sequenceOptionalRepeatable">
    <zeroOrMore>
      <ref name="model.headLike_sequenceOptionalRepeatable"/>
    </zeroOrMore>
  </define>
  <define name="model.divTopPart_sequenceRepeatable">
    <oneOrMore>
      <ref name="model.headLike_sequenceRepeatable"/>
    </oneOrMore>
  </define>
  <define name="model.divTop">
    <choice>
      <ref name="model.divWrapper"/>
      <ref name="model.divTopPart"/>
    </choice>
  </define>
  <define name="model.pLike.front">
    <choice>
      <ref name="head"/>
      <ref name="titlePart"/>
    </choice>
  </define>
  <define name="model.divBottomPart">
    <notAllowed/>
  </define>
  <define name="model.divBottomPart_alternation">
    <notAllowed/>
  </define>
  <define name="model.divBottomPart_sequence">
    <empty/>
  </define>
  <define name="model.divBottomPart_sequenceOptional">
    <empty/>
  </define>
  <define name="model.divBottomPart_sequenceOptionalRepeatable">
    <empty/>
  </define>
  <define name="model.divBottomPart_sequenceRepeatable">
    <notAllowed/>
  </define>
  <define name="model.divBottom">
    <choice>
      <ref name="model.divWrapper"/>
      <ref name="model.divBottomPart"/>
    </choice>
  </define>
  <define name="model.msQuoteLike">
    <choice>
      <ref name="title"/>
    </choice>
  </define>
  <define name="model.msQuoteLike_alternation">
    <choice>
      <ref name="title"/>
    </choice>
  </define>
  <define name="model.msQuoteLike_sequence">
    <ref name="title"/>
  </define>
  <define name="model.msQuoteLike_sequenceOptional">
    <optional>
      <ref name="title"/>
    </optional>
  </define>
  <define name="model.msQuoteLike_sequenceOptionalRepeatable">
    <zeroOrMore>
      <ref name="title"/>
    </zeroOrMore>
  </define>
  <define name="model.msQuoteLike_sequenceRepeatable">
    <oneOrMore>
      <ref name="title"/>
    </oneOrMore>
  </define>
  <define name="model.imprintPart">
    <choice>
      <ref name="publisher"/>
      <ref name="biblScope"/>
      <ref name="pubPlace"/>
      <ref name="distributor"/>
    </choice>
  </define>
  <define name="model.imprintPart_alternation">
    <choice>
      <ref name="publisher"/>
      <ref name="biblScope"/>
      <ref name="pubPlace"/>
      <ref name="distributor"/>
    </choice>
  </define>
  <define name="model.imprintPart_sequence">
    <ref name="publisher"/>
    <ref name="biblScope"/>
    <ref name="pubPlace"/>
    <ref name="distributor"/>
  </define>
  <define name="model.imprintPart_sequenceOptional">
    <optional>
      <ref name="publisher"/>
    </optional>
    <optional>
      <ref name="biblScope"/>
    </optional>
    <optional>
      <ref name="pubPlace"/>
    </optional>
    <optional>
      <ref name="distributor"/>
    </optional>
  </define>
  <define name="model.imprintPart_sequenceOptionalRepeatable">
    <zeroOrMore>
      <ref name="publisher"/>
    </zeroOrMore>
    <zeroOrMore>
      <ref name="biblScope"/>
    </zeroOrMore>
    <zeroOrMore>
      <ref name="pubPlace"/>
    </zeroOrMore>
    <zeroOrMore>
      <ref name="distributor"/>
    </zeroOrMore>
  </define>
  <define name="model.imprintPart_sequenceRepeatable">
    <oneOrMore>
      <ref name="publisher"/>
    </oneOrMore>
    <oneOrMore>
      <ref name="biblScope"/>
    </oneOrMore>
    <oneOrMore>
      <ref name="pubPlace"/>
    </oneOrMore>
    <oneOrMore>
      <ref name="distributor"/>
    </oneOrMore>
  </define>
  <define name="model.catDescPart">
    <notAllowed/>
  </define>
  <define name="model.addressLike">
    <choice>
      <ref name="address"/>
    </choice>
  </define>
  <define name="model.addressLike_alternation">
    <choice>
      <ref name="address"/>
    </choice>
  </define>
  <define name="model.addressLike_sequence">
    <ref name="address"/>
  </define>
  <define name="model.addressLike_sequenceOptional">
    <optional>
      <ref name="address"/>
    </optional>
  </define>
  <define name="model.addressLike_sequenceOptionalRepeatable">
    <zeroOrMore>
      <ref name="address"/>
    </zeroOrMore>
  </define>
  <define name="model.addressLike_sequenceRepeatable">
    <oneOrMore>
      <ref name="address"/>
    </oneOrMore>
  </define>
  <define name="model.nameLike">
    <choice>
      <ref name="model.nameLike.agent"/>
      <ref name="idno"/>
      <ref name="model.persNamePart"/>
    </choice>
  </define>
  <define name="model.nameLike_alternation">
    <choice>
      <ref name="model.nameLike.agent_alternation"/>
      <ref name="idno"/>
      <ref name="model.persNamePart_alternation"/>
    </choice>
  </define>
  <define name="model.nameLike_sequence">
    <ref name="model.nameLike.agent_sequence"/>
    <ref name="idno"/>
    <ref name="model.persNamePart_sequence"/>
  </define>
  <define name="model.nameLike_sequenceOptional">
    <optional>
      <ref name="model.nameLike.agent_sequenceOptional"/>
    </optional>
    <optional>
      <ref name="idno"/>
    </optional>
    <optional>
      <ref name="model.persNamePart_sequenceOptional"/>
    </optional>
  </define>
  <define name="model.nameLike_sequenceOptionalRepeatable">
    <zeroOrMore>
      <ref name="model.nameLike.agent_sequenceOptionalRepeatable"/>
    </zeroOrMore>
    <zeroOrMore>
      <ref name="idno"/>
    </zeroOrMore>
    <zeroOrMore>
      <ref name="model.persNamePart_sequenceOptionalRepeatable"/>
    </zeroOrMore>
  </define>
  <define name="model.nameLike_sequenceRepeatable">
    <oneOrMore>
      <ref name="model.nameLike.agent_sequenceRepeatable"/>
    </oneOrMore>
    <oneOrMore>
      <ref name="idno"/>
    </oneOrMore>
    <oneOrMore>
      <ref name="model.persNamePart_sequenceRepeatable"/>
    </oneOrMore>
  </define>
  <define name="model.global">
    <choice>
      <ref name="model.milestoneLike"/>
      <ref name="model.noteLike"/>
      <ref name="model.global.edit"/>
      <ref name="figure"/>
    </choice>
  </define>
  <define name="model.biblPart">
    <choice>
      <ref name="model.respLike"/>
      <ref name="model.imprintPart"/>
      <ref name="series"/>
      <ref name="edition"/>
      <ref name="extent"/>
    </choice>
  </define>
  <define name="model.frontPart">
    <choice>
      <ref name="divGen"/>
    </choice>
  </define>
  <define name="model.addrPart">
    <choice>
      <ref name="model.nameLike"/>
      <ref name="addrLine"/>
    </choice>
  </define>
  <define name="model.pPart.data">
    <choice>
      <ref name="model.dateLike"/>
      <ref name="model.measureLike"/>
      <ref name="model.addressLike"/>
      <ref name="model.nameLike"/>
    </choice>
  </define>
  <define name="model.pPart.data_alternation">
    <choice>
      <ref name="model.dateLike_alternation"/>
      <ref name="model.measureLike_alternation"/>
      <ref name="model.addressLike_alternation"/>
      <ref name="model.nameLike_alternation"/>
    </choice>
  </define>
  <define name="model.pPart.data_sequence">
    <ref name="model.dateLike_sequence"/>
    <ref name="model.measureLike_sequence"/>
    <ref name="model.addressLike_sequence"/>
    <ref name="model.nameLike_sequence"/>
  </define>
  <define name="model.pPart.data_sequenceOptional">
    <optional>
      <ref name="model.dateLike_sequenceOptional"/>
    </optional>
    <optional>
      <ref name="model.measureLike_sequenceOptional"/>
    </optional>
    <optional>
      <ref name="model.addressLike_sequenceOptional"/>
    </optional>
    <optional>
      <ref name="model.nameLike_sequenceOptional"/>
    </optional>
  </define>
  <define name="model.pPart.data_sequenceOptionalRepeatable">
    <zeroOrMore>
      <ref name="model.dateLike_sequenceOptionalRepeatable"/>
    </zeroOrMore>
    <zeroOrMore>
      <ref name="model.measureLike_sequenceOptionalRepeatable"/>
    </zeroOrMore>
    <zeroOrMore>
      <ref name="model.addressLike_sequenceOptionalRepeatable"/>
    </zeroOrMore>
    <zeroOrMore>
      <ref name="model.nameLike_sequenceOptionalRepeatable"/>
    </zeroOrMore>
  </define>
  <define name="model.pPart.data_sequenceRepeatable">
    <oneOrMore>
      <ref name="model.dateLike_sequenceRepeatable"/>
    </oneOrMore>
    <oneOrMore>
      <ref name="model.measureLike_sequenceRepeatable"/>
    </oneOrMore>
    <oneOrMore>
      <ref name="model.addressLike_sequenceRepeatable"/>
    </oneOrMore>
    <oneOrMore>
      <ref name="model.nameLike_sequenceRepeatable"/>
    </oneOrMore>
  </define>
  <define name="model.inter">
    <choice>
      <ref name="model.egLike"/>
      <ref name="model.biblLike"/>
      <ref name="model.labelLike"/>
      <ref name="model.listLike"/>
      <ref name="model.qLike"/>
      <ref name="calstable"/>
      <ref name="tbx_termEntry"/>
    </choice>
  </define>
  <define name="model.inter_alternation">
    <choice>
      <ref name="model.egLike_alternation"/>
      <ref name="model.biblLike_alternation"/>
      <ref name="model.labelLike_alternation"/>
      <ref name="model.listLike_alternation"/>
      <ref name="model.qLike_alternation"/>
      <ref name="calstable"/>
      <ref name="tbx_termEntry"/>
    </choice>
  </define>
  <define name="model.inter_sequence">
    <ref name="model.egLike_sequence"/>
    <ref name="model.biblLike_sequence"/>
    <ref name="model.labelLike_sequence"/>
    <ref name="model.listLike_sequence"/>
    <ref name="model.qLike_sequence"/>
    <ref name="calstable"/>
    <ref name="tbx_termEntry"/>
  </define>
  <define name="model.inter_sequenceOptional">
    <optional>
      <ref name="model.egLike_sequenceOptional"/>
    </optional>
    <optional>
      <ref name="model.biblLike_sequenceOptional"/>
    </optional>
    <optional>
      <ref name="model.labelLike_sequenceOptional"/>
    </optional>
    <optional>
      <ref name="model.listLike_sequenceOptional"/>
    </optional>
    <optional>
      <ref name="model.qLike_sequenceOptional"/>
    </optional>
    <optional>
      <ref name="calstable"/>
    </optional>
    <optional>
      <ref name="tbx_termEntry"/>
    </optional>
  </define>
  <define name="model.inter_sequenceOptionalRepeatable">
    <zeroOrMore>
      <ref name="model.egLike_sequenceOptionalRepeatable"/>
    </zeroOrMore>
    <zeroOrMore>
      <ref name="model.biblLike_sequenceOptionalRepeatable"/>
    </zeroOrMore>
    <zeroOrMore>
      <ref name="model.labelLike_sequenceOptionalRepeatable"/>
    </zeroOrMore>
    <zeroOrMore>
      <ref name="model.listLike_sequenceOptionalRepeatable"/>
    </zeroOrMore>
    <zeroOrMore>
      <ref name="model.qLike_sequenceOptionalRepeatable"/>
    </zeroOrMore>
    <zeroOrMore>
      <ref name="calstable"/>
    </zeroOrMore>
    <zeroOrMore>
      <ref name="tbx_termEntry"/>
    </zeroOrMore>
  </define>
  <define name="model.inter_sequenceRepeatable">
    <oneOrMore>
      <ref name="model.egLike_sequenceRepeatable"/>
    </oneOrMore>
    <oneOrMore>
      <ref name="model.biblLike_sequenceRepeatable"/>
    </oneOrMore>
    <oneOrMore>
      <ref name="model.labelLike_sequenceRepeatable"/>
    </oneOrMore>
    <oneOrMore>
      <ref name="model.listLike_sequenceRepeatable"/>
    </oneOrMore>
    <oneOrMore>
      <ref name="model.qLike_sequenceRepeatable"/>
    </oneOrMore>
    <oneOrMore>
      <ref name="calstable"/>
    </oneOrMore>
    <oneOrMore>
      <ref name="tbx_termEntry"/>
    </oneOrMore>
  </define>
  <define name="model.common">
    <choice>
      <ref name="model.divPart"/>
      <ref name="model.inter"/>
    </choice>
  </define>
  <define name="model.phrase">
    <choice>
      <ref name="model.segLike"/>
      <ref name="model.highlighted"/>
      <ref name="model.graphicLike"/>
      <ref name="model.pPart.edit"/>
      <ref name="model.ptrLike"/>
      <ref name="model.phrase.xml"/>
      <ref name="model.pPart.data"/>
      <ref name="dynamicContent"/>
    </choice>
  </define>
  <define name="model.limitedPhrase">
    <choice>
      <ref name="model.emphLike"/>
      <ref name="model.pPart.editorial"/>
      <ref name="model.ptrLike"/>
      <ref name="model.phrase.xml"/>
      <ref name="model.pPart.data"/>
    </choice>
  </define>
  <define name="model.divLike">
    <choice>
      <ref name="div"/>
    </choice>
  </define>
  <define name="model.divGenLike">
    <choice>
      <ref name="divGen"/>
    </choice>
  </define>
  <define name="model.div1Like">
    <notAllowed/>
  </define>
  <define name="model.resourceLike">
    <notAllowed/>
  </define>
  <define name="att.personal.attributes">
    <ref name="att.naming.attributes"/>
    <ref name="att.personal.attribute.full"/>
    <ref name="att.personal.attribute.sort"/>
  </define>
  <define name="att.personal.attribute.full">
    <optional>
      <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="full" a:defaultValue="yes">
        <a:documentation>indicates whether the name component is given in full, as an
abbreviation or simply as an initial.</a:documentation>
        <choice>
          <value>yes</value>
          <a:documentation>the name component is spelled out in full.</a:documentation>
          <value>abb</value>
          <a:documentation>(abbreviated) the name component is given in an abbreviated form.</a:documentation>
          <value>init</value>
          <a:documentation>(initial letter) the name component is indicated only by
one initial.</a:documentation>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="att.personal.attribute.sort">
    <optional>
      <attribute name="sort">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the sort order of the name component in relation
to others within the personal name.</a:documentation>
        <data type="nonNegativeInteger"/>
      </attribute>
    </optional>
  </define>
  <define name="model.placeLike">
    <notAllowed/>
  </define>
  <define name="p">
    <element name="p">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(paragraph) marks paragraphs in prose.</a:documentation>
      <ref name="macro.paraContent"/>
      <ref name="att.global.attributes"/>
      <ref name="att.declaring.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="foreign">
    <element name="foreign">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(foreign) identifies a word or phrase as belonging to some language other than that of the
                surrounding text. </a:documentation>
      <ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="emph">
    <element name="emph">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(emphasized) marks words or phrases which are stressed or emphasized for
        linguistic or rhetorical effect.</a:documentation>
      <ref name="macro.paraContent"/>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="hi">
    <element name="hi">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(highlighted) marks a word or phrase as graphically distinct from the
        surrounding text, for reasons concerning which no claim is
        made. </a:documentation>
      <ref name="macro.paraContent"/>
      <attribute name="rend">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">
Suggested values include: 1] bold; 2] smallcaps; 3] capsall; 4] underline; 5] underdoubleline; 6] strikethrough; 7] strikedoublethrough; 8] italic; 9] superscript; 10] subscript; 11] code; 12] domain; 13] gender; 14] geographicalUse; 15] language; 16] pronunciation; 17] partOfSpeech; 18] source; 19] tab; 20] termRef</a:documentation>
        <list>
          <choice>
            <value>bold</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Bold</a:documentation>
            <value>smallcaps</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Smallcaps</a:documentation>
            <value>capsall</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">All caps</a:documentation>
            <value>underline</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Underline</a:documentation>
            <value>underdoubleline</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Double underline</a:documentation>
            <value>strikethrough</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Strikethrough</a:documentation>
            <value>strikedoublethrough</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Double strikethrough</a:documentation>
            <value>italic</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Italic</a:documentation>
            <value>superscript</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Superscript</a:documentation>
            <value>subscript</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Subscript</a:documentation>
            <value>code</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Monospaced font</a:documentation>
            <value>domain</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminological  domain</a:documentation>
            <value>gender</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminological gender</a:documentation>
            <value>geographicalUse</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminological geographical use</a:documentation>
            <value>language</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminological language</a:documentation>
            <value>pronunciation</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Pronunciation</a:documentation>
            <value>partOfSpeech</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Part Of Speech</a:documentation>
            <value>source</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminology source</a:documentation>
            <value>tab</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">tab</a:documentation>
            <value>termRef</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminology Reference</a:documentation>
            <data type="token">
              <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
            </data>
          </choice>
          <optional>
            <choice>
              <value>bold</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Bold</a:documentation>
              <value>smallcaps</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Smallcaps</a:documentation>
              <value>capsall</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">All caps</a:documentation>
              <value>underline</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Underline</a:documentation>
              <value>underdoubleline</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Double underline</a:documentation>
              <value>strikethrough</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Strikethrough</a:documentation>
              <value>strikedoublethrough</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Double strikethrough</a:documentation>
              <value>italic</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Italic</a:documentation>
              <value>superscript</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Superscript</a:documentation>
              <value>subscript</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Subscript</a:documentation>
              <value>code</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Monospaced font</a:documentation>
              <value>domain</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminological  domain</a:documentation>
              <value>gender</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminological gender</a:documentation>
              <value>geographicalUse</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminological geographical use</a:documentation>
              <value>language</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminological language</a:documentation>
              <value>pronunciation</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Pronunciation</a:documentation>
              <value>partOfSpeech</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Part Of Speech</a:documentation>
              <value>source</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminology source</a:documentation>
              <value>tab</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">tab</a:documentation>
              <value>termRef</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminology Reference</a:documentation>
              <data type="token">
                <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
              </data>
            </choice>
          </optional>
          <optional>
            <choice>
              <value>bold</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Bold</a:documentation>
              <value>smallcaps</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Smallcaps</a:documentation>
              <value>capsall</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">All caps</a:documentation>
              <value>underline</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Underline</a:documentation>
              <value>underdoubleline</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Double underline</a:documentation>
              <value>strikethrough</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Strikethrough</a:documentation>
              <value>strikedoublethrough</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Double strikethrough</a:documentation>
              <value>italic</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Italic</a:documentation>
              <value>superscript</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Superscript</a:documentation>
              <value>subscript</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Subscript</a:documentation>
              <value>code</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Monospaced font</a:documentation>
              <value>domain</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminological  domain</a:documentation>
              <value>gender</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminological gender</a:documentation>
              <value>geographicalUse</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminological geographical use</a:documentation>
              <value>language</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminological language</a:documentation>
              <value>pronunciation</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Pronunciation</a:documentation>
              <value>partOfSpeech</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Part Of Speech</a:documentation>
              <value>source</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminology source</a:documentation>
              <value>tab</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">tab</a:documentation>
              <value>termRef</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminology Reference</a:documentation>
              <data type="token">
                <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
              </data>
            </choice>
          </optional>
          <optional>
            <choice>
              <value>bold</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Bold</a:documentation>
              <value>smallcaps</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Smallcaps</a:documentation>
              <value>capsall</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">All caps</a:documentation>
              <value>underline</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Underline</a:documentation>
              <value>underdoubleline</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Double underline</a:documentation>
              <value>strikethrough</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Strikethrough</a:documentation>
              <value>strikedoublethrough</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Double strikethrough</a:documentation>
              <value>italic</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Italic</a:documentation>
              <value>superscript</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Superscript</a:documentation>
              <value>subscript</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Subscript</a:documentation>
              <value>code</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Monospaced font</a:documentation>
              <value>domain</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminological  domain</a:documentation>
              <value>gender</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminological gender</a:documentation>
              <value>geographicalUse</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminological geographical use</a:documentation>
              <value>language</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminological language</a:documentation>
              <value>pronunciation</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Pronunciation</a:documentation>
              <value>partOfSpeech</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Part Of Speech</a:documentation>
              <value>source</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminology source</a:documentation>
              <value>tab</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">tab</a:documentation>
              <value>termRef</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminology Reference</a:documentation>
              <data type="token">
                <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
              </data>
            </choice>
          </optional>
          <optional>
            <choice>
              <value>bold</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Bold</a:documentation>
              <value>smallcaps</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Smallcaps</a:documentation>
              <value>capsall</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">All caps</a:documentation>
              <value>underline</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Underline</a:documentation>
              <value>underdoubleline</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Double underline</a:documentation>
              <value>strikethrough</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Strikethrough</a:documentation>
              <value>strikedoublethrough</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Double strikethrough</a:documentation>
              <value>italic</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Italic</a:documentation>
              <value>superscript</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Superscript</a:documentation>
              <value>subscript</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Subscript</a:documentation>
              <value>code</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Monospaced font</a:documentation>
              <value>domain</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminological  domain</a:documentation>
              <value>gender</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminological gender</a:documentation>
              <value>geographicalUse</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminological geographical use</a:documentation>
              <value>language</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminological language</a:documentation>
              <value>pronunciation</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Pronunciation</a:documentation>
              <value>partOfSpeech</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Part Of Speech</a:documentation>
              <value>source</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminology source</a:documentation>
              <value>tab</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">tab</a:documentation>
              <value>termRef</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminology Reference</a:documentation>
              <data type="token">
                <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
              </data>
            </choice>
          </optional>
          <optional>
            <choice>
              <value>bold</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Bold</a:documentation>
              <value>smallcaps</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Smallcaps</a:documentation>
              <value>capsall</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">All caps</a:documentation>
              <value>underline</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Underline</a:documentation>
              <value>underdoubleline</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Double underline</a:documentation>
              <value>strikethrough</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Strikethrough</a:documentation>
              <value>strikedoublethrough</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Double strikethrough</a:documentation>
              <value>italic</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Italic</a:documentation>
              <value>superscript</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Superscript</a:documentation>
              <value>subscript</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Subscript</a:documentation>
              <value>code</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Monospaced font</a:documentation>
              <value>domain</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminological  domain</a:documentation>
              <value>gender</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminological gender</a:documentation>
              <value>geographicalUse</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminological geographical use</a:documentation>
              <value>language</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminological language</a:documentation>
              <value>pronunciation</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Pronunciation</a:documentation>
              <value>partOfSpeech</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Part Of Speech</a:documentation>
              <value>source</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminology source</a:documentation>
              <value>tab</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">tab</a:documentation>
              <value>termRef</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminology Reference</a:documentation>
              <data type="token">
                <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
              </data>
            </choice>
          </optional>
          <optional>
            <choice>
              <value>bold</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Bold</a:documentation>
              <value>smallcaps</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Smallcaps</a:documentation>
              <value>capsall</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">All caps</a:documentation>
              <value>underline</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Underline</a:documentation>
              <value>underdoubleline</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Double underline</a:documentation>
              <value>strikethrough</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Strikethrough</a:documentation>
              <value>strikedoublethrough</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Double strikethrough</a:documentation>
              <value>italic</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Italic</a:documentation>
              <value>superscript</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Superscript</a:documentation>
              <value>subscript</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Subscript</a:documentation>
              <value>code</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Monospaced font</a:documentation>
              <value>domain</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminological  domain</a:documentation>
              <value>gender</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminological gender</a:documentation>
              <value>geographicalUse</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminological geographical use</a:documentation>
              <value>language</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminological language</a:documentation>
              <value>pronunciation</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Pronunciation</a:documentation>
              <value>partOfSpeech</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Part Of Speech</a:documentation>
              <value>source</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminology source</a:documentation>
              <value>tab</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">tab</a:documentation>
              <value>termRef</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminology Reference</a:documentation>
              <data type="token">
                <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
              </data>
            </choice>
          </optional>
          <optional>
            <choice>
              <value>bold</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Bold</a:documentation>
              <value>smallcaps</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Smallcaps</a:documentation>
              <value>capsall</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">All caps</a:documentation>
              <value>underline</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Underline</a:documentation>
              <value>underdoubleline</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Double underline</a:documentation>
              <value>strikethrough</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Strikethrough</a:documentation>
              <value>strikedoublethrough</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Double strikethrough</a:documentation>
              <value>italic</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Italic</a:documentation>
              <value>superscript</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Superscript</a:documentation>
              <value>subscript</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Subscript</a:documentation>
              <value>code</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Monospaced font</a:documentation>
              <value>domain</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminological  domain</a:documentation>
              <value>gender</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminological gender</a:documentation>
              <value>geographicalUse</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminological geographical use</a:documentation>
              <value>language</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminological language</a:documentation>
              <value>pronunciation</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Pronunciation</a:documentation>
              <value>partOfSpeech</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Part Of Speech</a:documentation>
              <value>source</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminology source</a:documentation>
              <value>tab</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">tab</a:documentation>
              <value>termRef</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminology Reference</a:documentation>
              <data type="token">
                <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
              </data>
            </choice>
          </optional>
          <optional>
            <choice>
              <value>bold</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Bold</a:documentation>
              <value>smallcaps</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Smallcaps</a:documentation>
              <value>capsall</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">All caps</a:documentation>
              <value>underline</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Underline</a:documentation>
              <value>underdoubleline</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Double underline</a:documentation>
              <value>strikethrough</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Strikethrough</a:documentation>
              <value>strikedoublethrough</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Double strikethrough</a:documentation>
              <value>italic</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Italic</a:documentation>
              <value>superscript</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Superscript</a:documentation>
              <value>subscript</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Subscript</a:documentation>
              <value>code</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Monospaced font</a:documentation>
              <value>domain</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminological  domain</a:documentation>
              <value>gender</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminological gender</a:documentation>
              <value>geographicalUse</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminological geographical use</a:documentation>
              <value>language</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminological language</a:documentation>
              <value>pronunciation</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Pronunciation</a:documentation>
              <value>partOfSpeech</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Part Of Speech</a:documentation>
              <value>source</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminology source</a:documentation>
              <value>tab</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">tab</a:documentation>
              <value>termRef</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminology Reference</a:documentation>
              <data type="token">
                <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
              </data>
            </choice>
          </optional>
          <optional>
            <choice>
              <value>bold</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Bold</a:documentation>
              <value>smallcaps</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Smallcaps</a:documentation>
              <value>capsall</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">All caps</a:documentation>
              <value>underline</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Underline</a:documentation>
              <value>underdoubleline</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Double underline</a:documentation>
              <value>strikethrough</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Strikethrough</a:documentation>
              <value>strikedoublethrough</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Double strikethrough</a:documentation>
              <value>italic</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Italic</a:documentation>
              <value>superscript</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Superscript</a:documentation>
              <value>subscript</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Subscript</a:documentation>
              <value>code</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Monospaced font</a:documentation>
              <value>domain</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminological  domain</a:documentation>
              <value>gender</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminological gender</a:documentation>
              <value>geographicalUse</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminological geographical use</a:documentation>
              <value>language</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminological language</a:documentation>
              <value>pronunciation</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Pronunciation</a:documentation>
              <value>partOfSpeech</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Part Of Speech</a:documentation>
              <value>source</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminology source</a:documentation>
              <value>tab</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">tab</a:documentation>
              <value>termRef</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminology Reference</a:documentation>
              <data type="token">
                <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
              </data>
            </choice>
          </optional>
          <optional>
            <choice>
              <value>bold</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Bold</a:documentation>
              <value>smallcaps</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Smallcaps</a:documentation>
              <value>capsall</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">All caps</a:documentation>
              <value>underline</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Underline</a:documentation>
              <value>underdoubleline</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Double underline</a:documentation>
              <value>strikethrough</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Strikethrough</a:documentation>
              <value>strikedoublethrough</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Double strikethrough</a:documentation>
              <value>italic</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Italic</a:documentation>
              <value>superscript</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Superscript</a:documentation>
              <value>subscript</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Subscript</a:documentation>
              <value>code</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Monospaced font</a:documentation>
              <value>domain</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminological  domain</a:documentation>
              <value>gender</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminological gender</a:documentation>
              <value>geographicalUse</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminological geographical use</a:documentation>
              <value>language</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminological language</a:documentation>
              <value>pronunciation</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Pronunciation</a:documentation>
              <value>partOfSpeech</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Part Of Speech</a:documentation>
              <value>source</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminology source</a:documentation>
              <value>tab</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">tab</a:documentation>
              <value>termRef</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminology Reference</a:documentation>
              <data type="token">
                <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
              </data>
            </choice>
          </optional>
          <optional>
            <choice>
              <value>bold</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Bold</a:documentation>
              <value>smallcaps</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Smallcaps</a:documentation>
              <value>capsall</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">All caps</a:documentation>
              <value>underline</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Underline</a:documentation>
              <value>underdoubleline</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Double underline</a:documentation>
              <value>strikethrough</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Strikethrough</a:documentation>
              <value>strikedoublethrough</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Double strikethrough</a:documentation>
              <value>italic</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Italic</a:documentation>
              <value>superscript</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Superscript</a:documentation>
              <value>subscript</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Subscript</a:documentation>
              <value>code</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Monospaced font</a:documentation>
              <value>domain</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminological  domain</a:documentation>
              <value>gender</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminological gender</a:documentation>
              <value>geographicalUse</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminological geographical use</a:documentation>
              <value>language</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminological language</a:documentation>
              <value>pronunciation</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Pronunciation</a:documentation>
              <value>partOfSpeech</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Part Of Speech</a:documentation>
              <value>source</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminology source</a:documentation>
              <value>tab</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">tab</a:documentation>
              <value>termRef</value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminology Reference</a:documentation>
              <data type="token">
                <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
              </data>
            </choice>
          </optional>
        </list>
      </attribute>
      <ref name="att.global.attribute.style"/>
      <ref name="att.global.attribute.meta"/>
      <ref name="att.global.attribute.status"/>
      <ref name="att.global.attribute.provision"/>
      <ref name="att.global.attribute.spaceBefore"/>
      <ref name="att.global.attribute.spaceAfter"/>
      <ref name="att.global.attribute.align"/>
      <ref name="att.global.attribute.replaceable"/>
      <ref name="att.global.attribute.xmlid"/>
      <ref name="att.global.attribute.n"/>
      <ref name="att.global.attribute.xmllang"/>
      <ref name="att.global.attribute.xmlbase"/>
      <ref name="att.global.attribute.xmlspace"/>
      <ref name="att.global.analytic.attributes"/>
      <ref name="att.global.facs.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="quote">
    <element name="quote">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(quotation) contains a phrase or passage attributed by the narrator or author to some agency external
        to the text.</a:documentation>
      <ref name="macro.specialPara"/>
      <ref name="att.global.attributes"/>
      <ref name="att.typed.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="q">
    <element name="q">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(separated from the surrounding text with quotation marks) contains material which is marked as (ostensibly) being somehow different than the
    surrounding text, for any one of a variety of reasons including, but not limited to: direct
    speech or thought, technical terms or jargon, authorial distance, quotations from elsewhere, and
    passages that are mentioned but not used.</a:documentation>
      <ref name="macro.specialPara"/>
      <ref name="att.global.attributes"/>
      <ref name="att.ascribed.attributes"/>
      <optional>
        <attribute name="type">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">may be used to indicate whether the offset passage is spoken or thought, or to
        characterize it more finely.
Suggested values include: 1] spoken; 2] thought; 3] written; 4] soCalled; 5] foreign(foreign words) ; 6] distinct(linguistically distinct) ; 7] term(technical term) ; 8] emph(rhetorically emphasized) ; 9] mentioned</a:documentation>
          <choice>
            <value>spoken</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">representation of speech</a:documentation>
            <value>thought</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">representation of thought, e.g. internal monologue</a:documentation>
            <value>written</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">quotation from a written source</a:documentation>
            <value>soCalled</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">authorial distance</a:documentation>
            <value>foreign</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(foreign words) </a:documentation>
            <value>distinct</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(linguistically distinct) </a:documentation>
            <value>term</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(technical term) </a:documentation>
            <value>emph</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(rhetorically emphasized) </a:documentation>
            <value>mentioned</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">refering to itself, not its normal referant</a:documentation>
            <data type="Name"/>
          </choice>
        </attribute>
      </optional>
      <empty/>
    </element>
  </define>
  <define name="cit">
    <element name="cit">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(cited quotation) contains a quotation from some other document, together with a bibliographic reference to
    its source. In a dictionary it may contain an example text with at least one occurrence of the
    word form, used in the sense being described, or a translation of the headword, or an example. </a:documentation>
      <oneOrMore xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <choice>
          <ref name="model.qLike"/>
          <ref name="model.biblLike"/>
          <ref name="model.ptrLike"/>
          <ref name="model.global"/>
          <ref name="model.entryPart"/>
        </choice>
      </oneOrMore>
      <ref name="att.global.attributes"/>
      <ref name="att.typed.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="mentioned">
    <element name="mentioned">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">marks words or phrases mentioned, not used.</a:documentation>
      <ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="desc">
    <element name="desc">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(description) contains a brief description of the object documented by its parent element, including its
    intended usage, purpose, or application where this is appropriate.</a:documentation>
      <ref name="macro.limitedContent"/>
      <ref name="att.global.attributes"/>
      <ref name="att.translatable.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="gloss">
    <element name="gloss">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">identifies a phrase or word used to provide a gloss or definition for some other word or
    phrase.</a:documentation>
      <ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <ref name="att.declaring.attributes"/>
      <ref name="att.translatable.attributes"/>
      <ref name="att.typed.attributes"/>
      <ref name="att.pointing.attributes"/>
      <optional>
        <attribute name="cRef">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(canonical reference) identifies the associated term element using a canonical reference from a
        scheme defined in a refsDecl element in the TEI header</a:documentation>
          <data type="anyURI"/>
        </attribute>
      </optional>
      <empty/>
    </element>
  </define>
  <define name="term">
    <element name="term">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a single-word, multi-word, or symbolic designation which is regarded as a technical
    term.</a:documentation>
      <ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <ref name="att.declaring.attributes"/>
      <ref name="att.pointing.attributes"/>
      <ref name="att.typed.attributes"/>
      <ref name="att.canonical.attributes"/>
      <optional>
        <attribute name="cRef">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">identifies the associated gloss element using a canonical reference from a
          scheme defined in a refsDecl element in the TEI header</a:documentation>
          <data type="anyURI"/>
        </attribute>
      </optional>
      <optional>
        <attribute name="sortKey">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">supplies the sort key for this term in an index.</a:documentation>
          <data type="token">
            <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
          </data>
        </attribute>
      </optional>
      <empty/>
    </element>
  </define>
  <define name="add">
    <element name="add">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(addition) contains letters, words, or phrases inserted in the text by an
        author, scribe, annotator, or corrector.</a:documentation>
      <ref name="macro.paraContent"/>
      <ref name="att.global.attributes"/>
      <ref name="att.datable.attributes"/>
      <ref name="att.transcriptional.attributes"/>
      <ref name="att.placement.attributes"/>
      <ref name="att.typed.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="del">
    <element name="del">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(deletion) contains a letter, word, or passage deleted, marked as deleted, or otherwise indicated as
    superfluous or spurious in the copy text by an author, scribe, annotator, or corrector.</a:documentation>
      <ref name="macro.paraContent"/>
      <ref name="att.global.attributes"/>
      <ref name="att.datable.attributes"/>
      <ref name="att.transcriptional.attributes"/>
      <ref name="att.typed.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="name">
    <element name="name">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(name, proper noun) contains a proper noun or noun phrase.</a:documentation>
      <ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <ref name="att.naming.attributes"/>
      <ref name="att.typed.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="address">
    <element name="address">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a postal  address, for example of a
        publisher, an organization, or an individual.</a:documentation>
      <group xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <zeroOrMore>
          <ref name="model.global"/>
        </zeroOrMore>
        <oneOrMore>
          <group>
            <ref name="model.addrPart"/>
          </group>
          <zeroOrMore>
            <ref name="model.global"/>
          </zeroOrMore>
        </oneOrMore>
      </group>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="addrLine">
    <element name="addrLine">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(address line) contains one line of a postal address.</a:documentation>
      <ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="num">
    <element name="num">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(number) contains a number, written in any form.</a:documentation>
      <ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <ref name="att.ranging.attributes"/>
      <optional>
        <attribute name="type">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the type of numeric value.
Suggested values include: 1] cardinal; 2] ordinal; 3] fraction; 4] percentage</a:documentation>
          <choice>
            <value>cardinal</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">absolute number, e.g. 21, 21.5</a:documentation>
            <value>ordinal</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">ordinal number, e.g. 21st</a:documentation>
            <value>fraction</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">fraction, e.g. one half or three-quarters</a:documentation>
            <value>percentage</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">a percentage</a:documentation>
            <data type="Name"/>
          </choice>
        </attribute>
      </optional>
      <optional>
        <attribute name="value">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">supplies the value of the number in standard form.</a:documentation>
          <choice>
            <data type="double"/>
            <data type="token">
              <param name="pattern">(\-?[\d]+/\-?[\d]+)</param>
            </data>
            <data type="decimal"/>
          </choice>
        </attribute>
      </optional>
      <empty/>
    </element>
  </define>
  <define name="date">
    <element name="date">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a date in any format.</a:documentation>
      <zeroOrMore xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <choice>
          <text/>
          <ref name="model.gLike"/>
          <ref name="model.phrase"/>
          <ref name="model.global"/>
        </choice>
      </zeroOrMore>
      <ref name="att.global.attributes"/>
      <ref name="att.datable.attributes"/>
      <ref name="att.editLike.attributes"/>
      <ref name="att.typed.attributes"/>
      <optional>
        <attribute name="calendar">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the system or calendar to which the date represented by the content of this
        element belongs.
Suggested values include: 1] Gregorian; 2] Julian; 3] Islamic; 4] Hebrew; 5] Revolutionary; 6] Iranian; 7] Coptic; 8] Chinese</a:documentation>
          <choice>
            <value>Gregorian</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Gregorian calendar</a:documentation>
            <value>Julian</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Julian calendar</a:documentation>
            <value>Islamic</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Islamic or Muslim (hijri) lunar calendar</a:documentation>
            <value>Hebrew</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Hebrew or Jewish lunisolar calendar</a:documentation>
            <value>Revolutionary</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">French Revolutionary calendar</a:documentation>
            <value>Iranian</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Iranian or Persian (Jalaali) solar calendar</a:documentation>
            <value>Coptic</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Coptic or Alexandrian calendar</a:documentation>
            <value>Chinese</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Chinese lunisolar calendar</a:documentation>
            <data type="Name"/>
          </choice>
        </attribute>
      </optional>
      <empty/>
    </element>
  </define>
  <define name="time">
    <element name="time">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a phrase defining a time of day in any format.</a:documentation>
      <zeroOrMore xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <choice>
          <text/>
          <ref name="model.gLike"/>
          <ref name="model.phrase"/>
          <ref name="model.global"/>
        </choice>
      </zeroOrMore>
      <ref name="att.global.attributes"/>
      <ref name="att.datable.attributes"/>
      <ref name="att.editLike.attributes"/>
      <ref name="att.typed.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="abbr">
    <element name="abbr">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(abbreviation) contains an abbreviation of any sort.</a:documentation>
      <ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <ref name="att.responsibility.attributes"/>
      <optional>
        <attribute name="type">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">allows the encoder to classify the abbreviation according to some convenient
                typology.
Sample values include: 1] suspension; 2] contraction; 3] brevigraph; 4] superscription; 5] acronym; 6] title; 7] organization; 8] geographic</a:documentation>
          <data type="Name"/>
        </attribute>
      </optional>
      <empty/>
    </element>
  </define>
  <define name="ptr">
    <element name="ptr">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(pointer) defines a pointer to another location.</a:documentation>
      <rng:empty xmlns:sch="http://purl.oclc.org/dsdl/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns="http://www.tei-c.org/ns/1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0"/>
      <pattern xmlns="http://purl.oclc.org/dsdl/schematron" id="ptr-constraint-ptrAtts">
        <rule context="tei:ptr">
          <sch:report xmlns:sch="http://purl.oclc.org/dsdl/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns="http://www.tei-c.org/ns/1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0" test="@target and @cRef">Only one of the
	attributes 'target' and 'cRef' may be supplied.</sch:report>
        </rule>
      </pattern>
      <ref name="att.global.attributes"/>
      <ref name="att.pointing.attributes"/>
      <ref name="att.typed.attributes"/>
      <ref name="att.declaring.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="ref">
    <element name="ref">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(reference) defines a reference to another location, possibly modified by additional text or comment.</a:documentation>
      <ref name="macro.paraContent"/>
      <pattern xmlns="http://purl.oclc.org/dsdl/schematron" id="ref-constraint-refAtts">
        <rule context="tei:ref">
          <sch:report xmlns:sch="http://purl.oclc.org/dsdl/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns="http://www.tei-c.org/ns/1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0" test="@target and @cRef">Only one of the
	attributes 'target' and 'cRef' may be supplied.</sch:report>
        </rule>
      </pattern>
      <ref name="att.global.attributes"/>
      <ref name="att.pointing.attributes"/>
      <ref name="att.typed.attributes"/>
      <ref name="att.declaring.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="list">
    <element name="list">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(list) contains any sequence of items organized as a list.</a:documentation>
      <group xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <zeroOrMore>
          <choice>
            <group>
              <ref name="model.divTop"/>
            </group>
            <group>
              <ref name="model.global"/>
            </group>
          </choice>
        </zeroOrMore>
        <choice>
          <oneOrMore>
            <ref name="item"/>
            <zeroOrMore>
              <ref name="model.global"/>
            </zeroOrMore>
          </oneOrMore>
          <group>
            <oneOrMore>
              <ref name="label"/>
              <zeroOrMore>
                <ref name="model.global"/>
              </zeroOrMore>
              <ref name="item"/>
              <zeroOrMore>
                <ref name="model.global"/>
              </zeroOrMore>
            </oneOrMore>
          </group>
        </choice>
        <zeroOrMore>
          <group>
            <group>
              <ref name="model.divBottom"/>
            </group>
            <zeroOrMore>
              <ref name="model.global"/>
            </zeroOrMore>
          </group>
        </zeroOrMore>
      </group>
      <s:pattern xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns="http://www.tei-c.org/ns/1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="isoList">
        <s:rule context="tei:list[@type='termlist']/tei:item">
          <s:assert test="@n">Each item in a termlist must have a @n attribute</s:assert>
        </s:rule>
      </s:pattern>
      <attribute name="type">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <choice>
          <value>ordered</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Numbered list</a:documentation>
          <value>unordered</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Bulletted list</a:documentation>
          <value>gloss</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Definition list</a:documentation>
        </choice>
      </attribute>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="item">
    <element name="item">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains one component of a list.</a:documentation>
      <ref name="macro.specialPara"/>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="label">
    <element name="label">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains the label associated with an item in a list; in glossaries, marks the term being
    defined.</a:documentation>
      <ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="head">
    <element name="head">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(heading) contains any type of heading, for example the title of a section, or the heading of a list,
    glossary, manuscript description, etc.</a:documentation>
      <ref name="macro.paraContent"/>
      <ref name="att.global.attributes"/>
      <ref name="att.typed.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="note">
    <element name="note">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a note or annotation.</a:documentation>
      <ref name="macro.specialPara"/>
      <optional>
        <attribute name="place">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          <choice>
            <value>inline</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
            <value>foot</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
            <value>bottom</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
            <value>end</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
            <value>comment</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          </choice>
        </attribute>
      </optional>
      <optional>
        <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="anchored" a:defaultValue="true">
          <a:documentation>indicates whether the copy text shows the exact place of reference for the note.</a:documentation>
          <choice>
            <data type="boolean"/>
          </choice>
        </attribute>
      </optional>
      <optional>
        <attribute name="targetEnd">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">points to the end of the span to which the note is attached, if the note is not embedded
        in the text at that point.</a:documentation>
          <list>
            <data type="anyURI"/>
            <zeroOrMore>
              <data type="anyURI"/>
            </zeroOrMore>
          </list>
        </attribute>
      </optional>
      <ref name="att.global.attributes"/>
      <ref name="att.pointing.attributes"/>
      <ref name="att.responsibility.attributes"/>
      <ref name="att.typed.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="graphic">
    <element name="graphic">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the location of an inline graphic, illustration, or figure.</a:documentation>
      <zeroOrMore xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <ref name="model.glossLike"/>
      </zeroOrMore>
      <ref name="att.global.attributes"/>
      <ref name="att.internetMedia.attributes"/>
      <ref name="att.declaring.attributes"/>
      <optional>
        <attribute name="width">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">The display width of the image</a:documentation>
          <data type="token">
            <param name="pattern">[\-+]?\d+(\.\d+)?(%|cm|mm|in|pt|pc|px|em|ex|gd|rem|vw|vh|vm)</param>
          </data>
        </attribute>
      </optional>
      <optional>
        <attribute name="height">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">The display height of the image</a:documentation>
          <data type="token">
            <param name="pattern">[\-+]?\d+(\.\d+)?(%|cm|mm|in|pt|pc|px|em|ex|gd|rem|vw|vh|vm)</param>
          </data>
        </attribute>
      </optional>
      <optional>
        <attribute name="scale">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">A scale factor to be applied to the image to make it the desired display size</a:documentation>
          <choice>
            <data type="double"/>
            <data type="token">
              <param name="pattern">(\-?[\d]+/\-?[\d]+)</param>
            </data>
            <data type="decimal"/>
          </choice>
        </attribute>
      </optional>
      <attribute name="url">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(uniform resource locator) A URL which refers to the image itself.</a:documentation>
        <data type="anyURI"/>
      </attribute>
      <empty/>
    </element>
  </define>
  <define name="milestone">
    <element name="milestone">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">marks a boundary point separating any kind of section of a text, typically but not
    necessarily indicating a point at which some part of a standard reference system changes, where
    the change is not represented by a structural element.</a:documentation>
      <zeroOrMore xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <choice>
          <ref name="orientation"/>
          <ref name="footer"/>
          <ref name="header"/>
          <ref name="pageNumbering"/>
        </choice>
      </zeroOrMore>
      <attribute name="unit">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">provides a conventional name for the kind of section changing at this milestone.
Suggested values include: 1] page; 2] column; 3] line; 4] book; 5] poem; 6] canto; 7] speaker; 8] stanza; 9] act; 10] scene; 11] section; 12] absent; 13] unnumbered</a:documentation>
        <choice>
          <value>page</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">physical page breaks (synonymous with the pb element).</a:documentation>
          <value>column</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">column breaks.</a:documentation>
          <value>line</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">line breaks (synonymous with the lb element).</a:documentation>
          <value>book</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">any units termed book, liber, etc.</a:documentation>
          <value>poem</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">individual poems in a collection.</a:documentation>
          <value>canto</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">cantos or other major sections of a poem.</a:documentation>
          <value>speaker</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">changes of speaker or narrator.</a:documentation>
          <value>stanza</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">stanzas within a poem, book, or canto.</a:documentation>
          <value>act</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">acts within a play.</a:documentation>
          <value>scene</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">scenes within a play or act.</a:documentation>
          <value>section</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">sections of any kind.</a:documentation>
          <value>absent</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">passages not present in the reference edition.</a:documentation>
          <value>unnumbered</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">passages present in the text, but not to be included as part of the reference.</a:documentation>
          <data type="Name"/>
        </choice>
      </attribute>
      <ref name="att.global.attributes"/>
      <ref name="att.typed.attributes"/>
      <ref name="att.sourced.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="pb">
    <element name="pb">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(page break) marks the boundary between one page of a text and the next in a standard reference system.</a:documentation>
      <rng:empty xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns="http://www.tei-c.org/ns/1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0"/>
      <ref name="att.global.attributes"/>
      <ref name="att.typed.attributes"/>
      <ref name="att.sourced.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="lb">
    <element name="lb">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(line break) marks the start of a new (typographic) line in some edition or version of a text.</a:documentation>
      <rng:empty xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns="http://www.tei-c.org/ns/1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0"/>
      <ref name="att.global.attributes"/>
      <ref name="att.typed.attributes"/>
      <ref name="att.sourced.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="analytic">
    <element name="analytic">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(analytic level) contains bibliographic elements describing an item (e.g. an article or poem) published
    within a monograph or journal and not as an independent publication.</a:documentation>
      <zeroOrMore xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <choice>
          <ref name="author"/>
          <ref name="editor"/>
          <ref name="respStmt"/>
          <ref name="title"/>
          <ref name="ref"/>
        </choice>
      </zeroOrMore>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="monogr">
    <element name="monogr">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(monographic level) contains bibliographic elements describing an item (e.g. a book or journal) published as an
    independent item (i.e. as a separate physical object).</a:documentation>
      <group xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <optional>
          <choice>
            <group>
              <choice>
                <ref name="author"/>
                <ref name="editor"/>
                <ref name="respStmt"/>
              </choice>
              <zeroOrMore>
                <choice>
                  <ref name="author"/>
                  <ref name="editor"/>
                  <ref name="respStmt"/>
                </choice>
              </zeroOrMore>
              <oneOrMore>
                <ref name="title"/>
              </oneOrMore>
              <zeroOrMore>
                <choice>
                  <ref name="idno"/>
                  <ref name="editor"/>
                  <ref name="respStmt"/>
                </choice>
              </zeroOrMore>
            </group>
            <group>
              <oneOrMore>
                <choice>
                  <ref name="title"/>
                  <ref name="ref"/>
                </choice>
              </oneOrMore>
              <zeroOrMore>
                <choice>
                  <ref name="idno"/>
                  <ref name="author"/>
                  <ref name="editor"/>
                  <ref name="respStmt"/>
                </choice>
              </zeroOrMore>
            </group>
          </choice>
        </optional>
        <zeroOrMore>
          <choice>
            <ref name="model.noteLike"/>
            <ref name="meeting"/>
          </choice>
        </zeroOrMore>
        <zeroOrMore>
          <ref name="edition"/>
          <zeroOrMore>
            <choice>
              <ref name="idno"/>
              <ref name="editor"/>
              <ref name="respStmt"/>
            </choice>
          </zeroOrMore>
        </zeroOrMore>
        <ref name="imprint"/>
        <zeroOrMore>
          <choice>
            <ref name="imprint"/>
            <ref name="extent"/>
            <ref name="biblScope"/>
          </choice>
        </zeroOrMore>
      </group>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="series">
    <element name="series">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(series information) contains information about the series in which a book or other bibliographic item has
    appeared.</a:documentation>
      <zeroOrMore xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <choice>
          <text/>
          <ref name="model.gLike"/>
          <ref name="title"/>
          <ref name="ref"/>
          <ref name="editor"/>
          <ref name="respStmt"/>
          <ref name="biblScope"/>
          <ref name="model.global"/>
        </choice>
      </zeroOrMore>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="author">
    <element name="author">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">in a bibliographic reference, contains the name(s) of the
  author(s), personal or corporate, of a work; for example in the same
  form as that provided by a recognized bibliographic name authority. </a:documentation>
      <ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <ref name="att.naming.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="editor">
    <element name="editor">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">secondary statement of responsibility for a bibliographic item, for example the name of an
    individual, institution or organization, (or of several such) acting as editor, compiler,
    translator, etc. </a:documentation>
      <ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <ref name="att.naming.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="respStmt">
    <element name="respStmt">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(statement of responsibility) supplies a statement of responsibility for the intellectual content of a text, edition,
    recording, or series, where the specialized elements for authors, editors, etc. do not suffice
    or do not apply.</a:documentation>
      <choice xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <group>
          <oneOrMore>
            <ref name="resp"/>
          </oneOrMore>
          <oneOrMore>
            <ref name="model.nameLike.agent"/>
          </oneOrMore>
        </group>
        <group>
          <oneOrMore>
            <ref name="model.nameLike.agent"/>
          </oneOrMore>
          <oneOrMore>
            <ref name="resp"/>
          </oneOrMore>
        </group>
      </choice>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="resp">
    <element name="resp">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(responsibility) contains a phrase describing the nature of a person's intellectual responsibility.</a:documentation>
      <ref name="macro.phraseSeq.limited"/>
      <ref name="att.global.attributes"/>
      <ref name="att.canonical.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="title">
    <element name="title">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a title for any kind of work.</a:documentation>
      <ref name="macro.paraContent"/>
      <ref name="att.global.attributes"/>
      <ref name="att.canonical.attributes"/>
      <optional>
        <attribute name="level">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the bibliographic level for a title, that is, whether
                                        it identifies an article, book, journal, series, or
                                        unpublished material.</a:documentation>
          <choice>
            <value>a</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(analytic) analytic title (article, poem, or other item
                                                  published as part of a larger item) </a:documentation>
            <value>m</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(monographic) monographic title (book, collection, or
                                                  other item published as a distinct item,
                                                  including single volumes of multi-volume
                                                  works) </a:documentation>
            <value>j</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(journal) journal title </a:documentation>
            <value>s</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(series) series title </a:documentation>
            <value>u</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(unpublished) title of unpublished material (including
                                                  theses and dissertations unless
                                                  published by a commercial press)</a:documentation>
          </choice>
        </attribute>
      </optional>
      <optional>
        <attribute name="type">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">classifies the title according to some convenient typology.
Sample values include: 1] main; 2] sub(subordinate) ; 3] alt(alternate) ; 4] short; 5] desc(descriptive) </a:documentation>
          <data type="Name"/>
        </attribute>
      </optional>
      <empty/>
    </element>
  </define>
  <define name="meeting">
    <element name="meeting">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains the formalized descriptive title for a meeting or conference, for use in a
    bibliographic description for an item derived from such a meeting, or as a heading or preamble
    to publications emanating from it.</a:documentation>
      <ref name="macro.limitedContent"/>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="imprint">
    <element name="imprint">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">groups information relating to the publication or distribution
        of a bibliographic item.</a:documentation>
      <oneOrMore xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <choice>
          <group>
            <ref name="model.imprintPart"/>
          </group>
          <group>
            <ref name="model.dateLike"/>
          </group>
        </choice>
        <zeroOrMore>
          <ref name="model.global"/>
        </zeroOrMore>
      </oneOrMore>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="publisher">
    <element name="publisher">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">provides the name of the organization responsible for the publication or distribution of a
        bibliographic item.</a:documentation>
      <ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="biblScope">
    <element name="biblScope">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(scope of citation) defines the scope of a bibliographic reference, for example as a
        list of page numbers, or a named subdivision of a larger work.</a:documentation>
      <ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <optional>
        <attribute name="type">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">identifies the type of information conveyed by the element, e.g.
                columns, pages, volume.
Suggested values include: 1] vol(volume) ; 2] issue; 3] pp(pages) ; 4] ll (lines) ; 5] chap(chapter) ; 6] part</a:documentation>
          <choice>
            <value>vol</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(volume) the element contains a volume number.</a:documentation>
            <value>issue</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">the element contains an issue number, or volume and
                        issue numbers.</a:documentation>
            <value>pp</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(pages) the element contains a page number or page range.</a:documentation>
            <value>ll</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (lines) the element contains a line number or line range.</a:documentation>
            <value>chap</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(chapter) the element contains a chapter indication (number
                        and/or title)</a:documentation>
            <value>part</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">the element identifies a part of a book or collection.</a:documentation>
            <data type="Name"/>
          </choice>
        </attribute>
      </optional>
      <optional>
        <attribute name="from">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the starting point of the range of units indicated by the type attribute.</a:documentation>
          <data type="token">
            <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
          </data>
        </attribute>
      </optional>
      <optional>
        <attribute name="to">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the end-point of the range of units indicated by the type attribute.</a:documentation>
          <data type="token">
            <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
          </data>
        </attribute>
      </optional>
      <empty/>
    </element>
  </define>
  <define name="pubPlace">
    <element name="pubPlace">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(publication place) contains the name of the place where a bibliographic item was published.</a:documentation>
      <ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <ref name="att.naming.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="bibl">
    <element name="bibl">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(bibliographic citation) contains a loosely-structured bibliographic citation of which the sub-components may or may
    not be explicitly tagged. </a:documentation>
      <zeroOrMore xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <choice>
          <text/>
          <ref name="model.gLike"/>
          <ref name="model.highlighted"/>
          <ref name="model.pPart.data"/>
          <ref name="model.pPart.edit"/>
          <ref name="model.segLike"/>
          <ref name="model.ptrLike"/>
          <ref name="model.biblPart"/>
          <ref name="model.global"/>
        </choice>
      </zeroOrMore>
      <ref name="att.global.attributes"/>
      <ref name="att.declarable.attributes"/>
      <ref name="att.typed.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="biblStruct">
    <element name="biblStruct">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(structured bibliographic citation) contains a structured bibliographic citation, in which only bibliographic sub-elements
    appear and in a specified order. </a:documentation>
      <group xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <zeroOrMore>
          <ref name="analytic"/>
        </zeroOrMore>
        <oneOrMore>
          <ref name="monogr"/>
          <zeroOrMore>
            <ref name="series"/>
          </zeroOrMore>
        </oneOrMore>
        <zeroOrMore>
          <choice>
            <ref name="model.noteLike"/>
            <ref name="idno"/>
          </choice>
        </zeroOrMore>
      </group>
      <ref name="att.global.attributes"/>
      <ref name="att.declarable.attributes"/>
      <ref name="att.typed.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="listBibl">
    <element name="listBibl">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(citation list) contains a list of bibliographic citations of any kind. </a:documentation>
      <group xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <zeroOrMore>
          <ref name="model.headLike"/>
        </zeroOrMore>
        <oneOrMore>
          <choice>
            <ref name="model.biblLike"/>
            <ref name="model.milestoneLike"/>
            <ref name="listBibl"/>
          </choice>
        </oneOrMore>
      </group>
      <ref name="att.global.attributes"/>
      <ref name="att.declarable.attributes"/>
      <ref name="att.typed.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="l">
    <element name="l">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(verse line) contains a single, possibly incomplete, line of verse.</a:documentation>
      <ref name="macro.paraContent"/>
      <ref name="att.global.attributes"/>
      <optional>
        <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="part" a:defaultValue="N">
          <a:documentation>specifies whether or not the line is metrically complete. </a:documentation>
          <choice>
            <value>Y</value>
            <a:documentation>(yes) the line is metrically incomplete</a:documentation>
            <value>N</value>
            <a:documentation>(no) either the line is complete, or no claim is made as to its completeness</a:documentation>
            <value>I</value>
            <a:documentation>(initial) the initial part of an incomplete line</a:documentation>
            <value>M</value>
            <a:documentation>(medial) a medial part of an incomplete line</a:documentation>
            <value>F</value>
            <a:documentation>(final) the final part of an incomplete line</a:documentation>
          </choice>
        </attribute>
      </optional>
      <empty/>
    </element>
  </define>
  <define name="divGen">
    <element name="divGen">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(automatically generated text division) indicates the location at which a textual division generated
        automatically by a text-processing application is to appear.</a:documentation>
      <zeroOrMore xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <ref name="model.headLike"/>
      </zeroOrMore>
      <ref name="att.global.attributes"/>
      <optional>
        <attribute name="type">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies what type of generated text division (e.g. index,
                table of contents, etc.) is to appear.
Sample values include: 1] index; 2] toc; 3] figlist; 4] tablist</a:documentation>
          <data type="Name"/>
        </attribute>
      </optional>
      <empty/>
    </element>
  </define>
  <define name="g">
    <element name="g">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(character or glyph) represents a non-standard character or glyph.</a:documentation>
      <rng:text xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns="http://www.tei-c.org/ns/1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0"/>
      <ref name="att.global.attributes"/>
      <ref name="att.typed.attributes"/>
      <optional>
        <attribute name="ref">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">points to a description of the character or glyph intended.</a:documentation>
          <data type="anyURI"/>
        </attribute>
      </optional>
      <empty/>
    </element>
  </define>
  <define name="c">
    <element name="c">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(character) represents a character.</a:documentation>
      <ref name="macro.xtext"/>
      <ref name="att.global.attributes"/>
      <ref name="att.segLike.attributes"/>
      <ref name="att.typed.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="att.global.analytic.attributes">
    <ref name="att.global.analytic.attribute.ana"/>
  </define>
  <define name="att.global.analytic.attribute.ana">
    <optional>
      <attribute name="ana">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(analysis) indicates one or more elements containing interpretations of the
element on which the ana attribute appears.</a:documentation>
        <list>
          <data type="anyURI"/>
          <zeroOrMore>
            <data type="anyURI"/>
          </zeroOrMore>
        </list>
      </attribute>
    </optional>
  </define>
  <define name="model.teiHeaderPart">
    <choice>
      <ref name="encodingDesc"/>
      <ref name="profileDesc"/>
    </choice>
  </define>
  <define name="teiHeader">
    <element name="teiHeader">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(TEI Header) supplies the descriptive and declarative information making up an electronic title page
    prefixed to every TEI-conformant text.</a:documentation>
      <group xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <ref name="fileDesc"/>
        <zeroOrMore>
          <ref name="model.teiHeaderPart"/>
        </zeroOrMore>
        <optional>
          <ref name="revisionDesc"/>
        </optional>
      </group>
      <s:pattern xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns="http://www.tei-c.org/ns/1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="isoHeader-title">
        <s:rule context="tei:teiHeader">
          <s:assert test="tei:fileDesc/tei:titleStmt/tei:title[@i:meta='introductoryTitle']">
		      An introductory component of the title is expected
		    </s:assert>
          <s:assert test="tei:fileDesc/tei:titleStmt/tei:title[@i:meta='mainTitle']">
		      A main component of the title is expected
		    </s:assert>
          <s:assert test="tei:fileDesc/tei:titleStmt/tei:respStmt/tei:name">
		      No respStmt has been provided, giving SC/TC committee numbers
		  </s:assert>
          <s:assert test="tei:fileDesc/tei:publicationStmt/tei:idno[@i:meta='serialNumber']">
		  an idno of type serialNumber is expected</s:assert>
          <s:assert test="tei:fileDesc/tei:publicationStmt/tei:idno[@i:meta='stage']">
		  an idno of type stage is expected</s:assert>
        </s:rule>
      </s:pattern>
      <optional>
        <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="type" a:defaultValue="text">
          <a:documentation>specifies the kind of document to which the header is attached, for example whether it
        is a corpus or individual text.
Sample values include: 1] text; 2] corpus</a:documentation>
          <data type="Name"/>
        </attribute>
      </optional>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="fileDesc">
    <element name="fileDesc">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(file description) contains a full bibliographic description of an electronic file.</a:documentation>
      <group xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <group>
          <ref name="titleStmt"/>
          <optional>
            <ref name="editionStmt"/>
          </optional>
          <optional>
            <ref name="extent"/>
          </optional>
          <ref name="publicationStmt"/>
          <optional>
            <ref name="seriesStmt"/>
          </optional>
          <optional>
            <ref name="notesStmt"/>
          </optional>
        </group>
        <oneOrMore>
          <ref name="sourceDesc"/>
        </oneOrMore>
      </group>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="titleStmt">
    <element name="titleStmt">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(title statement) groups information about the title of a work and those responsible for its intellectual
    content.</a:documentation>
      <group xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <oneOrMore>
          <ref name="title"/>
        </oneOrMore>
        <zeroOrMore>
          <ref name="model.respLike"/>
        </zeroOrMore>
      </group>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="sponsor">
    <element name="sponsor">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the name of a sponsoring organization or institution.</a:documentation>
      <ref name="macro.phraseSeq.limited"/>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="funder">
    <element name="funder">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(funding body) specifies the name of an individual, institution, or organization responsible for the
    funding of a project or text.</a:documentation>
      <ref name="macro.phraseSeq.limited"/>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="principal">
    <element name="principal">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(principal researcher) supplies the name of the principal researcher responsible for the
creation of an electronic text.</a:documentation>
      <ref name="macro.phraseSeq.limited"/>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="editionStmt">
    <element name="editionStmt">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(edition statement) groups information relating to one edition of a text.</a:documentation>
      <choice xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <oneOrMore>
          <ref name="model.pLike"/>
        </oneOrMore>
        <group>
          <ref name="edition"/>
          <zeroOrMore>
            <ref name="respStmt"/>
          </zeroOrMore>
        </group>
      </choice>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="edition">
    <element name="edition">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(edition) describes the particularities of one edition of a text.</a:documentation>
      <ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="extent">
    <element name="extent">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">describes the approximate size of a text as stored on some carrier medium, whether digital
    or non-digital, specified in any convenient units.</a:documentation>
      <ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="publicationStmt">
    <element name="publicationStmt">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(publication statement) groups information concerning the publication or distribution of an electronic or other
    text. </a:documentation>
      <choice xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <oneOrMore>
          <ref name="model.pLike"/>
        </oneOrMore>
        <oneOrMore>
          <ref name="model.publicationStmtPart"/>
        </oneOrMore>
      </choice>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="distributor">
    <element name="distributor">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">supplies the name of a person or other agency responsible for the
distribution of a text.</a:documentation>
      <ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="authority">
    <element name="authority">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(release authority) supplies the name of a person or other agency responsible for
  making an electronic file available, other than a publisher or
  distributor.</a:documentation>
      <choice>
        <value>ABNT</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>AENOR</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>AFNOR</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>ANSI</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>ASRO</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>AZSTAND</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>BDS</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>BELST</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>BIS</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>BPS</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>BSI</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>BSJ</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>BSN</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>CNI</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>CODINORM</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>CSK</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>CYS</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>DGN</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>DIGENOR</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>DIN</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>DS</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>DSM</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>DSSU</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>ELOT</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>EOS</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>EVS</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>FONDONORMA</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>GOST-R</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>HZN</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>IANOR</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>ICONTEC</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>INDECOPI</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>INEN</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>INN</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>INNORPI</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>INTECO</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>IPQ</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>IRAM</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>ISIRI</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>ISS</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>IST</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>ITCHKSAR</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>JISC</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>KATS</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>KAZMEMST</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>KEBS</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>LIBNOR</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>LST</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>MASM</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>MSA</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>MSZT</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>NBN</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>NC</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>NEN</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>NSAI</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>ON</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>PKN</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>PSQCA</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>QSAE</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>SA</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>SABS</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>SAC</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>SARM</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>SASO</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>SCC</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>SEE</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>SFS</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>SII</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>SIS</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>SIST</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>SLSI</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>SN</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>SNIMA</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>SNV</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>SNZ</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>SON</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>SPRING-SG</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>SUTN</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>TCVN</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>TISI</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>TSE</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>TTBS</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>UNI</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <value>UNIT</value>
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
      </choice>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="idno">
    <element name="idno">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(identifier) supplies any form of identifier used to identify some object,
  such as a bibliographic item, a person, a title, an organization,
  etc. in a standardized way.</a:documentation>
      <rng:text xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns="http://www.tei-c.org/ns/1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0"/>
      <optional>
        <attribute name="type">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          <choice>
            <value>wgNumber</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
            <value>serialNumber</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
            <value>documentNumber</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
            <value>partNumber</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
            <value>draftNumber</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
            <value>ISO</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
            <value>IEC</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
            <value>stage</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
            <value>supplNumber</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
            <value>corrNumber</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
            <value>corrType</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
            <value>corrYear</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
            <value>docNumber</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
            <value>docPartNumber</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
            <value>documentType</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
            <value>parts</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
            <value>supplType</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
            <value>supplYear</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          </choice>
        </attribute>
      </optional>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="availability">
    <element name="availability">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">supplies information about the availability of a text, for example any restrictions on its
    use or distribution, its copyright status, etc.</a:documentation>
      <oneOrMore xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <ref name="model.pLike"/>
      </oneOrMore>
      <ref name="att.global.attributes"/>
      <ref name="att.declarable.attributes"/>
      <optional>
        <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="status" a:defaultValue="unknown">
          <a:documentation>supplies a code identifying the current availability of the text. </a:documentation>
          <choice>
            <value>free</value>
            <a:documentation>the text is freely available. </a:documentation>
            <value>unknown</value>
            <a:documentation>the status of the text is unknown. </a:documentation>
            <value>restricted</value>
            <a:documentation>the text is not freely available. </a:documentation>
          </choice>
        </attribute>
      </optional>
      <empty/>
    </element>
  </define>
  <define name="seriesStmt">
    <element name="seriesStmt">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(series statement) groups information about the series, if any, to which a publication belongs.</a:documentation>
      <choice xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <oneOrMore>
          <ref name="model.pLike"/>
        </oneOrMore>
        <group>
          <oneOrMore>
            <ref name="title"/>
          </oneOrMore>
          <zeroOrMore>
            <choice>
              <ref name="idno"/>
              <ref name="respStmt"/>
            </choice>
          </zeroOrMore>
        </group>
      </choice>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="notesStmt">
    <element name="notesStmt">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(notes statement) collects together any notes providing information about a text additional to that recorded
    in other parts of the bibliographic description.</a:documentation>
      <oneOrMore xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <ref name="model.noteLike"/>
      </oneOrMore>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="model.sourceDescPart">
    <notAllowed/>
  </define>
  <define name="sourceDesc">
    <element name="sourceDesc">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(source description) describes the source from which an electronic text was derived or generated, typically a
    bibliographic description in the case of a digitized text, or a phrase such as "born digital"
    for a text which has no previous existence.</a:documentation>
      <choice xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <oneOrMore>
          <ref name="model.pLike"/>
        </oneOrMore>
        <oneOrMore>
          <choice>
            <ref name="model.biblLike"/>
            <ref name="model.sourceDescPart"/>
            <ref name="model.listLike"/>
          </choice>
        </oneOrMore>
      </choice>
      <ref name="att.global.attributes"/>
      <ref name="att.declarable.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="biblFull">
    <element name="biblFull">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(fully-structured bibliographic citation) contains a fully-structured bibliographic citation, in which all components of the TEI file
    description are present.</a:documentation>
      <group xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <group>
          <ref name="titleStmt"/>
          <optional>
            <ref name="editionStmt"/>
          </optional>
          <optional>
            <ref name="extent"/>
          </optional>
          <ref name="publicationStmt"/>
          <optional>
            <ref name="seriesStmt"/>
          </optional>
          <optional>
            <ref name="notesStmt"/>
          </optional>
        </group>
        <zeroOrMore>
          <ref name="sourceDesc"/>
        </zeroOrMore>
      </group>
      <ref name="att.global.attributes"/>
      <ref name="att.declarable.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="model.encodingDescPart">
    <choice>
      <ref name="projectDesc"/>
      <ref name="refsDecl"/>
      <ref name="classDecl"/>
      <ref name="appInfo"/>
    </choice>
  </define>
  <define name="encodingDesc">
    <element name="encodingDesc">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(encoding description) documents the relationship between an electronic text and the
source or sources from which it was derived.</a:documentation>
      <group xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <oneOrMore>
          <choice>
            <ref name="model.encodingDescPart"/>
            <ref name="model.pLike"/>
          </choice>
        </oneOrMore>
      </group>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="projectDesc">
    <element name="projectDesc">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(project description) describes in detail the aim or purpose for which an electronic file was encoded, together
    with any other relevant information concerning the process by which it was assembled or
    collected.</a:documentation>
      <oneOrMore xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <ref name="model.pLike"/>
      </oneOrMore>
      <ref name="att.global.attributes"/>
      <ref name="att.declarable.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="refsDecl">
    <element name="refsDecl">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(references declaration) specifies how canonical references are constructed for this
  text.</a:documentation>
      <oneOrMore xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <ref name="model.pLike"/>
      </oneOrMore>
      <ref name="att.global.attributes"/>
      <ref name="att.declarable.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="classDecl">
    <element name="classDecl">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(classification declarations) contains one or more taxonomies defining any classificatory
codes used elsewhere in the text.</a:documentation>
      <oneOrMore xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <ref name="taxonomy"/>
      </oneOrMore>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="taxonomy">
    <element name="taxonomy">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">defines a typology used to classify texts either implicitly, by means of a bibliographic
    citation, or explicitly by a structured taxonomy.</a:documentation>
      <choice xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <zeroOrMore>
          <ref name="model.glossLike"/>
        </zeroOrMore>
        <oneOrMore>
          <ref name="category"/>
        </oneOrMore>
        <group>
          <group>
            <ref name="model.biblLike"/>
          </group>
          <zeroOrMore>
            <ref name="category"/>
          </zeroOrMore>
        </group>
      </choice>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="category">
    <element name="category">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains an individual descriptive category, possibly nested within a superordinate
    category, within a user-defined taxonomy.</a:documentation>
      <group xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <choice>
          <oneOrMore>
            <ref name="catDesc"/>
          </oneOrMore>
          <zeroOrMore>
            <ref name="model.glossLike"/>
          </zeroOrMore>
        </choice>
        <zeroOrMore>
          <ref name="category"/>
        </zeroOrMore>
      </group>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="catDesc">
    <element name="catDesc">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(category description) describes some category within a taxonomy or text typology, either in the form of a brief
    prose description or in terms of the situational parameters used by the TEI formal textDesc.</a:documentation>
      <zeroOrMore xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <choice>
          <text/>
          <ref name="model.limitedPhrase"/>
          <ref name="model.catDescPart"/>
        </choice>
      </zeroOrMore>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="appInfo">
    <element name="appInfo">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(application information) records information about an application which has
  edited the TEI file. </a:documentation>
      <oneOrMore xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <ref name="model.applicationLike"/>
      </oneOrMore>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="application">
    <element name="application">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">provides information about an application which has acted upon the document.</a:documentation>
      <group xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <zeroOrMore>
          <ref name="model.labelLike"/>
        </zeroOrMore>
        <choice>
          <zeroOrMore>
            <ref name="model.ptrLike"/>
          </zeroOrMore>
          <zeroOrMore>
            <ref name="model.pLike"/>
          </zeroOrMore>
        </choice>
      </group>
      <attribute name="ident">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Supplies an identifier for the application, independent of its version number or display
        name.</a:documentation>
        <data type="Name"/>
      </attribute>
      <attribute name="version">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Supplies a version number for the application, independent of its identifier or display
        name.</a:documentation>
        <data type="token">
          <param name="pattern">[\d]+[a-z]*[\d]*(\.[\d]+[a-z]*[\d]*){0,3}</param>
        </data>
      </attribute>
      <ref name="att.global.attributes"/>
      <ref name="att.typed.attributes"/>
      <ref name="att.datable.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="model.applicationLike">
    <choice>
      <ref name="application"/>
    </choice>
  </define>
  <define name="model.profileDescPart">
    <choice>
      <ref name="creation"/>
      <ref name="langUsage"/>
      <ref name="textClass"/>
    </choice>
  </define>
  <define name="profileDesc">
    <element name="profileDesc">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(text-profile description) provides a detailed description of non-bibliographic aspects of a text, specifically the
    languages and sublanguages used, the situation in which it was produced, the participants and
    their setting.</a:documentation>
      <group xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <zeroOrMore>
          <ref name="model.profileDescPart"/>
        </zeroOrMore>
      </group>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="creation">
    <element name="creation">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains information about the creation of a text.</a:documentation>
      <ref name="macro.phraseSeq.limited"/>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="langUsage">
    <element name="langUsage">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(language usage) describes the languages, sublanguages, registers, dialects, etc.
represented within a text.</a:documentation>
      <oneOrMore xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <ref name="language"/>
      </oneOrMore>
      <ref name="att.global.attributes"/>
      <ref name="att.declarable.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="language">
    <element name="language">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">characterizes a single language or sublanguage used within a text.</a:documentation>
      <ref name="macro.phraseSeq.limited"/>
      <ref name="att.global.attributes"/>
      <attribute name="ident">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(identifier) Supplies a language code constructed as defined in BCP 47 which is used to identify the
        language documented by this element, and which is referenced by the global
        xml:lang attribute.</a:documentation>
        <data type="language"/>
      </attribute>
      <optional>
        <attribute name="usage">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the approximate percentage (by volume) of the text which uses this language. </a:documentation>
          <data type="nonNegativeInteger">
            <param name="maxInclusive">100</param>
          </data>
        </attribute>
      </optional>
      <empty/>
    </element>
  </define>
  <define name="textClass">
    <element name="textClass">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(text classification) groups information which describes the nature or topic of a text in terms of a standard
    classification scheme, thesaurus, etc.</a:documentation>
      <zeroOrMore xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <choice>
          <ref name="classCode"/>
          <ref name="catRef"/>
          <ref name="keywords"/>
        </choice>
      </zeroOrMore>
      <ref name="att.global.attributes"/>
      <ref name="att.declarable.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="keywords">
    <element name="keywords">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a list of keywords or phrases identifying the topic or nature of a text.</a:documentation>
      <choice xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <oneOrMore>
          <ref name="term"/>
        </oneOrMore>
        <ref name="list"/>
      </choice>
      <ref name="att.global.attributes"/>
      <attribute name="scheme">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">identifies the controlled vocabulary within which the set of keywords concerned is
        defined. </a:documentation>
        <data type="anyURI"/>
      </attribute>
      <empty/>
    </element>
  </define>
  <define name="classCode">
    <element name="classCode">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(classification code) contains the classification code used for this text in some standard classification system.</a:documentation>
      <ref name="macro.phraseSeq.limited"/>
      <ref name="att.global.attributes"/>
      <attribute name="scheme">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">identifies the classification system or taxonomy in use.</a:documentation>
        <data type="anyURI"/>
      </attribute>
      <empty/>
    </element>
  </define>
  <define name="catRef">
    <element name="catRef">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(category reference) specifies one or more defined categories within some taxonomy or text typology.</a:documentation>
      <rng:empty xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns="http://www.tei-c.org/ns/1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0"/>
      <ref name="att.global.attributes"/>
      <ref name="att.pointing.attributes"/>
      <optional>
        <attribute name="scheme">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">identifies the classification scheme within which the set of categories concerned is
        defined </a:documentation>
          <data type="anyURI"/>
        </attribute>
      </optional>
      <empty/>
    </element>
  </define>
  <define name="revisionDesc">
    <element name="revisionDesc">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(revision description) summarizes the revision history for a file.</a:documentation>
      <choice xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <ref name="list"/>
        <oneOrMore>
          <ref name="change"/>
        </oneOrMore>
      </choice>
      <ref name="att.global.attributes"/>
      <ref name="att.docStatus.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="change">
    <element name="change">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">summarizes a particular change or correction made to a particular version of an electronic
    text which is shared between several researchers.</a:documentation>
      <zeroOrMore xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <choice>
          <text/>
          <ref name="model.limitedPhrase"/>
          <ref name="model.inter"/>
          <ref name="model.global"/>
        </choice>
      </zeroOrMore>
      <ref name="att.global.attributes"/>
      <ref name="att.ascribed.attributes"/>
      <ref name="att.datable.attributes"/>
      <ref name="att.docStatus.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="TEI">
    <element name="TEI">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(TEI document) contains a single TEI-conformant document,
comprising a TEI header and a text, either in isolation or as part of a
teiCorpus element.</a:documentation>
      <group xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <ref name="teiHeader"/>
        <choice>
          <group>
            <oneOrMore>
              <ref name="model.resourceLike"/>
            </oneOrMore>
            <optional>
              <ref name="text"/>
            </optional>
          </group>
          <ref name="text"/>
        </choice>
      </group>
      <ns xmlns="http://purl.oclc.org/dsdl/schematron" prefix="tei" uri="http://www.tei-c.org/ns/1.0"/>
      <ns xmlns="http://purl.oclc.org/dsdl/schematron" prefix="rng" uri="http://relaxng.org/ns/structure/1.0"/>
      <ref name="att.global.attributes"/>
      <optional>
        <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="version" a:defaultValue="5.0">
          <a:documentation>specifies the version number of the TEI Guidelines against
      which this document is valid.</a:documentation>
          <data type="token">
            <param name="pattern">[\d]+(\.[\d]+){0,2}</param>
          </data>
        </attribute>
      </optional>
      <empty/>
    </element>
  </define>
  <define name="text">
    <element name="text">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a single text of any kind, whether unitary or composite, for example a poem or
    drama, a collection of essays, a novel, a dictionary, or a corpus sample.</a:documentation>
      <group xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <zeroOrMore>
          <ref name="model.global"/>
        </zeroOrMore>
        <optional>
          <ref name="front"/>
          <zeroOrMore>
            <ref name="model.global"/>
          </zeroOrMore>
        </optional>
        <choice>
          <ref name="body"/>
          <ref name="group"/>
        </choice>
        <zeroOrMore>
          <ref name="model.global"/>
        </zeroOrMore>
        <optional>
          <ref name="back"/>
          <zeroOrMore>
            <ref name="model.global"/>
          </zeroOrMore>
        </optional>
      </group>
      <ns xmlns="http://www.ascc.net/xml/schematron" prefix="i" uri="http://www.iso.org/ns/1.0"/>
      <ns xmlns="http://www.ascc.net/xml/schematron" prefix="tei" uri="http://www.tei-c.org/ns/1.0"/>
      <pattern xmlns="http://www.ascc.net/xml/schematron" name="text-constraint-isoStructure">
        <rule context="tei:text">
          <s:assert xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns="http://www.tei-c.org/ns/1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0" test="tei:front/tei:div[@type='foreword']">
		A Foreword clause in the front matter is mandatory</s:assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" name="text-constraint-isoStructure">
        <rule context="tei:text">
          <s:assert xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns="http://www.tei-c.org/ns/1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0" test="tei:body/tei:div[@type='scope']">
		A Scope clause in the body is mandatory</s:assert>
        </rule>
      </pattern>
      <ref name="att.global.attributes"/>
      <ref name="att.declaring.attributes"/>
      <ref name="att.typed.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="body">
    <element name="body">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(text body) contains the whole body of a single unitary text, excluding any front or back matter.</a:documentation>
      <group xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <zeroOrMore>
          <ref name="model.global"/>
        </zeroOrMore>
        <optional>
          <group>
            <group>
              <ref name="model.divTop"/>
            </group>
            <zeroOrMore>
              <choice>
                <ref name="model.global"/>
                <ref name="model.divTop"/>
              </choice>
            </zeroOrMore>
          </group>
        </optional>
        <optional>
          <group>
            <group>
              <ref name="model.divGenLike"/>
            </group>
            <zeroOrMore>
              <choice>
                <ref name="model.global"/>
                <ref name="model.divGenLike"/>
              </choice>
            </zeroOrMore>
          </group>
        </optional>
        <group>
          <choice>
            <oneOrMore>
              <group>
                <group>
                  <ref name="model.divLike"/>
                </group>
                <zeroOrMore>
                  <choice>
                    <ref name="model.global"/>
                    <ref name="model.divGenLike"/>
                  </choice>
                </zeroOrMore>
              </group>
            </oneOrMore>
            <oneOrMore>
              <group>
                <group>
                  <ref name="model.div1Like"/>
                </group>
                <zeroOrMore>
                  <choice>
                    <ref name="model.global"/>
                    <ref name="model.divGenLike"/>
                  </choice>
                </zeroOrMore>
              </group>
            </oneOrMore>
            <group>
              <oneOrMore>
                <group>
                  <ref name="model.common"/>
                </group>
                <zeroOrMore>
                  <ref name="model.global"/>
                </zeroOrMore>
              </oneOrMore>
              <optional>
                <choice>
                  <oneOrMore>
                    <group>
                      <group>
                        <ref name="model.divLike"/>
                      </group>
                      <zeroOrMore>
                        <choice>
                          <ref name="model.global"/>
                          <ref name="model.divGenLike"/>
                        </choice>
                      </zeroOrMore>
                    </group>
                  </oneOrMore>
                  <oneOrMore>
                    <group>
                      <group>
                        <ref name="model.div1Like"/>
                      </group>
                      <zeroOrMore>
                        <choice>
                          <ref name="model.global"/>
                          <ref name="model.divGenLike"/>
                        </choice>
                      </zeroOrMore>
                    </group>
                  </oneOrMore>
                </choice>
              </optional>
            </group>
          </choice>
        </group>
        <zeroOrMore>
          <group>
            <group>
              <ref name="model.divBottom"/>
            </group>
            <zeroOrMore>
              <ref name="model.global"/>
            </zeroOrMore>
          </group>
        </zeroOrMore>
      </group>
      <ref name="att.global.attributes"/>
      <ref name="att.declaring.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="group">
    <element name="group">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains the body of a composite text, grouping together a sequence of distinct texts (or
    groups of such texts) which are regarded as a unit for some purpose, for example the collected
    works of an author, a sequence of prose essays, etc.</a:documentation>
      <group xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <zeroOrMore>
          <choice>
            <ref name="model.divTop"/>
            <ref name="model.global"/>
          </choice>
        </zeroOrMore>
        <group>
          <choice>
            <ref name="text"/>
            <ref name="group"/>
          </choice>
          <zeroOrMore>
            <choice>
              <ref name="text"/>
              <ref name="group"/>
              <ref name="model.global"/>
            </choice>
          </zeroOrMore>
        </group>
        <zeroOrMore>
          <ref name="model.divBottom"/>
        </zeroOrMore>
      </group>
      <ref name="att.global.attributes"/>
      <ref name="att.declaring.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="div">
    <element name="div">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(text division) contains a subdivision of the front, body, or back of a text.</a:documentation>
      <group xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <zeroOrMore>
          <choice>
            <ref name="model.divTop"/>
            <ref name="model.global"/>
          </choice>
        </zeroOrMore>
        <optional>
          <choice>
            <group>
              <oneOrMore>
                <choice>
                  <ref name="model.divLike"/>
                  <ref name="model.divGenLike"/>
                </choice>
                <zeroOrMore>
                  <ref name="model.global"/>
                </zeroOrMore>
              </oneOrMore>
            </group>
            <group>
              <oneOrMore>
                <group>
                  <ref name="model.common"/>
                </group>
                <zeroOrMore>
                  <ref name="model.global"/>
                </zeroOrMore>
              </oneOrMore>
              <zeroOrMore>
                <choice>
                  <ref name="model.divLike"/>
                  <ref name="model.divGenLike"/>
                </choice>
                <zeroOrMore>
                  <ref name="model.global"/>
                </zeroOrMore>
              </zeroOrMore>
            </group>
          </choice>
          <zeroOrMore>
            <group>
              <ref name="model.divBottom"/>
            </group>
            <zeroOrMore>
              <ref name="model.global"/>
            </zeroOrMore>
          </zeroOrMore>
        </optional>
      </group>
      <pattern xmlns="http://www.ascc.net/xml/schematron" name="div-constraint-isoDiv">
        <rule context="tei:div">
          <s:assert xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns="http://www.tei-c.org/ns/1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0" test="not(tei:div) or count(tei:div)&gt;1">a clause must contain at least two subclauses</s:assert>
        </rule>
      </pattern>
      <optional>
        <attribute name="type">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          <choice>
            <value>annex</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Annex</a:documentation>
            <value>annexSection</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Annex section</a:documentation>
            <value>bibliography</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Bibliography</a:documentation>
            <value>classification</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Classification</a:documentation>
            <value>closed</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Closed</a:documentation>
            <value>foreword</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Foreword</a:documentation>
            <value>headless</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">No heading</a:documentation>
            <value>introduction</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Introduction</a:documentation>
            <value>marking</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Marking</a:documentation>
            <value>normativeReferences</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Normative references</a:documentation>
            <value>requirements</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Requirements</a:documentation>
            <value>sampling</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Sampling</a:documentation>
            <value>scope</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Scope of standard</a:documentation>
            <value>symbolsAndTerms</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Symbols and terms</a:documentation>
            <value>termHeading</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Terminology Heading</a:documentation>
            <value>termsAndDefinitions</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Termsand definitions</a:documentation>
            <value>test</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Test</a:documentation>
            <value>toc</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">TOC</a:documentation>
          </choice>
        </attribute>
      </optional>
      <ref name="att.global.attributes"/>
      <ref name="att.divLike.attributes"/>
      <ref name="att.typed.attribute.subtype"/>
      <ref name="att.declaring.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="titlePart">
    <element name="titlePart">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a subsection or division of the title of a work, as
indicated on a title page.</a:documentation>
      <ref name="macro.paraContent"/>
      <ref name="att.global.attributes"/>
      <optional>
        <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="type" a:defaultValue="main">
          <a:documentation>specifies the role of this subdivision of the title.
Suggested values include: 1] main; 2] sub(subordinate) ; 3] alt(alternate) ; 4] short; 5] desc(descriptive) </a:documentation>
          <choice>
            <value>main</value>
            <a:documentation>main title of the work
        </a:documentation>
            <value>sub</value>
            <a:documentation>(subordinate) subtitle  of the work
        </a:documentation>
            <value>alt</value>
            <a:documentation>(alternate) alternative title  of the work
        </a:documentation>
            <value>short</value>
            <a:documentation>abbreviated form of title</a:documentation>
            <value>desc</value>
            <a:documentation>(descriptive) descriptive paraphrase of the work 
   </a:documentation>
            <data type="Name"/>
          </choice>
        </attribute>
      </optional>
      <empty/>
    </element>
  </define>
  <define name="front">
    <element name="front">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(front matter) contains any prefatory matter (headers,
title page, prefaces, dedications, etc.)
found  at the start of a document, before the main body.</a:documentation>
      <group xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <zeroOrMore>
          <choice>
            <ref name="model.frontPart"/>
            <ref name="model.pLike.front"/>
            <ref name="model.global"/>
          </choice>
        </zeroOrMore>
        <group>
          <optional>
            <choice>
              <group>
                <group>
                  <ref name="model.div1Like"/>
                </group>
                <zeroOrMore>
                  <choice>
                    <ref name="model.frontPart"/>
                    <ref name="model.div1Like"/>
                    <ref name="model.global"/>
                  </choice>
                </zeroOrMore>
              </group>
              <group>
                <group>
                  <ref name="model.divLike"/>
                </group>
                <zeroOrMore>
                  <choice>
                    <ref name="model.frontPart"/>
                    <ref name="model.divLike"/>
                    <ref name="model.global"/>
                  </choice>
                </zeroOrMore>
              </group>
            </choice>
          </optional>
        </group>
        <group>
          <optional>
            <group>
              <ref name="model.divBottomPart"/>
            </group>
            <zeroOrMore>
              <choice>
                <ref name="model.divBottomPart"/>
                <ref name="model.global"/>
              </choice>
            </zeroOrMore>
          </optional>
        </group>
      </group>
      <ref name="att.global.attributes"/>
      <ref name="att.declaring.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="back">
    <element name="back">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(back matter) contains any appendixes, etc. following the main part of a text.</a:documentation>
      <group xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <zeroOrMore>
          <choice>
            <ref name="model.frontPart"/>
            <ref name="model.pLike.front"/>
            <ref name="model.global"/>
          </choice>
        </zeroOrMore>
        <group>
          <optional>
            <choice>
              <group>
                <group>
                  <ref name="model.div1Like"/>
                </group>
                <zeroOrMore>
                  <choice>
                    <ref name="model.frontPart"/>
                    <ref name="model.div1Like"/>
                    <ref name="model.global"/>
                  </choice>
                </zeroOrMore>
              </group>
              <group>
                <group>
                  <ref name="model.divLike"/>
                </group>
                <zeroOrMore>
                  <choice>
                    <ref name="model.frontPart"/>
                    <ref name="model.divLike"/>
                    <ref name="model.global"/>
                  </choice>
                </zeroOrMore>
              </group>
            </choice>
          </optional>
        </group>
        <group>
          <optional>
            <group>
              <ref name="model.divBottomPart"/>
            </group>
            <zeroOrMore>
              <choice>
                <ref name="model.divBottomPart"/>
                <ref name="model.global"/>
              </choice>
            </zeroOrMore>
          </optional>
        </group>
      </group>
      <ref name="att.global.attributes"/>
      <ref name="att.declaring.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="formula">
    <element name="formula">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a mathematical or other formula.</a:documentation>
      <oneOrMore xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <choice>
          <ref name="macro.xtext"/>
          <ref name="model.global"/>
          <ref name="model.hiLike"/>
          <ref name="model.graphicLike"/>
          <ref name="mathml.math"/>
        </choice>
      </oneOrMore>
      <optional>
        <attribute name="notation">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">supplies the name of a previously defined notation used for the content of the element.</a:documentation>
          <data type="anyURI"/>
        </attribute>
      </optional>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="figure">
    <element name="figure">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">groups elements representing or containing graphic information such as an illustration or
    figure.</a:documentation>
      <zeroOrMore xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <choice>
          <ref name="model.headLike"/>
          <ref name="model.pLike"/>
          <ref name="figDesc"/>
          <ref name="model.graphicLike"/>
          <ref name="model.egLike"/>
          <ref name="model.global"/>
        </choice>
      </zeroOrMore>
      <ref name="att.global.attributes"/>
      <ref name="att.placement.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="figDesc">
    <element name="figDesc">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(description of figure) contains a brief prose description of the appearance or content
of a graphic figure, for use when documenting an image without
displaying it.</a:documentation>
      <ref name="macro.limitedContent"/>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="att.global.facs.attributes">
    <ref name="att.global.facs.attribute.facs"/>
  </define>
  <define name="att.global.facs.attribute.facs">
    <optional>
      <attribute name="facs">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(facsimile) points to all or part of an image which corresponds with the content of the element.</a:documentation>
        <list>
          <data type="anyURI"/>
          <zeroOrMore>
            <data type="anyURI"/>
          </zeroOrMore>
        </list>
      </attribute>
    </optional>
  </define>
  <define name="addSpan">
    <element name="addSpan">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(added span of text) marks the beginning of a longer sequence of text added by an
  author, scribe, annotator or corrector (see also add).</a:documentation>
      <rng:empty xmlns:sch="http://purl.oclc.org/dsdl/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns="http://www.tei-c.org/ns/1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0"/>
      <pattern xmlns="http://purl.oclc.org/dsdl/schematron" id="addSpan-constraint-spanTo">
        <rule context="tei:addSpan">
          <sch:assert xmlns:sch="http://purl.oclc.org/dsdl/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns="http://www.tei-c.org/ns/1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0" test="@spanTo">The spanTo= attribute of <sch:name/> is required.</sch:assert>
        </rule>
      </pattern>
      <pattern xmlns="http://purl.oclc.org/dsdl/schematron" id="addSpan-constraint-spanTo_fr">
        <rule context="tei:addSpan">
          <sch:assert xmlns:sch="http://purl.oclc.org/dsdl/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns="http://www.tei-c.org/ns/1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0" test="@spanTo">L'attribut spanTo est requis.</sch:assert>
        </rule>
      </pattern>
      <ref name="att.global.attributes"/>
      <ref name="att.datable.attributes"/>
      <ref name="att.transcriptional.attributes"/>
      <ref name="att.placement.attributes"/>
      <ref name="att.typed.attributes"/>
      <ref name="att.spanning.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="delSpan">
    <element name="delSpan">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(deleted span of text) marks the beginning of a longer sequence of text deleted,
marked as deleted, or otherwise signaled as superfluous or spurious by an
author, scribe, annotator, or corrector.</a:documentation>
      <rng:empty xmlns:sch="http://purl.oclc.org/dsdl/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns="http://www.tei-c.org/ns/1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0"/>
      <pattern xmlns="http://purl.oclc.org/dsdl/schematron" id="delSpan-constraint-spanTo">
        <rule context="tei:delSpan">
          <sch:assert xmlns:sch="http://purl.oclc.org/dsdl/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns="http://www.tei-c.org/ns/1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0" test="@spanTo">The spanTo= attribute of <sch:name/>
      is required.</sch:assert>
        </rule>
      </pattern>
      <pattern xmlns="http://purl.oclc.org/dsdl/schematron" id="delSpan-constraint-spanTo_fr">
        <rule context="tei:delSpan">
          <sch:assert xmlns:sch="http://purl.oclc.org/dsdl/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns="http://www.tei-c.org/ns/1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0" test="@spanTo">L'attribut spanTo est requis.</sch:assert>
        </rule>
      </pattern>
      <ref name="att.global.attributes"/>
      <ref name="att.datable.attributes"/>
      <ref name="att.transcriptional.attributes"/>
      <ref name="att.typed.attributes"/>
      <ref name="att.spanning.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="fw">
    <element name="fw">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(forme work) contains a running head (e.g. a header, footer), catchword, or
  similar material appearing on the current page.</a:documentation>
      <oneOrMore xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <choice>
          <ref name="model.inter"/>
          <ref name="model.pLike"/>
        </choice>
      </oneOrMore>
      <optional>
        <attribute name="type">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">classifies the material encoded according to some useful typology.
Sample values include: 1] header; 2] footer; 3] pageNum(page number) ; 4] lineNum(line number) ; 5] sig(signature) ; 6] catch(catchword) </a:documentation>
          <data type="Name"/>
        </attribute>
      </optional>
      <ref name="att.global.attributes"/>
      <ref name="att.placement.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="orgName">
    <element name="orgName">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(organization name) contains an organizational name. </a:documentation>
      <ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <ref name="att.datable.attributes"/>
      <ref name="att.editLike.attributes"/>
      <ref name="att.personal.attributes"/>
      <ref name="att.typed.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="persName">
    <element name="persName">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(personal name) contains a proper noun or proper-noun phrase referring to a person, possibly including any
    or all of the person's forenames, surnames, honorifics, added names, etc.</a:documentation>
      <ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <ref name="att.datable.attributes"/>
      <ref name="att.editLike.attributes"/>
      <ref name="att.personal.attributes"/>
      <ref name="att.typed.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="surname">
    <element name="surname">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a family (inherited) name, as opposed to a given, baptismal, or nick name.</a:documentation>
      <ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <ref name="att.personal.attributes"/>
      <ref name="att.typed.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="forename">
    <element name="forename">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a forename, given or baptismal name.</a:documentation>
      <ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <ref name="att.personal.attributes"/>
      <ref name="att.typed.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="listEvent">
    <element name="listEvent">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(list of events) contains a list of descriptions, each of which provides information
    about an identifiable event. </a:documentation>
      <group xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <zeroOrMore>
          <ref name="model.headLike"/>
        </zeroOrMore>
        <oneOrMore>
          <ref name="listEvent"/>
        </oneOrMore>
      </group>
      <ref name="att.global.attributes"/>
      <ref name="att.typed.attributes"/>
      <ref name="att.declarable.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="org">
    <element name="org">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(organization) provides information about an identifiable organization such as a business, a tribe, or
        any other grouping of people.</a:documentation>
      <group xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <zeroOrMore>
          <ref name="model.headLike"/>
        </zeroOrMore>
        <choice>
          <group>
            <zeroOrMore>
              <ref name="model.pLike"/>
            </zeroOrMore>
          </group>
          <zeroOrMore>
            <choice>
              <ref name="model.labelLike"/>
              <ref name="model.nameLike"/>
              <ref name="model.placeLike"/>
            </choice>
          </zeroOrMore>
        </choice>
        <zeroOrMore>
          <choice>
            <ref name="model.noteLike"/>
            <ref name="model.biblLike"/>
          </choice>
        </zeroOrMore>
        <zeroOrMore>
          <ref name="model.personLike"/>
        </zeroOrMore>
      </group>
      <ref name="att.global.attributes"/>
      <ref name="att.typed.attributes"/>
      <ref name="att.editLike.attributes"/>
      <optional>
        <attribute name="role">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies a primary role or classification for the organization.</a:documentation>
          <list>
            <data type="token">
              <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
            </data>
            <zeroOrMore>
              <data type="token">
                <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
              </data>
            </zeroOrMore>
          </list>
        </attribute>
      </optional>
      <empty/>
    </element>
  </define>
  <define name="model.persNamePart">
    <choice>
      <ref name="surname"/>
      <ref name="forename"/>
    </choice>
  </define>
  <define name="model.persNamePart_alternation">
    <choice>
      <ref name="surname"/>
      <ref name="forename"/>
    </choice>
  </define>
  <define name="model.persNamePart_sequence">
    <ref name="surname"/>
    <ref name="forename"/>
  </define>
  <define name="model.persNamePart_sequenceOptional">
    <optional>
      <ref name="surname"/>
    </optional>
    <optional>
      <ref name="forename"/>
    </optional>
  </define>
  <define name="model.persNamePart_sequenceOptionalRepeatable">
    <zeroOrMore>
      <ref name="surname"/>
    </zeroOrMore>
    <zeroOrMore>
      <ref name="forename"/>
    </zeroOrMore>
  </define>
  <define name="model.persNamePart_sequenceRepeatable">
    <oneOrMore>
      <ref name="surname"/>
    </oneOrMore>
    <oneOrMore>
      <ref name="forename"/>
    </oneOrMore>
  </define>
  <define name="att.datable.iso.attributes">
    <ref name="att.datable.iso.attribute.when-iso"/>
    <ref name="att.datable.iso.attribute.notBefore-iso"/>
    <ref name="att.datable.iso.attribute.notAfter-iso"/>
    <ref name="att.datable.iso.attribute.from-iso"/>
    <ref name="att.datable.iso.attribute.to-iso"/>
  </define>
  <define name="att.datable.iso.attribute.when-iso">
    <optional>
      <attribute name="when-iso">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">supplies the value of a date or time in a standard form.</a:documentation>
        <choice>
          <data type="date"/>
          <data type="gYear"/>
          <data type="gMonth"/>
          <data type="gDay"/>
          <data type="gYearMonth"/>
          <data type="gMonthDay"/>
          <data type="time"/>
          <data type="dateTime"/>
          <data type="token">
            <param name="pattern">[0-9.,DHMPRSTWYZ/:+\-]+</param>
          </data>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="att.datable.iso.attribute.notBefore-iso">
    <optional>
      <attribute name="notBefore-iso">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the earliest possible date for the event in standard form, e.g. yyyy-mm-dd.</a:documentation>
        <choice>
          <data type="date"/>
          <data type="gYear"/>
          <data type="gMonth"/>
          <data type="gDay"/>
          <data type="gYearMonth"/>
          <data type="gMonthDay"/>
          <data type="time"/>
          <data type="dateTime"/>
          <data type="token">
            <param name="pattern">[0-9.,DHMPRSTWYZ/:+\-]+</param>
          </data>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="att.datable.iso.attribute.notAfter-iso">
    <optional>
      <attribute name="notAfter-iso">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the latest possible date for the event in standard form, e.g. yyyy-mm-dd.</a:documentation>
        <choice>
          <data type="date"/>
          <data type="gYear"/>
          <data type="gMonth"/>
          <data type="gDay"/>
          <data type="gYearMonth"/>
          <data type="gMonthDay"/>
          <data type="time"/>
          <data type="dateTime"/>
          <data type="token">
            <param name="pattern">[0-9.,DHMPRSTWYZ/:+\-]+</param>
          </data>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="att.datable.iso.attribute.from-iso">
    <optional>
      <attribute name="from-iso">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the starting point of the period in standard form.</a:documentation>
        <choice>
          <data type="date"/>
          <data type="gYear"/>
          <data type="gMonth"/>
          <data type="gDay"/>
          <data type="gYearMonth"/>
          <data type="gMonthDay"/>
          <data type="time"/>
          <data type="dateTime"/>
          <data type="token">
            <param name="pattern">[0-9.,DHMPRSTWYZ/:+\-]+</param>
          </data>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="att.datable.iso.attribute.to-iso">
    <optional>
      <attribute name="to-iso">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the ending point of the period in standard form.</a:documentation>
        <choice>
          <data type="date"/>
          <data type="gYear"/>
          <data type="gMonth"/>
          <data type="gDay"/>
          <data type="gYearMonth"/>
          <data type="gMonthDay"/>
          <data type="time"/>
          <data type="dateTime"/>
          <data type="token">
            <param name="pattern">[0-9.,DHMPRSTWYZ/:+\-]+</param>
          </data>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="anchor">
    <element name="anchor">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(anchor point) attaches an identifier to a point within a text, whether or not it corresponds with a textual element.</a:documentation>
      <rng:empty xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns="http://www.tei-c.org/ns/1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0"/>
      <ref name="att.global.attributes"/>
      <ref name="att.typed.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="seg">
    <element name="seg">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(arbitrary segment) represents any segmentation of text below the chunk level.</a:documentation>
      <ref name="macro.paraContent"/>
      <ref name="att.global.attributes"/>
      <ref name="att.segLike.attributes"/>
      <ref name="att.typed.attributes"/>
      <ref name="att.responsibility.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="eg">
    <element name="eg">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(example) contains any kind of illustrative example. </a:documentation>
      <oneOrMore xmlns:sch="http://purl.oclc.org/dsdl/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <choice>
          <text/>
          <ref name="hi"/>
        </choice>
      </oneOrMore>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="code">
    <element name="code">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains literal code from some formal language such as a
programming language.</a:documentation>
      <rng:text xmlns:sch="http://purl.oclc.org/dsdl/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns="http://www.tei-c.org/ns/1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0"/>
      <ref name="att.global.attributes"/>
      <optional>
        <attribute name="lang">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(formal language) a name identifying the formal language in which  the
	code is expressed</a:documentation>
          <data type="token">
            <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
          </data>
        </attribute>
      </optional>
      <empty/>
    </element>
  </define>
  <define name="gi">
    <element name="gi">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(element name) contains the name (generic identifier) of an element.</a:documentation>
      <rng:text xmlns:sch="http://purl.oclc.org/dsdl/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns="http://www.tei-c.org/ns/1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0"/>
      <ref name="att.global.attributes"/>
      <optional>
        <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="scheme" a:defaultValue="TEI">
          <a:documentation>supplies the name of the scheme in which this name is defined.
Sample values include: 1] TEI(text encoding initiative) ; 2] DBK(docbook) ; 3] XX(unknown) ; 4] Schematron; 5] HTML</a:documentation>
          <data type="Name"/>
        </attribute>
      </optional>
      <empty/>
    </element>
  </define>
  <define name="idlang.attributes">
    <ref name="id.attributes"/>
    <ref name="lang.attributes"/>
  </define>
  <define name="id.attributes">
    <ref name="id.attribute.id"/>
  </define>
  <define name="id.attribute.id">
    <optional>
      <attribute name="id">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <text/>
      </attribute>
    </optional>
  </define>
  <define name="target-IDREF.attributes">
    <ref name="target-IDREF.attribute.target"/>
  </define>
  <define name="target-IDREF.attribute.target">
    <optional>
      <attribute name="target">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <text/>
      </attribute>
    </optional>
  </define>
  <define name="lang.attributes">
    <ref name="lang.attribute.xmllang"/>
  </define>
  <define name="lang.attribute.xmllang">
    <optional>
      <attribute name="xml:lang">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Indicates the language of the element content. The allowed values are
							found in IETF RFC 4646 or its successor. This attribute is optional for
							elements that use this attribute class. For a description, see the
							information at the martif element.</a:documentation>
        <text/>
      </attribute>
    </optional>
  </define>
  <define name="IDLangTgtDtyp.attributes">
    <ref name="lang.attributes"/>
    <ref name="id.attributes"/>
    <ref name="target-IDREF.attributes"/>
    <ref name="IDLangTgtDtyp.attribute.datatype"/>
  </define>
  <define name="IDLangTgtDtyp.attribute.datatype">
    <optional>
      <attribute name="datatype">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">The data type of plainText, or what is known as PCDATA.</a:documentation>
        <text/>
      </attribute>
    </optional>
  </define>
  <define name="wordObject">
    <element name="wordObject" ns="http://www.iso.org/ns/1.0">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Any Word-specific chunk of XML code</a:documentation>
      <oneOrMore xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <choice>
          <ref name="anyOOXML"/>
          <ref name="anyOLE"/>
          <ref name="anyVML"/>
        </choice>
      </oneOrMore>
      <empty/>
    </element>
  </define>
  <define name="footer">
    <element name="footer" ns="http://www.tei-c.org/ns/teidocx/1.0">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
      <rng:empty xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns="http://www.tei-c.org/ns/1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0"/>
      <optional>
        <attribute name="type">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          <text/>
        </attribute>
      </optional>
      <optional>
        <attribute name="ref">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          <text/>
        </attribute>
      </optional>
      <empty/>
    </element>
  </define>
  <define name="dynamicContent">
    <element name="dynamicContent" ns="http://www.tei-c.org/ns/teidocx/1.0">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
      <empty/>
      <optional>
        <attribute name="type">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          <text/>
        </attribute>
      </optional>
      <empty/>
    </element>
  </define>
  <define name="orientation">
    <element name="orientation" ns="http://www.tei-c.org/ns/teidocx/1.0">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
      <empty/>
      <optional>
        <attribute name="type">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          <text/>
        </attribute>
      </optional>
      <empty/>
    </element>
  </define>
  <define name="pageNumbering">
    <element name="pageNumbering" ns="http://www.tei-c.org/ns/teidocx/1.0">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
      <empty/>
      <optional>
        <attribute name="type">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          <text/>
        </attribute>
      </optional>
      <optional>
        <attribute name="start">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          <text/>
        </attribute>
      </optional>
      <empty/>
    </element>
  </define>
  <define name="header">
    <element name="header" ns="http://www.tei-c.org/ns/teidocx/1.0">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
      <rng:empty xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns="http://www.tei-c.org/ns/1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0"/>
      <optional>
        <attribute name="type">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          <text/>
        </attribute>
      </optional>
      <optional>
        <attribute name="ref">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          <text/>
        </attribute>
      </optional>
      <empty/>
    </element>
  </define>
  <define name="calstable">
    <element name="table" ns="http://www.oasis-open.org/specs/tm9901">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
      <optional xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <ref name="calstabletitle"/>
      </optional>
      <oneOrMore xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <ref name="tgroup"/>
      </oneOrMore>
      <optional>
        <attribute name="corresp" ns="http://www.tei-c.org/ns/1.0">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          <data type="anyURI"/>
        </attribute>
      </optional>
      <optional>
        <attribute name="style" ns="http://www.iso.org/ns/1.0">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          <text/>
        </attribute>
      </optional>
      <optional>
        <attribute name="xml:id">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          <data type="ID"/>
        </attribute>
      </optional>
      <optional>
        <attribute name="frame">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          <choice>
            <value>top</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
            <value>bottom</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
            <value>topbot</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
            <value>all</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
            <value>sides</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
            <value>none</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          </choice>
        </attribute>
      </optional>
      <optional>
        <attribute name="colsep">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          <ref name="yesorno"/>
        </attribute>
      </optional>
      <optional>
        <attribute name="rowsep">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          <ref name="yesorno"/>
        </attribute>
      </optional>
      <empty/>
    </element>
  </define>
  <define name="tgroup">
    <element name="tgroup" ns="http://www.oasis-open.org/specs/tm9901">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
      <zeroOrMore xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <ref name="colspec"/>
      </zeroOrMore>
      <optional xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <ref name="thead"/>
      </optional>
      <ref name="tbody"/>
      <optional>
        <attribute name="cols">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          <data type="NMTOKEN"/>
        </attribute>
      </optional>
      <optional>
        <attribute name="colsep">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          <ref name="yesorno"/>
        </attribute>
      </optional>
      <optional>
        <attribute name="rowsep">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          <ref name="yesorno"/>
        </attribute>
      </optional>
      <optional>
        <attribute name="align">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          <choice>
            <value>left</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
            <value>right</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
            <value>center</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
            <value>justify</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
            <value>char</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          </choice>
        </attribute>
      </optional>
      <empty/>
    </element>
  </define>
  <define name="colspec">
    <element name="colspec" ns="http://www.oasis-open.org/specs/tm9901">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
      <rng:empty xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns="http://www.tei-c.org/ns/1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0"/>
      <optional>
        <attribute name="colnum">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          <data type="NMTOKEN"/>
        </attribute>
      </optional>
      <optional>
        <attribute name="colname">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          <data type="NMTOKEN"/>
        </attribute>
      </optional>
      <optional>
        <attribute name="colwidth">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          <text/>
        </attribute>
      </optional>
      <optional>
        <attribute name="colsep">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          <ref name="yesorno"/>
        </attribute>
      </optional>
      <optional>
        <attribute name="rowsep">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          <ref name="yesorno"/>
        </attribute>
      </optional>
      <optional>
        <attribute name="align">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          <choice>
            <value>left</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
            <value>right</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
            <value>center</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
            <value>justify</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
            <value>char</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          </choice>
        </attribute>
      </optional>
      <optional>
        <attribute name="char">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          <text/>
        </attribute>
      </optional>
      <optional>
        <attribute name="charoff">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          <data type="NMTOKEN"/>
        </attribute>
      </optional>
      <empty/>
    </element>
  </define>
  <define name="calstabletitle">
    <element name="title" ns="http://www.oasis-open.org/specs/tm9901">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
      <ref name="macro.paraContent"/>
      <optional>
        <attribute name="xml:id">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          <data type="ID"/>
        </attribute>
      </optional>
      <empty/>
    </element>
  </define>
  <define name="thead">
    <element name="thead" ns="http://www.oasis-open.org/specs/tm9901">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
      <oneOrMore xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <ref name="calsrow"/>
      </oneOrMore>
      <optional>
        <attribute name="valign">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          <choice>
            <value>top</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
            <value>middle</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
            <value>bottom</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          </choice>
        </attribute>
      </optional>
      <empty/>
    </element>
  </define>
  <define name="tbody">
    <element name="tbody" ns="http://www.oasis-open.org/specs/tm9901">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
      <oneOrMore xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <ref name="calsrow"/>
      </oneOrMore>
      <optional>
        <attribute name="valign">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          <choice>
            <value>top</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
            <value>middle</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
            <value>bottom</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          </choice>
        </attribute>
      </optional>
      <empty/>
    </element>
  </define>
  <define name="calsrow">
    <element name="row" ns="http://www.oasis-open.org/specs/tm9901">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
      <oneOrMore xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <ref name="entry"/>
      </oneOrMore>
      <optional>
        <attribute name="style" ns="http://www.iso.org/ns/1.0">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          <text/>
        </attribute>
      </optional>
      <optional>
        <attribute name="rowsep">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          <ref name="yesorno"/>
        </attribute>
      </optional>
      <optional>
        <attribute name="valign">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          <choice>
            <value>top</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
            <value>middle</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
            <value>bottom</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          </choice>
        </attribute>
      </optional>
      <empty/>
    </element>
  </define>
  <define name="entry">
    <element name="entry" ns="http://www.oasis-open.org/specs/tm9901">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
      <oneOrMore xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <choice>
          <ref name="p"/>
          <ref name="macro.paraContent"/>
        </choice>
      </oneOrMore>
      <optional>
        <attribute name="style" ns="http://www.iso.org/ns/1.0">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          <text/>
        </attribute>
      </optional>
      <optional>
        <attribute name="colname">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          <data type="NMTOKEN"/>
        </attribute>
      </optional>
      <optional>
        <attribute name="namest">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          <data type="NMTOKEN"/>
        </attribute>
      </optional>
      <optional>
        <attribute name="nameend">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          <data type="NMTOKEN"/>
        </attribute>
      </optional>
      <optional>
        <attribute name="morerows">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          <data type="NMTOKEN"/>
        </attribute>
      </optional>
      <optional>
        <attribute name="colsep">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          <ref name="yesorno"/>
        </attribute>
      </optional>
      <optional>
        <attribute name="rowsep">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          <ref name="yesorno"/>
        </attribute>
      </optional>
      <optional>
        <attribute name="rotate">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          <ref name="yesorno"/>
        </attribute>
      </optional>
      <optional>
        <attribute name="align">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          <choice>
            <value>left</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
            <value>right</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
            <value>center</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
            <value>justify</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
            <value>char</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          </choice>
        </attribute>
      </optional>
      <optional>
        <attribute name="char">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          <text/>
        </attribute>
      </optional>
      <optional>
        <attribute name="charoff">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          <data type="NMTOKEN"/>
        </attribute>
      </optional>
      <optional>
        <attribute name="valign">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          <choice>
            <value>top</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
            <value>middle</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
            <value>bottom</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          </choice>
        </attribute>
      </optional>
      <empty/>
    </element>
  </define>
  <define name="tbx_admin">
    <element name="admin" ns="http://www.lisa.org/TBX-Specification.33.0.html">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Contains information of an administrative nature for the node (parent element)
					in question, such as the source of information, or the project or client for
					which it applies. The type of administrative information is indicated by the
					value of the type attribute. It can appear alone, or, if additional
					information needs to be provided, such as a note or a reference, it can be
					nested in an adminGrp element. This element can occur at any of
						the three levels of the terminological entry. Several types, however,
						logically should occur at restricted levels, as indicated with the
						corresponding data-category descriptions. For instance,
						databaseType and conceptOrigin would typically occur
						at the termEntry level. Care should be taken to insert the admin at
						the appropriate level of the entry according to its type attribute value and
						the parent node to which the administrative information applies.
                     </a:documentation>
      <ref name="tbx_entity.noteText"/>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="admin_applicationSubset">
        <rule context="tei:admin[@type='applicationSubset']">
          <assert test=".=not(*)">The application subset must be expressed in
								plainText.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="admin_businessUnitSubset">
        <rule context="tei:admin[@type='businessUnitSubset']">
          <assert test=".=not(*)">The business unit subset must be expressed
								in plainText.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="admin_conceptOrigin">
        <rule context="tei:admin[@type='conceptOrigin']">
          <assert test=".=not(*)">The concept origin must be expressed in
								plainText.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="admin_customerSubset">
        <rule context="tei:admin[@type='customerSubset']">
          <assert test=".=not(*)">The customer subset must be expressed in
								plainText.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="admin_databaseType">
        <rule context="tei:admin[@type='databaseType']">
          <assert test=".=not(*)">The type of data base must be expressed in
								plainText.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="admin_domainExpert">
        <rule context="tei:admin[@type='domainExpert']">
          <assert test=".=not(*)">The domain expert must be expressed in plain
								text.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="admin_elementWorkingStatus">
        <rule context="tei:admin[@type='elementWorkingStatus']">
          <assert test=".='starterElement' or .='workingElement' or .='consolidatedElement' or .='archiveElement' or .='importedElement' or .='exportedElement'"> The element working status must be starterElement, workingElement,
								consolidatedElement, archiveElement, importedElement, or
								exportedElement.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="admin_entrySource">
        <rule context="tei:admin[@type='entrySource']">
          <assert test=".=not(*)">The source of the entry must be expressed in
								plainText.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="admin_environmentSubset">
        <rule context="tei:admin[@type='environmentSubset']">
          <assert test=".=not(*)">The environment subset must be expressed in
								plainText.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="admin_indexHeading">
        <rule context="tei:admin[@type='indexHeading']">
          <assert test=".=not(*)">The index heading must be expressed in plain
								text.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="admin_keyword">
        <rule context="tei:admin[@type='keyword']">
          <assert test=".=not(*)">The keyword must be expressed in plain
							text.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="admin_originatingPerson">
        <rule context="tei:admin[@type='originatingPerson']">
          <assert test=".=not(*)">The name of the originating person must be
								expressed in plainText.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="admin_originatingDatabase">
        <rule context="tei:admin[@type='originatingDatabase']">
          <assert test=".=not(*)">The name of the originating database must be
								expressed in plainText.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="admin_originatingInstitution">
        <rule context="tei:admin[@type='originatingInstitution']">
          <assert test=".=not(*)">The name of the originating institution must
								be expressed in plainText.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="admin_productSubset">
        <rule context="tei:admin[@type='productSubset']">
          <assert test=".=not(*)">The product subset must be expressed in
								plainText.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="admin_projectSubset">
        <rule context="tei:admin[@type='projectSubset']">
          <assert test=".=not(*)">The project subset must be expressed in
								plainText.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="admin_securitySubset">
        <rule context="tei:admin[@type='securitySubset']">
          <assert test=".='public' or .='confidential'">The security subset
								must be public or confidential.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="admin_searchTerm">
        <rule context="tei:admin[@type='searchTerm']">
          <assert test=".=not(*)">The search term must be expressed in plain
								text.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="admin_sourceIdentifier">
        <rule context="tei:admin[@type='sourceIdentifier']">
          <assert test=".=not(*)">The source identifier must be expressed in
								plainText.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="admin_sortKey">
        <rule context="tei:admin[@type='sortKey']">
          <assert test=".=not(*)">The sort key must be expressed in
							plainText.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="admin_subsetOwner">
        <rule context="tei:admin[@type='subsetOwner']">
          <assert test=".=not(*)">The name of the subset owner must be
								expressed in plainText.</assert>
        </rule>
      </pattern>
      <ref name="IDLangTgtDtyp.attributes"/>
      <attribute name="type">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Indicates the data-category type of the admin element, such
							as originatingDatabase or entrySource.</a:documentation>
        <choice>
          <value>annotatedNote</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (annotatedNote) A note that can be coupled with an adminNote element
									to indicate the source of the note or other administrative
									information about the note. If no source or additional
									information about the note is required, use the note
									element.</a:documentation>
          <value>applicationSubset</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (applicationSubset) An identifier that indicates that the parent element to which
									it applies is associated with a specific application. The
									content shall be in plainText.</a:documentation>
          <value>businessUnitSubset</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (businessUnitSubset) An identifier that indicates that the parent element to which
									it applies is associated with a specific department, division,
									or other unit of an enterprise. The content shall be in
									plainText.</a:documentation>
          <value>conceptOrigin</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (conceptOrigin) The institution, region, community, culture, country, or other
									venue from which a concept covered by a terminological entry
									originates. Because this data-category provides information
									about the origin of the concept, it should occur at the
										termEntry level. The content shall be in
								plainText.</a:documentation>
          <value>customerSubset</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (customerSubset) An identifier that indicates that the parent element to which
									it applies is associated with a specific customer. The content
									shall be in plainText.</a:documentation>
          <value>databaseType</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (databaseType) An identifier that indicates the type of database from which
									the parent element originated. This element should normally
									occur at the termEntry level because typically entire
									entries originate from or are imported from another database.
									The content shall be in plainText.</a:documentation>
          <value>domainExpert</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (domainExpert) Subject field specialist who provides information for a
									terminological entry, such as a definition or target language
									equivalent. An admin element that has a type
									attribute value of domainExpert can also have a
										target attribute pointing to the identifier of a
									reference entry in the back matter of the TBX document instance
									that provides information about the domain expert. The content
									shall be in plainText.</a:documentation>
          <value>elementWorkingStatus</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (elementWorkingStatus) A value indicating the level of completeness and accuracy of
									an element (field, record, entry) within a terminological
									collection. The element admin when its type
									attribute has the value elementWorkingStatus shall
									contain one of the following values:
										                              * starterElement
										                              * workingElement
										                              * consolidatedElement
										                              * archiveElement
										                              * importedElement
										                              * exportedElement

									                           
                                 </a:documentation>
          <value>entrySource</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (entrySource) A database or file from which the entry was imported. The
									content shall be in plainText. 
									</a:documentation>
          <value>environmentSubset</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (environmentSubset) An identifier that indicates a specific computer environment
									that the parent element is associated with. The content shall be
									in plainText.</a:documentation>
          <value>indexHeading</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (indexHeading) A term chosen to be used in an index to represent an item or a
									concept in a document. The content shall be in plainText.</a:documentation>
          <value>keyword</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (keyword) A word or group of words, possibly in lexicographically
									standardized (lemmatized) form, taken out of the text of a
									document, which characterizes the text and enables its
									retrieval. For example, the terms data-category and
										terminological entry are keywords for this
									international standard. In a terminological database that
									contains the terminology of ISO 30042, they could be identified
									as keywords by using this element. The content shall be in
									plainText.</a:documentation>
          <value>originatingDatabase</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (originatingDatabase) The database from which the parent element originated. The
									content shall be in plainText.</a:documentation>
          <value>originatingInstitution</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (originatingInstitution) An institution (i.e., company, government agency, etc.) that
									provided the information in the parent element. The content
									shall be in plainText.</a:documentation>
          <value>originatingPerson</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (originatingPerson) An individual who provided the information in the parent
									element. The content shall be in plainText.</a:documentation>
          <value>productSubset</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (productSubset) An identifier assigned to a term, record, or entry to indicate
									that it is related to or used in a product. The content shall be
									in plainText, and preferably one of a predefined set of picklist
									values.</a:documentation>
          <value>projectSubset</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (projectSubset) An identifier assigned to a term, record, or entry to indicate
									that it is related to or used in a project. The content shall be
									in plainText, and preferably one of a predefined set of picklist
									values.</a:documentation>
          <value>searchTerm</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (searchTerm) A term entered in a term entry for purposes of retrieval. The
									content shall be in plainText
									</a:documentation>
          <value>securitySubset</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (securitySubset) A classification of a term, record, or entry indicating that
									its distribution is restricted for security reasons. Sometimes,
									terms are not released to the public until the material that
									uses the term (product, service, etc.) is released to the
									public. Until that time, this element serves to protect the data
									from distribution. The element admin when its
									type attribute has the value
									securitySubset shall contain one of the following values:
										                              * public
										                              * confidential
									                           
                                 </a:documentation>
          <value>sortKey</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (sortKey) A character string used for sorting and merging operations. A
									sort key can enable alphabetic or systematic access. The content
									shall be in plainText.</a:documentation>
          <value>source</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (source) A complete citation of the source of the information in the
									parent element.
									</a:documentation>
          <value>sourceIdentifier</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (sourceIdentifier) A pointer to a bibliographic entry that contains information
									about the source of the parent element. An admin
									element that has a type attribute value of
										sourceIdentifier also has a target
									attribute containing the identifier of the bibliographic entry.
									The content of the element is a display value for the
								source.</a:documentation>
          <value>subsetOwner</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (subsetOwner) The owner of the subset of terminological entries to which
									this entry belongs. The content shall be in plainText.</a:documentation>
        </choice>
      </attribute>
      <empty/>
    </element>
  </define>
  <define name="tbx_descrip">
    <element name="descrip" ns="http://www.lisa.org/TBX-Specification.33.0.html">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">An element that contains descriptive information about a concept, or relations
					to other concepts. The type of information that the element contains, and any
					restrictions on the permissible values of the element, are determined by the
					value of the type attribute.</a:documentation>
      <oneOrMore xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <choice>
          <text/>
          <ref name="tbx_entity.noteText"/>
        </choice>
      </oneOrMore>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="descrip_antonymConcept">
        <rule context="tei:descrip[@type='antonymConcept']">
          <assert test="(.=not(*[not(local-name()='hi')]))and(parent::termEntry or parent::descripGrp/parent::termEntry)">Antonym concepts should occur at the entry (concept) level. The
								antonym-concept in this element must be expressed in basicText.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="descrip_associatedConcept">
        <rule context="tei:descrip[@type='associatedConcept']">
          <assert test="(.=not(*[not(local-name()='hi')]))and (parent::termEntry or parent::langSet or parent::descripGrp/parent::termEntry or parent::descripGrp/parent::langSet)">Associated concepts should occur at the termEntry or the langSet
								level. The term in this element must be expressed in
							basicText.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="descrip_audio">
        <rule context="tei:descrip[@type='audio']">
          <assert test="(.=not(*))and (parent::termEntry or parent::langSet or parent::tig or parent::ntig or parent::descripGrp/parent::termEntry or parent::descripGrp/parent::langSet or parent::descripGrp/parent::tig or parent::descripGrp/parent::ntig)">The content of this element must be plain text. It can occur at the concept (termEntry) level, the langSet level or the term (tig or ntig) level.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="descrip_broaderConceptGeneric">
        <rule context="tei:descrip[@type='broaderConceptGeneric']">
          <assert test="(.=not(*[not(local-name()='hi')])) and (parent::termEntry or parent::langSet or parent::descripGrp/parent::termEntry or parent::descripGrp/parent::langSet)">Generic broader concepts should occur at the termEntry level or the
								langSet level. The term in this element must be expressed in
								basicText.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="descrip_broaderConceptPartitive">
        <rule context="tei:descrip[@type='broaderConceptPartitive']">
          <assert test="(.=not(*[not(local-name()='hi')])) and (parent::termEntry or parent::langSet or parent::descripGrp/parent::termEntry or parent::descripGrp/parent::langSet)">Partitive broader concepts should occur at the termEntry level or
								the langSet level. The term in this element must be expressed in
								basicText.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="descrip_characteristic">
        <rule context="tei:descrip[@type='characteristic']">
          <assert test="(.=not(*))and (parent::tig or parent::ntig or parent::descripGrp/parent::tig or parent::descripGrp/parent::ntig)">A
								characteristic should only occur at the term (tig or ntig) level.
								The content of this element must be plain text.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="descrip_classificationCode">
        <rule context="tei:descrip[@type='classificationCode']">
          <assert test="(.=not(*)) and (parent::termEntry or parent::langSet or parent::tig or parent::ntig or parent::descripGrp/parent::termEntry or parent::descripGrp/parent::langSet or parent::descripGrp/parent::tig or parent::descripGrp/parent::ntig)"> The content of this element must be plainText.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="descrip_conceptPosition">
        <rule context="tei:descrip[@type='conceptPosition']">
          <assert test="(.=not(*)) and (parent::termEntry or parent::langSet or parent::descripGrp/parent::termEntry or parent::descripGrp/parent::langSet)"> Information about a concept position should occur at the termEntry
								level or the langSet level, and it must be expressed in
							plainText.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="descrip_coordinateConceptGeneric">
        <rule context="tei:descrip[@type='coordinateConceptGeneric']">
          <assert test="(.=not(*[not(local-name()='hi')])) and (parent::termEntry or parent::langSet or parent::descripGrp/parent::termEntry or parent::descripGrp/parent::langSet)">Generic coordinate concepts should occur at the termEntry level or
								the langSet level. The term in this element must be expressed in
								basicText.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="descrip_coordinateConceptPartitive">
        <rule context="tei:descrip[@type='coordinateConceptPartitive']">
          <assert test="(.=not(*[not(local-name()='hi')])) and (parent::termEntry or parent::langSet or parent::descripGrp/parent::termEntry or parent::descripGrp/parent::langSet)">Partitive coordinate concepts should occur at the termEntry level
								or the langSet level. The term in this element must be expressed in
								basicText.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="descrip_context">
        <rule context="tei:descrip[@type='context']">
          <assert test="parent::tig or parent::ntig or parent::descripGrp/parent::tig or parent::descripGrp/parent::ntig">A
								context sentence can only occur at the term (tig)
							level.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="descrip_definition">
        <rule context="tei:descrip[@type='definition']">
          <assert test="parent::termEntry or parent::langSet or parent::tig or parent::ntig or parent::descripGrp/parent::termEntry or parent::descripGrp/parent::langSet or parent::descripGrp/parent::tig or parent::descripGrp/parent::ntig"> A definition must occur at the termEntry level, the langSet level,
								or the term (tig) level.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="descrip_example">
        <rule context="tei:descrip[@type='example']">
          <assert test="parent::termEntry or parent::langSet or parent::tig or parent::ntig or parent::descripGrp/parent::termEntry or parent::descripGrp/parent::langSet or parent::descripGrp/parent::tig or parent::descripGrp/parent::ntig"> An example must occur at the termEntry level, the langSet level,
								or the term (tig) level.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="descrip_explanation">
        <rule context="tei:descrip[@type='explanation']">
          <assert test="parent::termEntry or parent::langSet or parent::tig or parent::ntig or parent::descripGrp/parent::termEntry or parent::descripGrp/parent::langSet or parent::descripGrp/parent::tig or parent::descripGrp/parent::ntig"> An explanation must occur at the termEntry level, the langSet
								level, or the term (tig) level.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="descrip_figure">
        <rule context="tei:descrip[@type='figure']">
          <assert test="(.=not(*)) and (parent::termEntry or parent::langSet or parent::tig or parent::ntig or parent::descripGrp/parent::termEntry or parent::descripGrp/parent::langSet or parent::descripGrp/parent::tig or parent::descripGrp/parent::ntig)"> The content of this element must be plain
								text.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="descrip_otherBinaryData">
        <rule context="tei:descrip[@type='otherBinaryData']">
          <assert test="(.=not(*)) and (parent::termEntry or parent::langSet or parent::tig or parent::ntig or parent::descripGrp/parent::termEntry or parent::descripGrp/parent::langSet or parent::descripGrp/parent::tig or parent::descripGrp/parent::ntig)">The content of this element must be plain
								text.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="descrip_quantity">
        <rule context="tei:descrip[@type='quantity']">
          <assert test="(.=not(*)) and (parent::tig or parent::ntig or parent::descripGrp/parent::tig or parent::descripGrp/parent::ntig)">A quantity should occur at the term (tig or
								ntig) level. The content of this element must be plain
							text.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="descrip_range">
        <rule context="tei:descrip[@type='range']">
          <assert test="(.=not(*)) and (parent::tig or parent::ntig or parent::descripGrp/parent::tig or parent::descripGrp/parent::ntig)">A range should occur at the term (tig or ntig)
								level. The content of this element must be plainText.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="descrip_relatedConcept">
        <rule context="tei:descrip[@type='relatedConcept']">
          <assert test="(.=not(*[not(local-name()='hi')])) and (parent::langSet or parent::termEntry or parent::descripGrp/parent::langSet or parent::descripGrp/parent::termEntry)">Related concepts
								should occur at the termEntry level or the langSet level. The
								content of this element must be expressed in basicText.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="descrip_relatedConceptBroader">
        <rule context="tei:descrip[@type='relatedConceptBroader']">
          <assert test="(.=not(*[not(local-name()='hi')]) )and (parent::langSet or parent::termEntry or parent::descripGrp/parent::langSet or parent::descripGrp/parent::termEntry)">Broader related
								concepts should occur at the termEntry level or the langSet level.
								The content of this element must be expressed in
							basicText.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="descrip_relatedConceptNarrower">
        <rule context="tei:descrip[@type='relatedConceptNarrower']">
          <assert test="(.=not(*[not(local-name()='hi')])) and (parent::langSet or parent::termEntry or parent::descripGrp/parent::langSet or parent::descripGrp/parent::termEntry)">Narrower related
								concepts should occur at the termEntry level or the langSet level.
								The content of this element must be expressed in
							basicText.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="descrip_reliabilityCode">
        <rule context="tei:descrip[@type='reliabilityCode']">
          <assert test="((.='1' or .='2' or .='3' or .='4' or .='5' or .='6' or .='7' or .='8' or .='9' or .='10') and (parent::langSet or parent::termEntry or parent::tig or parent::ntig or parent::descripGrp/parent::langSet or parent::descripGrp/parent::termEntry or parent::descripGrp/parent::tig or parent::descripGrp/parent::ntig))">A reliability code can be a value from 1 (least reliable) to 10
								(most reliable).</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="descrip_sampleSentence">
        <rule context="tei:descrip[@type='sampleSentence']">
          <assert test="parent::tig or parent::ntig or parent::descripGrp/parent::tig or parent::descripGrp/parent::ntig"> A sample sentence can only occur at the
								term (tig) level.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="descrip_sequentiallyRelatedConcept">
        <rule context="tei:descrip[@type='sequentiallyRelatedConcept']">
          <assert test="(.=not(*[not(local-name()='hi')])) and (parent::langSet or parent::termEntry or parent::descripGrp/parent::langSet or parent::descripGrp/parent::termEntry)">Sequentially related
								concepts should occur at the termEntry level or the langSet level.
								The content of this element must be expressed in
							basicText.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="descrip_spatiallyRelatedConcept">
        <rule context="tei:descrip[@type='spatiallyRelatedConcept']">
          <assert test="(.=not(*[not(local-name()='hi')])) and (parent::langSet or parent::termEntry or parent::descripGrp/parent::langSet or parent::descripGrp/parent::termEntry)">Spatially related
								concepts should occur at the termEntry level or the langSet level.
								The content of the element must be expressed in
							basicText.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="descrip_subjectField">
        <rule context="tei:descrip[@type='subjectField']">
          <assert test="(.=not(*)) and (parent::termEntry or parent::descripGrp/parent::termEntry)"> A subject field must be a plainText value.
								Subject fields usually occur at the termEntry level.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="descrip_subordinateConceptGeneric">
        <rule context="tei:descrip[@type='subordinateConceptGeneric']">
          <assert test="(.=not(*[not(local-name()='hi')])) and (parent::langSet or parent::termEntry or parent::descripGrp/parent::langSet or parent::descripGrp/parent::termEntry)"> Generic subordinate
								concepts should occur at the termEntry level or the langSet level.
								The content of the element must be expressed in
							basicText.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="descrip_subordinateConceptPartitive">
        <rule context="tei:descrip[@type='subordinateConceptPartitive']">
          <assert test="(.=not(*[not(local-name()='hi')])) and (parent::langSet or parent::termEntry or parent::descripGrp/parent::langSet or parent::descripGrp/parent::termEntry)"> Partitive
								subordinate concepts should occur at the termEntry level or the
								langSet level. The content of the element must be expressed in
								basicText.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="descrip_superordinateConceptGeneric">
        <rule context="tei:descrip[@type='superordinateConceptGeneric']">
          <assert test="(.=not(*[not(local-name()='hi')])) and (parent::langSet or parent::termEntry or parent::descripGrp/parent::langSet or parent::descripGrp/parent::termEntry)">Generic
								superordinate concepts should occur at the termEntry level or the
								langSet level. The content of the element must be expressed in
								basicText.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="descrip_superordinateConceptPartitive">
        <rule context="tei:descrip[@type='superordinateConceptPartitive']">
          <assert test="(.=not(*[not(local-name()='hi')])) and (parent::langSet or parent::termEntry or parent::descripGrp/parent::langSet or parent::descripGrp/parent::termEntry)">Partitive
								superordinate concepts should occur at the termEntry level or the
								langSet level. The content of the element must be expressed in
								basicText.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="descrip_table">
        <rule context="tei:descrip[@type='table']">
          <assert test="(.=not(*)) and (parent::langSet or parent::termEntry or parent::tig or parent::ntig or parent::descripGrp/parent::langSet or parent::descripGrp/parent::termEntry or parent::descripGrp/parent::tig or parent::descripGrp/parent::ntig)"> The content of this element must be plain
								text.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="descrip_temporallyRelatedConcept">
        <rule context="tei:descrip[@type='temporallyRelatedConcept']">
          <assert test="(.=not(*[not(local-name()='hi')])) and (parent::langSet or parent::termEntry or parent::descripGrp/parent::langSet or parent::descripGrp/parent::termEntry)">Temporally related
								concepts should occur at the termEntry level or the langSet level.
								The content of the element must be expressed in
							basicText.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="descrip_thesaurusDescriptor">
        <rule context="tei:descrip[@type='thesaurusDescriptor']">
          <assert test="(.=not(*)) and (parent::termEntry or parent::descripGrp/parent::termEntry)">Thesaurus descriptors should occur at the
								termEntry level. The content of this element must be plain
							text.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="descrip_unit">
        <rule context="tei:descrip[@type='unit']">
          <assert test="(not (*) and (parent::tig or parent::ntig or parent::descripGrp/parent::tig or parent::descripGrp/parent::ntig))"> Units should occur at the term (tig or ntig)
								level. Units must be expressed in plainText.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="descrip_video">
        <rule context="tei:descrip[@type='video']">
          <assert test="(.=not(*)) and (parent::langSet or parent::termEntry or parent::tig or parent::ntig or parent::descripGrp/parent::langSet or parent::descripGrp/parent::termEntry or parent::descripGrp/parent::tig or parent::descripGrp/parent::ntig)">The content of this element must be in plain
								text.</assert>
        </rule>
      </pattern>
      <ref name="IDLangTgtDtyp.attributes"/>
      <attribute name="type">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Indicates the data-category type of the descrip element, such
							as definition or associated-concept.</a:documentation>
        <choice>
          <value>antonymConcept</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (antonymConcept) A concept that is opposite in meaning to the concept
									represented by the entry containing the descrip
									element. A descrip element that has a type
									attribute value of antonymConcept can also have a
										target attribute pointing to the entry ID of the
										termEntry that contains the antonym concept. The
									display term in the content of the element shall be expressed in
									basicText.</a:documentation>
          <value>associatedConcept</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (associatedConcept) A concept that exhibits a relation to the subject concept that
									can be established on the basis of non-hierarchical thematic
									connections. A descrip element that has a
									type attribute value of associatedConcept
									can also have a target attribute pointing to the
									entry ID of the termEntry that contains the associated
									concept. For example, teacher and school
									represent associated concepts.</a:documentation>
          <value>audio</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (audio) A name or other identifier of an audio file: sound, spoken
									words, music, or other audible representations used to
									illustrate or explain terms or concepts. A descrip
									element that has a type attribute value of
									audio can also have a target attribute
									pointing to the ID of a refObject in the back matter of
									the TBX document instance that describes and points to the audio
									file. The element content shall be in plainText. If a
										direct pointer to the audio file is preferred within the
											termEntry, rather than pointing to the back
										matter, use an xref instead.
                                 </a:documentation>
          <value>broaderConceptGeneric</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (broaderConceptGeneric) A concept two or more levels of abstraction higher than
									subject concept in a generic hierarchical concept system. A
										descrip element that has a type
									attribute value of broaderConceptGeneric can also
									have a target attribute pointing to the entry ID of
									the termEntry that contains the broader concept.
									Generic relations between concepts are "is-a" relations. This
									means that the narrower concept "is an" instance of its broader
									generic concept. For example, a dog is a
										canine animal, and a canine animal
									is a mammal, therefore mammal is a
									broader generic concept for dog.</a:documentation>
          <value>broaderConceptPartitive</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (boaderConceptPartitive) A concept two or more levels of abstraction higher than
									subject concept in a part-whole or meronymic hierarchical
									concept system. A descrip element that has a
									type attribute value of
									broaderConceptPartitive can also have a
									target attribute pointing to the entry ID of the
										termEntry that contains the broader concept. For
									example, a floor board is part of a
									house (broader partitive concept), but it can be
									more narrowly defined as being part of the floor
									(superordinate partitive concept), which in turn is part of the
									house. Partitive relations between concepts are "has-a"
									relations. This means that the broader partitive concept "has"
									its narrower concepts as parts of itself.</a:documentation>
          <value>characteristic</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (characteristic) An abstraction of a property of an object or of a set of
									objects. For example, flammability is a
									characteristic of fuel. Essential characteristics
									can be used to define concepts. The element content shall be in
									plainText.</a:documentation>
          <value>classificationCode</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (classificationCode) A set of symbols, with rules for their application, used to
									represent classes and their interrelations. A descrip
									element that has a type attribute value of
										classificationCode can also have a
									target attribute pointing to the ID of a
									bibliographic refobject in the back matter describing
									the classification code. The element content shall be in plain
									text. If a direct pointer to the classification code is
										preferred within the termEntry, rather than
										pointing to the back matter, use an xref
									instead.
                                 </a:documentation>
          <value>conceptPosition</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (conceptPosition) The position of a concept in a concept system. A
									descrip element that has a type attribute
									value of conceptPosition can also have a
									target attribute pointing to the ID of a position in
									the concept system. The element content shall be in plainText.</a:documentation>
          <value>context</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (context) A text which illustrates a concept or a term, by containing
									the concept designation itself. Contexts must be authentic, that is, they must be obtained
									from an existing source, and not created by the terminologist.
									Contexts are documented very frequently in terminology
									collections. Contexts can provide information for determining
									term usage and collocations. In TBX, the context is a
									term-related data-category. A context can be further categorized
									according to context type.</a:documentation>
          <value>coordinateConceptGeneric</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (coordinateConceptGeneric) A concept having the same nearest superordinate concept
									 as the concept being
									described by this descrip element in a generic concept
									system. A descrip element that has a type
									attribute value of coordinateConceptGeneric can also
									have a target attribute pointing to the ID of the
									coordinate concept.</a:documentation>
          <value>coordinateConceptPartitive</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (coordinateConceptPartitive) A concept having the same nearest superordinate concept
									 as the concept being
									described by this descrip element in a partitive
									concept system. A descrip element that has a
									type attribute value of
										coordinateConceptPartitive can also have a
										target attribute pointing to the ID of the
									coordinate concept.</a:documentation>
          <value>definition</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (definition) A representation of a concept by a descriptive statement which
									serves to differentiate that concept from related
								concepts.</a:documentation>
          <value>example</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (example) A text which illustrates a concept or a term, by providing an
									example of the object designated by the concept or term, and not
									necessarily containing the concept designation itself.
									</a:documentation>
          <value>explanation</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (explanation) A statement that describes and clarifies a concept and makes
									it understandable, but does not necessarily differentiate it
									from other concepts.Some databases use example as a
									label for contextual references. The content of those
									data-categories should be converted to the data-category  for interchange purposes.</a:documentation>
          <value>figure</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (figure) A name or other description of a diagram, picture, or other
									graphic material used to illustrate a concept or group of
									concepts. A descrip element that has a type
									attribute value of figure can also have a
									target attribute pointing to the ID of a
										refObject in the back matter of the TBX document
									instance that describes and points to the file that contains the
									figure. The element content shall be in plainText. If a
										direct pointer to the file that contains the figure is
										preferred within the termEntry, rather than
										pointing to the back matter, use an xref
									instead.
                                 </a:documentation>
          <value>otherBinaryData</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (otherBinaryData) Any binary data not covered by the categories , , , and . A
									descrip element that has a type attribute
									value of otherBinaryData can also have a
									target attribute pointing to the ID of a
										refObject in the back matter of the TBX document
									instance that describes and points to the binary file. The
									element content shall be in plainText. If a direct pointer
										to the binary file is preferred within the
										termEntry, rather than pointing to the back matter,
										use an xref instead.
                                 </a:documentation>
          <value>quantity</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (quantity) A measurable quantity associated with a concept. The element
									content shall be in plainText.</a:documentation>
          <value>range</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (range) The pair of limits within which a quantity is measured, as
									expressed by stating the lower and upper permissible values.
									The
									element content shall be in plainText.</a:documentation>
          <value>relatedConcept</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (relatedConcept) A concept that has an associative relation to another concept,
									such as teacher and school. A
										descrip element that has a type
									attribute value of relatedConcept can also have a
										target attribute pointing to the entry identifier
									of the related concept.</a:documentation>
          <value>relatedConceptBroader</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (relatedConceptBroader) A concept that is broader at some level with respect to a
									related or associated concept, but without comprising any
									reference to a generic or partitive system. A descrip
									element that has a type attribute value of
										relatedConceptBroader can also have a
									target attribute pointing to the entry identifier of
									the related concept.</a:documentation>
          <value>relatedConceptNarrower</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (relatedConceptNarrower) A concept that is narrower at some level with respect to a
									related or associated concept, but without comprising any
									reference to a generic or partitive system. A descrip
									element that has a type attribute value of
										relatedConceptNarrower can also have a
										target attribute pointing to the entry identifier
									of the related concept.</a:documentation>
          <value>reliabilityCode</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (reliabilityCode) A code assigned to a data-category or record indicating
									accuracy and/or completeness. The content of the
									descrip element when it has a type attribute
									value of reliabilityCode shall be a value from 1
									(least reliable) to 10 (most reliable).</a:documentation>
          <value>sampleSentence</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (sampleSentence) A sentence composed (frequently by a terminologist or language
									planner) to illustrate the use of a term in cases where an
									authentic context is unavailable. Although contextual
									information should ideally be taken from actual texts written in
									the language in question, such contextual references may not
									exist for newly coined or suggested terms.</a:documentation>
          <value>sequentiallyRelatedConcept</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (sequentiallyRelatedConcept) A concept that has a relation to the subject concept based on
									spatial or temporal proximity. Temporal relations and spatial
									relations can be sequential. A descrip element that has
									a type attribute value of
										sequentiallyRelatedConcept can also have a
										target attribute pointing to the entry identifier
									of the related concept.</a:documentation>
          <value>spatiallyRelatedConcept</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (spatiallyRelatedConcept) A concept that has a relation of dependence with the subject
									concept, referring to objects based on their relative physical
									positions. A descrip element that has a type
									attribute value of spatiallyRelatedConcept can also
									have a target attribute pointing to the entry
									identifier of the related concept.</a:documentation>
          <value>subjectField</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (subjectField) A field of special knowledge.
									
									Subject fields can be expressed in multiple levels, for example:
									Subject field (level 1): disease, Subject field (level 2):
									cancer, Subject field (level 3): non-Hodgkin's lymphoma. Subject
									fields shall be expressed in plainText, and preferably be
									selected from a defined set of picklist values. Subject fields
									shall be specified at the concept (termEntry) level.</a:documentation>
          <value>subordinateConceptGeneric</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (subordinateConceptGeneric) A concept that has a generic relation with the subject
									concept, and a broader intension. A descrip element
									that has a type attribute value of
										subordinateConceptGeneric can also have a
										target attribute pointing to the entry identifier
									of the subordinate concept.</a:documentation>
          <value>subordinateConceptPartitive</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (subordinateConceptPartitive) A concept that has a partitive relation with the subject
									concept, and represents one of the parts of the subject concept.
									A descrip element that has a type attribute
									value of subordinateConceptPartitive can also have a
										target attribute pointing to the entry identifier
									of the subordinate concept.</a:documentation>
          <value>superordinateConceptGeneric</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (superordinateConceptGeneric) A concept that has a generic relation with the subject
									concept, and a narrower intension. A descrip element
									that has a type attribute value of
										superordinateConceptGeneric can also have a
										target attribute pointing to the entry identifier
									of the superordinate concept.</a:documentation>
          <value>superordinateConceptPartitive</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (superordinateConceptPartitive) A concept that has a partitive relation with the subject
									concept, and represents the sum of the parts; a
										comprehensive concept. A descrip
									element that has a type attribute value of
										superordinateConceptPartitive can also have a
										target attribute pointing to the entry identifier
									of the superordinate concept.</a:documentation>
          <value>table</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (table) The name of a table that is used to describe a concept. The
									table itself can be contained (or referred to as an external
									file) in a refobject in the back matter of a TBX
									document instance. The target attribute points to the
										refobject identifier. The element content shall be
									in plainText. If a direct pointer to the file that
										contains the table is preferred within the
										termEntry, rather than pointing to the back matter,
										use an xref instead.
								                         </a:documentation>
          <value>temporallyRelatedConcept</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (temporallyRelatedConcept) A concept related to the subject concept through a sequential
									relation involving events in time. A descrip element
									that has a type attribute value of
										temporallyRelatedConcept can also have a
										target attribute pointing to the entry identifier
									of the related concept.</a:documentation>
          <value>thesaurusDescriptor</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (thesaurusDescriptor) The term in a thesaurus that can be used to represent a
									concept in a terminological entry. A descrip element
									that has a type attribute value of
										thesaurusDescriptor can also have a
									target attribute pointing to the ID of the
										refObject in the back matter of the TBX document
									instance that describes the thesaurus. The element content shall
									be in plainText. If a direct pointer to the thesaurus is
										preferred within the termEntry, rather than
										pointing to the back matter, use an xref
									instead.
								                         </a:documentation>
          <value>unit</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (unit) A precisely-specified quantity in terms of which the
									magnitudes of other quantities can be stated, such as meter or
									volt. The element content shall be in plainText.
									</a:documentation>
          <value>video</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (video) A name or other description of recorded visual images used to
									represent or illustrate terminological information. A
										descrip element that has a type
									attribute value of video can also have a
									target attribute pointing to the ID of a
										refObject in the back matter of the TBX document
									instance that describes and points to the video file. The
									element content shall be in plainText. If a direct pointer
										to the video file is preferred within the
										termEntry, rather than pointing to the back matter,
										use an xref instead.
                                 </a:documentation>
        </choice>
      </attribute>
      <empty/>
    </element>
  </define>
  <define name="tbx_descripGrp">
    <element name="descripGrp" ns="http://www.lisa.org/TBX-Specification.33.0.html">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Contains one descrip element as well as additional child elements for
					associated administrative information.</a:documentation>
      <ref name="tbx_descrip"/>
      <zeroOrMore xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <choice>
          <ref name="tbx_descripNote"/>
          <ref name="tbx_admin"/>
          <ref name="tbx_note"/>
          <ref name="tbx_ref"/>
        </choice>
      </zeroOrMore>
      <ref name="id.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="tbx_descripNote">
    <element name="descripNote" ns="http://www.lisa.org/TBX-Specification.33.0.html">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Element used to indicate the type of definition or context with which it is
					associated.</a:documentation>
      <rng:text xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns="http://www.tei-c.org/ns/1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0"/>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="descripNote_contextType">
        <rule context="tei:descripNote[@type='contextType']">
          <assert test=". ='definingContext'  or .='explanatoryContext'  or .='associativeContext'  or .='linguisticContext'  or .='metalinguisticContext'  or .='translatedContext'"> Contexts can only be of one of the following types:
								definingContext, explanatoryContext, associativeContext,
								linguisticContext, metalinguisticContext or
							translatedContext.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="descripNote_definitionType">
        <rule context="tei:descripNote[@type='definitionType']">
          <assert test=".=         'intensionalDefinition' or .='extensionalDefinition' or .='partitiveDefinition' or .='translatedDefinition'"> Definitions can only be of one of the following types:
								intensionalDefinition, extensionalDefinition, partitiveDefinition,
								or translatedDefinition.</assert>
        </rule>
      </pattern>
      <ref name="IDLangTgtDtyp.attributes"/>
      <attribute name="type">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Indicates the data-category type of the descripNote element,
							such as contextType.</a:documentation>
        <choice>
          <value>contextType</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (contextType) The characterization of a context according to a set of
									theoretical or pragmatic types.The content of the descripNote element when it has a
										type attribute value of contextType
									shall be one of the following:
										                              * definingContext
										                              * explanatoryContext
										                              * associativeContext
										                              * linguisticContext
										                              * metalinguisticContext
										                              * translatedContext
									                           
                                 </a:documentation>
          <value>definitionType</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (definitionType) The characterization of a definition according to a set of
									theoretical or pragmatic types.The content of the descripNote element when it has a
										type attribute value of definitionType
									shall be one of the following:
										                              * intensionalDefinition
										                              * extensionalDefinition
										                              * partitiveDefinition
										                              * translatedDefinition

									                           
                                 </a:documentation>
        </choice>
      </attribute>
      <empty/>
    </element>
  </define>
  <define name="tbx_hi">
    <element name="hi" ns="http://www.lisa.org/TBX-Specification.33.0.html">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> Highlights a segment of text and optionally points to another element.</a:documentation>
      <rng:text xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns="http://www.tei-c.org/ns/1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0"/>
      <ref name="target-IDREF.attributes"/>
      <ref name="lang.attributes"/>
      <optional>
        <attribute name="type">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
          <choice>
            <value>entailedTerm</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (entailedTerm) A term, found in the content of a text element such as
										, that is defined in
									another terminological entry in the same terminological
									collection.</a:documentation>
            <value>hotkey</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (hotkey) A key or a combination of keys on a computer keyboard that,
									when pressed at one time, performs a task (such as starting an
									application) as an alternative to using a mouse or other input
									device. Hotkeys are supported by many operating systems and
									applications (the hotkey is indicated by an ampersand in the
									term and by an underscore in the visual display). This type of
										hi element allows a hotkey to be identified as such
									in a text field such as a context sentence. To identify a hotkey
									for the head term of an entry, use the lionHotkey
									value of the type attribute on a
								termNote.</a:documentation>
            <value>italics</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (italics) Indicates that the content enclosed in the hi element
									must be rendered in italics. </a:documentation>
            <value>bold</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (bold) Indicates that the content enclosed in the hi element
									must be rendered in boldface. </a:documentation>
            <value>superscript</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (superscript) Indicates that the content enclosed in the hi element
									must be rendered in superscript. </a:documentation>
            <value>subscript</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (subscript) Indicates that the content enclosed in the hi element
									must be rendered in subscript.</a:documentation>
            <value>math</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (math) Indicates that the content enclosed in the hi element
									is mathematical in nature.</a:documentation>
          </choice>
        </attribute>
      </optional>
      <empty/>
    </element>
  </define>
  <define name="tbx_langSet">
    <element name="langSet" ns="http://www.lisa.org/TBX-Specification.33.0.html">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">A nesting element that contains all the information in a terminological entry
					pertaining to one language, including all the tig or
					ntigelements (terms and associated information) for that language.</a:documentation>
      <ref name="tbx_entity.auxInfo"/>
      <oneOrMore xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <choice>
          <ref name="tbx_ntig"/>
        </choice>
      </oneOrMore>
      <attribute name="xml:lang">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Indicates the language of the language section. This attribute is
							required for the langSet element. See also the description on
							the martif element.</a:documentation>
        <text/>
      </attribute>
      <empty/>
    </element>
  </define>
  <define name="tbx_note">
    <element name="note" ns="http://www.lisa.org/TBX-Specification.33.0.html">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Any kind of note. </a:documentation>
      <ref name="tbx_entity.noteText"/>
      <ref name="idlang.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="tbx_ntig">
    <element name="ntig" ns="http://www.lisa.org/TBX-Specification.33.0.html">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">A nesting term information group. A grouping element that
					contains child elements describing a term. It is equivalent to a tig
					except that it allows the description of term components.</a:documentation>
      <ref name="tbx_termGrp"/>
      <ref name="tbx_entity.auxInfo"/>
      <ref name="id.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="tbx_term">
    <element name="term" ns="http://www.lisa.org/TBX-Specification.33.0.html">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">The term that is being described in a tig or ntig. This
					element, as well as other term-like elements such as those mentioned in the
					table Types of terms, relations to terms in section 9, can contain
					a hi element to allow a limited amount of inline markup. This is
					intended to handle markup requirements in special cases such as may be required
					for terms that represent scientific concepts. However, it is strongly
					recommended to use inline markup only when necessary to represent the term in
					its base form. Do not use the hi element for presentational styles
					chosen for esthetic purposes.</a:documentation>
      <ref name="tbx_entity.basicText"/>
      <ref name="id.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="tbx_ref">
    <element name="ref" ns="http://www.lisa.org/TBX-Specification.33.0.html">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">A cross-reference that points to another element within the martif
					element of the TBX document instance. The content of the element is display text
					of the target element (i.e. the term), and shall be in plainText.</a:documentation>
      <rng:text xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns="http://www.tei-c.org/ns/1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0"/>
      <ref name="IDLangTgtDtyp.attributes"/>
      <attribute name="type">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
        <choice>
          <value>crossReference</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (crossReference) A pointer to another related location, such as another entry
									or another term. The ref element with a type
									attribute value of cross-reference shall also have a
										target attribute to point to the identifier of
									the entry or term.</a:documentation>
          <value>see</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (see) An element that points to a location where additional
									information can be found. The ref element with a
										type attribute value of see shall also
									have a target attribute to point to the location of
									the information.</a:documentation>
        </choice>
      </attribute>
      <empty/>
    </element>
  </define>
  <define name="tbx_termComp">
    <element name="termComp" ns="http://www.lisa.org/TBX-Specification.33.0.html">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">A term component. It includes the text of a part of a word (such as a morpheme
					or a syllable) or one of the words making up a multi-word term. The type of term
					component will depend on the value of the type attribute of the
						termCompList element.</a:documentation>
      <rng:text xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns="http://www.tei-c.org/ns/1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0"/>
      <ref name="idlang.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="tbx_termCompGrp">
    <element name="termCompGrp" ns="http://www.lisa.org/TBX-Specification.33.0.html">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">A grouping element that includes one termComp plus additional
					elements describing the term component, such as notes, administrative
					information, and cross references.</a:documentation>
      <ref name="tbx_termComp"/>
      <zeroOrMore xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <choice>
          <ref name="tbx_termNote"/>
        </choice>
      </zeroOrMore>
      <ref name="id.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="tbx_termCompList">
    <element name="termCompList" ns="http://www.lisa.org/TBX-Specification.33.0.html">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">A grouping element that contains at least one termComp element
					(usually more) or at least one termCompGrp element plus optionally some
					additional information about the term components. This element is designed to
					contain the components of a term. The value of the type attribute
					indicates what type of term components it contains.</a:documentation>
      <ref name="tbx_entity.auxInfo"/>
      <oneOrMore xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <choice>
          <ref name="tbx_termComp"/>
          <ref name="tbx_termCompGrp"/>
        </choice>
      </oneOrMore>
      <ref name="id.attributes"/>
      <attribute name="type">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Indicates the type of the termCompList, such as
								hyphenation. The value indicates on what basis the term
							components were identified, such as by hyphenation parts or by
							syllables.</a:documentation>
        <choice>
          <value>hyphenation</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (Hyphenation) The termComp elements contain the parts of a term as
									it would be hyphenated, such as at the end of a line, according
									to a given set of rules.</a:documentation>
          <value>lemma</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (Lemma) The termComp elements contain the base form of the
									term or of the individual words that it comprises. A base form
									of a word or term, sometimes called a lemma, is the
									form that is used as the formal dictionary entry for the term.
									For nouns, the base form is frequently the nominative singular
									form (in languages that show variation by case). For adjectives
									it is the positive form of the adjective, as opposed to the
									comparative, and in some languages it is uninflected, whereas in
									others it is the masculine singular. For verbs, it is generally
									the infinitive.</a:documentation>
          <value>morphologicalElement</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (Morphological element) The termComp elements contain the individual
									morphemes that comprise the term. .</a:documentation>
          <value>syllabification</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (Syllabification) The termComp elements contain the individual
									syllables that comprise the term.</a:documentation>
          <value>termElement</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (Term element) The termComp elements contain any other logically
									significant portion of the term. </a:documentation>
        </choice>
      </attribute>
      <empty/>
    </element>
  </define>
  <define name="tbx_termEntry">
    <element name="termEntry" ns="http://www.lisa.org/TBX-Specification.33.0.html">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">The root element of a terminological entry. It shall contain at least one
					language section.</a:documentation>
      <ref name="tbx_entity.auxInfo"/>
      <oneOrMore xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <ref name="tbx_langSet"/>
      </oneOrMore>
      <ref name="id.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="tbx_termGrp">
    <element name="termGrp" ns="http://www.lisa.org/TBX-Specification.33.0.html">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Element used in an ntig which contains one term and
					optionally additional information about the term. This element is primarily used
					in conjunction with ntig when the term is broken down into components. </a:documentation>
      <ref name="tbx_term"/>
      <zeroOrMore xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <choice>
          <ref name="tbx_termNote"/>
        </choice>
      </zeroOrMore>
      <zeroOrMore xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0">
        <ref name="tbx_termCompList"/>
      </zeroOrMore>
      <ref name="id.attributes"/>
      <empty/>
    </element>
  </define>
  <define name="tbx_termNote">
    <element name="termNote" ns="http://www.lisa.org/TBX-Specification.33.0.html">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">A meta data-category used for describing terms. A type attribute
					specifies what kind of information is included in a particular instance of this
					element.</a:documentation>
      <ref name="tbx_entity.noteText"/>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="termNote_abbreviatedFormFor">
        <rule context="tei:termNote[@type='abbreviatedFormFor']">
          <assert test=".=not(*[not(local-name()='hi')])"> The value of the
								abbreviated form in this element must be expressed in basicText.
							</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="termNote_administrativeStatus">
        <rule context="tei:termNote[@type='administrativeStatus']">
          <assert test=".=         'standardizedTerm-admn-sts' or .='preferredTerm-admn-sts' or .='admittedTerm-admn-sts' or .='deprecatedTerm-admn-sts' or .='supersededTerm-admn-sts' or .='legalTerm-admn-sts' or .='regulatedTerm-admn-sts'">The administrative status must be standardizedTerm-admn-sts,
								preferredTerm-admn-sts, admittedTerm-admn-sts,
								deprecatedTerm-admn-sts, supersededTerm-admn-sts,
								legalTerm-admn-sts, or regulatedTerm-admn-sts. </assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="termNote_antonymTerm">
        <rule context="tei:termNote[@type='antonymTerm']">
          <assert test="(.=not(*[not(local-name()='hi')]))">Antonym terms should
								occur at the term (tig or ntig) level. The antonym term in this
								element must be expressed in basicText.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="termNote_directionality">
        <rule context="tei:termNote[@type='directionality']">
          <assert test=". =        'monodirectional' or .='bidirectional' or .='incommensurate'">The directionality must be monodirectional, bidirectional, or
								incommensurate. </assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="termNote_etymology">
        <rule context="tei:termNote[@type='etymology']">
          <assert test=".=not(*)">Information about the etymology of a term must
								be expressed in noteText. Etymology information should occur at the
								tig level or at the termCompGrp level.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="termNote_falseFriend">
        <rule context="tei:termNote[@type='falseFriend']">
          <assert test="(.=not(*[not(local-name()='hi')]))"> The false friend
								must be expressed in basicText. </assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="termNote_frequency">
        <rule context="tei:termNote[@type='frequency']">
          <assert test=". =        'commonlyUsed' or .='infrequentlyUsed' or .='rarelyUsed'">The frequency must be commonlyUsed, infrequentlyUsed, or
								rarelyUsed. </assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="termNote_geographicalUsage">
        <rule context="tei:termNote[@type='geographicalUsage']">
          <assert test=".=not(*)">The geographical usage must be expressed in
								plainText. </assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="termNote_grammaticalGender">
        <rule context="tei:termNote[@type='grammaticalGender']">
          <assert test="(.='masculine' or .='feminine' or .='neuter' or .='otherGender')"> The gender must be masculine, feminine, neuter, or otherGender.
								Gender should be specified at the term level (tig or ntig) or at the
								termCompGrp level.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="termNote_grammaticalNumber">
        <rule context="tei:termNote[@type='grammaticalNumber']">
          <assert test=". =         'single' or .='plural' or .='dual' or .='mass' or .='otherNumber'">The grammatical number must be single, plural, dual, mass, or
								otherNumber. The grammatical number should be specified at the term
								level (tig or ntig) or at the termCompGrp level.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="termNote_grammaticalValency">
        <rule context="tei:termNote[@type='grammaticalValency']">
          <assert test=".=not(*)"> The grammatical valency must be expressed in
								plainText. </assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="termNote_homograph">
        <rule context="tei:termNote[@type='homograph']">
          <assert test=".=not(*[not(local-name()='hi')])"> The homograph must
								be expressed in basicText. </assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="termNote_language-planningQualifier">
        <rule context="tei:termNote[@type='language-planningQualifier']">
          <assert test=". =        'recommendedTerm' or .='nonstandardizedTerm' or .='proposedTerm' or .='newTerm'">The language planning qualifier must be recommendedTerm,
								nonstandardizedTerm, proposedTerm, or newTerm. </assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="termNote_lionHotkey">
        <rule context="tei:termNote[@type='lionHotkey']">
          <assert test=".=not(*)">The hotkey must be expressed in plainText.
							</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="termNote_normativeAuthorization">
        <rule context="tei:termNote[@type='normativeAuthorization']">
          <assert test=". =        'standardizedTerm' or .='preferredTerm' or .='admittedTerm' or .='deprecatedTerm' or .='supersededTerm' or .='legalTerm' or .='regulatedTerm'">The normative authorization must be standardizedTerm,
								preferredTerm, admittedTerm, deprecatedTerm, supersededTerm,
								legalTerm, regulatedTerm . </assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="termNote_partOfSpeech">
        <rule context="tei:termNote[@type='partOfSpeech']">
          <assert test=".=not(*)">The part of speech must be a plainText value.
								It should be specified only at the term (tig or ntig) level or at
								the termCompGrp level.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="termNote_processStatus">
        <rule context="tei:termNote[@type='processStatus']">
          <assert test=". =        'unprocessed' or .='provisionallyProcessed' or .='finalized'">The process status must be unprocessed, provisionallyProcessed, or
								finalized. </assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="termNote_pronunciation">
        <rule context="tei:termNote[@type='pronunciation']">
          <assert test=".=not(*[not(local-name()='hi')])">The pronunciation
								must be expressed in basicText. It should be specified at the term
								(tig or ntig) level or at the termCompGrp level.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="termNote_proprietaryRestriction">
        <rule context="tei:termNote[@type='proprietaryRestriction']">
          <assert test=". =        'trademark' or .='serviceMark' or .='tradeName'">The proprietary restriction must be trademark, serviceMark, or
								tradeName. </assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="termNote_register">
        <rule context="tei:termNote[@type='register']">
          <assert test=". =        'colloquialRegister' or .='neutralRegister' or .='technicalRegister' or .='in-houseRegister' or .='bench-levelRegister' or .='slangRegister' or .='vulgarRegister'">The register must be colloquialRegister, neutralRegister,
								technicalRegister, in-houseRegister, bench-levelRegister,
								slangRegister, or vulgarRegister . </assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="termNote_shortFormFor">
        <rule context="tei:termNote[@type='shortFormFor']">
          <assert test=".=not(*[not(local-name()='hi')])"> The value of the
								short form in this element must be expressed in
							basicText.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="termNote_temporalQualifier">
        <rule context="tei:termNote[@type='temporalQualifier']">
          <assert test=". =        'archaicTerm' or .='outdatedTerm' or .='obsoleteTerm'">The temporal qualifier must be archaicTerm, outdatedTerm, or
								obsoleteTerm. </assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="termNote_termLocation">
        <rule context="tei:termNote[@type='termLocation']">
          <assert test=".=not(*)">The termLocation must be a plainText value. It
								should be specified only at the term (tig or ntig)
							level.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="termNote_termProvenance">
        <rule context="tei:termNote[@type='termProvenance']">
          <assert test=". =         'transdisciplinaryBorrowing' or .='translingualBorrowing' or .='loanTranslation' or .='neologism'">The term provenance must be transdisciplinaryBorrowing,
								translingualBorrowing, loanTranslation, or neologism.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="termNote_termType">
        <rule context="tei:termNote[@type='termType']">
          <assert test=". = 'abbreviation' or .='initialism' or .='acronym' or .='clippedTerm' or .='entryTerm' or .='synonym' or .='internationalScientificTerm' or .='fullForm' or .='transcribedForm' or .='symbol' or .='formula' or .='equation' or .='logicalExpression' or .='commonName' or .='variant' or .='shortForm' or .='transliteratedForm' or .='sku' or .='partNumber' or .='phraseologicalUnit' or .='synonymousPhrase' or .='standardText' or .='string' or .='internationalism' or .='shortcut'">The type of term can only be one of the following values:
								abbreviation, initialism, acronym, clippedTerm, entryTerm, synonym,
								internationalScientificTerm, fullForm, transcribedForm, symbol,
								formula, equation, logicalExpression, commonName, variant,
								shortForm, transliteratedForm, sku, partNumber, phraseologicalUnit,
								synonymousPhrase, standardText, string, internationalism,
							shortcut.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="termNote_termStructure">
        <rule context="tei:termNote[@type='termStructure']">
          <assert test=".=not(*)"> The term structure must be expressed in plain
								text.</assert>
        </rule>
      </pattern>
      <pattern xmlns="http://www.ascc.net/xml/schematron" xmlns:i="http://www.iso.org/ns/1.0" xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:rng="http://relaxng.org/ns/structure/1.0" name="termNote_timeRestriction">
        <rule context="tei:termNote[@type='timeRestriction']">
          <assert test=".=not(*)"> The time restriction must be expressed in
								plainText. </assert>
        </rule>
      </pattern>
      <ref name="IDLangTgtDtyp.attributes"/>
      <attribute name="type">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Indicates the data-category type of the termNote, such as
								partOfSpeech or termType.</a:documentation>
        <choice>
          <value>abbreviatedFormFor</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (abbreviatedFormFor) A link used to identify a relation between a term that is an
									abbreviated form, and its full or expanded form. It may be
									coupled with a target attribute to point to the entry
									of the full or expanded form. For example, the term
									WWW could have the following tag to point to its
									full form: World Wide
									Web. The actual content of the element would
									be the text World Wide Web, which allows the user
									to see what term is the full form of the current term without
									having to go to the location of the full form in the file (the
									location would normally be somewhere within the current entry,
									since the abbreviated form and the full form represent the same
									concept). The element content shall be expressed in basicText.
									The identification of a relation between an abbreviated term and
									its full form indicates which term in a terminological entry is
									the full form of the abbreviated term.
									In
									many languages, English abbreviations are commonly used, but the
									English full form may be avoided in favor of an equivalent full
									form in the language in question. In this case, the English
									abbreviation and the target language full form will both appear
									in the target language section of the entry.</a:documentation>
          <value>administrativeStatus</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (administrativeStatus) The status of a term within a certain working environment. The
									data-category administrativeStatus should be linked,
									through a target attribute, to a refObject
									in the back matter that identifies the administrative
									organization that determined the status. The element
										termNote when its type attribute has the
									value administrativeStatus shall contain one of the
									following values:
										                              * admittedTerm-admn-sts
										                              * deprecatedTerm-admn-sts
										                              * legalTerm-admn-sts
										                              * preferredTerm-admn-sts
										                              * regulatedTerm-admn-sts
										                              * standardizedTerm-admn-sts
										                              * supersededTerm-admn-sts
									                           
									                           The status of terms with respect to a standardization
										process is covered by normativeAuthorization.
									
                                 </a:documentation>
          <value>animacy</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (animacy) The characteristic of a word indicating that in a given
									discourse community, its referent is considered to be alive or
									to possess a quality of volition or consciousness. The value of
									the termNote element when it has a type
									attribute value of animacy shall be one of:
										animate, inanimate,
									otherAnimacy.</a:documentation>
          <value>antonymTerm</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (antonymTerm) A term that designates a concept that is opposite in meaning
									to the concept being described in the current entry. A
										termNote element that has a type
									attribute value of antonymTerm can also have a
										target attribute pointing to the term ID of the
									term that represents the antonym concept. The display term in
									the content of this element shall be expressed in basicText.</a:documentation>
          <value>directionality</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (directionality) A data-category that, through the value of its target
									attribute, indicates the preferred translation of the term in
									the term element of the current tig from among
									the available translations in the entry. The target
									attribute should point to the identifier of the tig
									corresponding to the target term. In the case of the values
										monodirectional and bidirectional, the
									target term is the preferred translation. The content of the
										termNote element when it has a type
									attribute value of directionality indicates the scope
									of directionality, and shall be one of the following:
										                              * 
                                          monodirectional: The translation is only
											preferred going from the source language (current
												tig to the target language (target
											tig).

										                              * 
                                          bidirectional: The translation is preferred
											in both directions, i.e. the term in the target
											tig is a preferred translation of the term in
											the current tig and vice-versa.

										                              * 
                                          incommensurate: The relation between the
											term in the current tig and the term in the
											target tig as translations is imperfect and
											should be used with care. In this case, the concepts are
											not equal. A 
											should be used to provide information about the
											difference between the concepts.

										                              * 
                                          undetermined: The scope of directionality
											has not been determined.

									                           
                                 </a:documentation>
          <value>etymology</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (etymology) Information on the origin of a word and the development of its
									meaning. The element content shall be expressed in noteText.
								</a:documentation>
          <value>falseFriend</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (falseFriend) A term in another language that appears to be semantically or
									morphologically similar to the subject term in the entry, but
									that does not represent the same concept. For example, in
									French, the term réaliser means "to accomplish",
									and therefore, it is a false friend of the English term
										realize (i.e. to become conscious of). A
										termNote element with the type attribute
									value of falseFriend can also have a
									target attribute whose value is a pointer to a term
									in another entry. The element content shall be expressed in
									basicText.</a:documentation>
          <value>frequency</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (frequency) The relative commonness with which a term occurs. The content
									of the termNote element when it has a type
									attribute value of frequency shall be one of:
										commonlyUsed, infrequentlyUsed,
										rarelyUsed. The assessment of frequency of a term
									can be based on subjective criteria, or it can reflect computer
									analysis of text corpora.</a:documentation>
          <value>geographicalUsage</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (geographicalUsage) A code identifying any specific geographical area where the
									term is used, for instance, to differentiate between UK English
									and US English. Preferred values are language codes combined
									with geographical codes, from IETF RFC 4646 or its successor, as
									identified in IETF BCP 47. For example: en-US for American
									English. The element content shall be expressed in plainText.
								</a:documentation>
          <value>grammaticalGender</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (grammaticalGender) The gender of the word. The value of the termNote
									element when it has a type attribute value of
										grammaticalGender shall be one of:
									masculine, feminine, neuter, or
										otherGender.</a:documentation>
          <value>grammaticalNumber</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (grammaticalNumber) A property of a term that indicates the number of objects
									referred to by the term. The content of the termNote
									element when it has a type attribute value of
										grammaticalNumber shall be one of:
									singular, plural, dual,
										mass, or otherNumber. For example, the
									terms rice and bread are mass nouns
									because there are no separate singular and plural forms.
										If the singular and the plural forms of a term do not
										designate the same concept, they should be recorded in
										separate entries.
                                 </a:documentation>
          <value>grammaticalValency</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (grammaticalValency) The range of syntactic elements either required or permitted
									by a lexical unit. The valency of eat includes a
									subject ("I" in "I am eating") and an object ("cheese" in "I am
									eating cheese".) It can thus be said to be "bivalent". The
									element content shall be expressed in plainText.
									</a:documentation>
          <value>homograph</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (homograph) A word that is spelled like the subject term in the entry, but
									that has a different meaning, and origin. Homographs are terms
									that have the same written form, but are derived from different
									etymological origins, for example, a port for boats
									and a port for computer peripherals. A
									termNote element having a type attribute
									value of homograph can also have a target
									attribute to point to the tig of the entry that
									describes the homograph. The element content shall be expressed
									in basicText.</a:documentation>
          <value>language-planningQualifier</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (language-planningQualifier) A qualifier assigned to a provisional term within a language
									planning or descriptive terminology environment. The content of
									the termNote element when it has a type
									attribute value of language-planningQualifier shall
									be one of: recommendedTerm,
									nonstandardizedTerm, proposedTerm, or
										newTerm.</a:documentation>
          <value>lionHotkey</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (lionHotkey) The letter in a word that acts as a hotkey in a computer
									application. A hotkey is a key or a combination of keys
									on a computer keyboard
									that, when pressed at one time, performs a task (such as
									starting an application) as an alternative to using a mouse or
									other input device. Hotkeys are supported by many operating
									systems and applications. The hotkey is indicated by an
									ampersand in the term in software interface files, and by an
									underscore in the actual visual display. The element content
									shall be expressed in plainText. </a:documentation>
          <value>normativeAuthorization</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (normativeAuthorization) A term status qualifier assigned by an authoritative body,
									such as a standards body or a governmental entity with a
									regulatory function. The content of the termNote
									element when it has a type attribute value of
										normativeAuthorization shall be one of:
										                              * standardizedTerm
										                              * preferredTerm
										                              * admittedTerm
										                              * deprecatedTerm
										                              * supersededTerm
										                              * legalTerm
										                              * regulatedTerm
									                            The name of the authoritative body should be documented
									in the terminology repository, and referenced in the TBX
									document instance by using a refObject. </a:documentation>
          <value>partOfSpeech</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (partOfSpeech) A category assigned to a word based on its grammatical and
									semantic properties. For example: noun,
									verb, or adjective. The element content
									shall be expressed in plainText, and preferably be limited to a
									set of picklist values. Only one value shall be permitted for
									each term in a given entry. For example, the following
									values are permitted in the TBX-Basic TML:
										                              * noun
										                              * verb
										                              * adjective
										                              * adverb
										                              * properNoun
										                              * other
									                           
                                 </a:documentation>
          <value>processStatus</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (processStatus) The status of a term with respect to its advancement within
									the  terminology management process. The
									content of the termNote element when it has a
									type attribute value of processStatus
									shall be one of: unprocessed,
										provisionallyProcessed, or
								finalized.</a:documentation>
          <value>pronunciation</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (pronunciation) The representation of the manner by which a term is spoken. In
									TBX, pronunciation shall be represented in the International
									Phonetic Alphabet. A given term can have more than one
									pronunciation depending on the geographical area in which the
									term is used. A given term can have more than one pronunciation
									depending on the geographical area in which the term is used. In
									this case use a separate tig or ntig element
									for each pronunciation, and indicate the gegraphical area of
									each by using a termNote element with a type
									attribute value of geographicalUsage. The element
									content shall be expressed in basicText.</a:documentation>
          <value>proprietaryRestriction</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (proprietaryRestriction) A restriction placed on a term for the purpose of protecting
									the right of an organization to the exclusive use of the term.
									The content of the termNote element when it has a
										type attribute value of
										proprietaryRestriction shall be one of:
										trademark, serviceMark or
										tradeName. The content value "copyright" is
										not included because copyright only applies to larger text
										units, such as books, not to terms.
                                 </a:documentation>
          <value>register</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (register) Classification indicating the level of language assigned to a
									term. The content of the termNote element when it has a
										type attribute value of register shall
									be one of: 
										                              * colloquialRegister
										                              * neutralRegister
										                              * technicalRegister
										                              * in-houseRegister
										                              * bench-levelRegister
										                              * slangRegister
										                              * vulgarRegister
									                           
									                        </a:documentation>
          <value>shortFormFor</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (shortFormFor) A linking element used to identify a relation between the
									subject term when it is a short form, and its full or expanded
									form. It may be coupled with a target attribute to
									point to the full or expanded form. Normally both the short form
									and the full form will be contained in the same entry, but each
									in its own tig, because they represent the same
									concept. For example, the term United States could
									have the following markup to point to the full form term
										United States of America: United States of
										America. The content of the element
									would be the target term, expressed in basicText, which allows
									the user to see the target term without going to its location in
									the entry. The identification of a relation between a short form
									and its full form indicates which term in a terminological entry
									is the full form of the short form.
									</a:documentation>
          <value>temporalQualifier</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (temporalQualifier) A property of a term with respect to its use over time. The
									content of the termNote element when it has a
									type attribute value of temporalQualifier
									shall be one of: archaicTerm,
									outdatedTerm, obsoleteTerm.</a:documentation>
          <value>termLocation</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (termLocation) A location in a document, computer file, or other information
									medium, where the term frequently occurs, such as a user
									interface object (in software), a packaging element, a component
									in an industrial process, and so forth. The element content
									shall be expressed in plainText, and preferably be restricted to
									a set of picklist values. The following picklist values are
									recommended for software user interface locations in a Windows
									environment. 
										                              * checkBox
										                              * comboBox
										                              * comboBoxElement
										                              * dialogBox
										                              * groupBox
										                              * informativeMessage
										                              * interactiveMessage
										                              * menuItem
										                              * progressBar
										                              * pushButton
										                              * radioButton
										                              * slider
										                              * spinBox
										                              * tab
										                              * tableText
										                              * textBox
										                              * toolTip
										                              * user-definedType
									                           
								                         </a:documentation>
          <value>termProvenance</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (termProvenance) Classification of a term according to the methodology employed
									in creating the term. The content of the termNote
									element when it has a type attribute value of
										termProvenance shall be one of:
										transdisciplinaryBorrowing,
										translingualBorrowing,
									loanTranslation, or neologism.</a:documentation>
          <value>termStructure</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (termStructure) The structure of the components of a term, indicated using
									square brackets. For example, e.g. : [bank statement] [total]
									versus [bank] [statement total]. The element content shall be
									expressed in plainText.
									</a:documentation>
          <value>termType</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (termType) A categorization of a term with respect to formal
									representations of terms or where or how they are used, for
									example, acronym. The content of the
									termNote element when it has a type
									attribute value of termType shall be one of the following:
										                              * abbreviation
										                              * acronym
										                              * clippedTerm
										                              * commonName
										                              * entryTerm
										                              * equation
										                              * formula
										                              * fullForm
										                              * initialism
										                              * internationalism
										                              * internationalScientificTerm
										                              * logicalExpression
										                              * partNumber
										                              * phraseologicalUnit
										                              * transcribedForm
										                              * transliteratedForm
										                              * shortForm
										                              * shortcut
										                              * sku
										                              * standardText
										                              * string
										                              * symbol
										                              * synonym
										                              * synonymousPhrase
										                              * variant
									                           Refer to ISO 12620 for definitions of the above term
									types. The value shortcut refers to a string that
									acts as a keyboard shortcut on computers, for example,
										Ctrl + V is a term that represents a keyboard
									shortcut for the concept of paste.</a:documentation>
          <value>timeRestriction</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (timeRestriction) The indication of a period of time during or since which a
									term was or has been subject to specified usage. For example,
									several European countries have redefined the requirements for
									certain university degrees in recent years. If, for instance,
									the requirements for a baccalaureate degree changed from three
									to four years in 1993, then any terminology entry defining the
									term used to designate this degree would have to specify the
									time restriction affecting the definition, which would be
									different before 1993 and after 1993. The element content shall
									be expressed in plainText. </a:documentation>
          <value>transferComment</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (transferComment) Note included in a term entry providing information on the
									degree of equivalence, directionality or other special features
									affecting equivalence between a term in one language and another
									term in a second language. This element can be used in
									conjunction with the 
									element to indicate the preferred translation of the term in
									question. The termNote element with a type
									attribute value of transferComment can also have a
										target attribute to point to the term that is the
									object of the transfer comment.</a:documentation>
          <value>usageNote</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (usageNote) A note containing information on the usage of the term.</a:documentation>
        </choice>
      </attribute>
      <empty/>
    </element>
  </define>
  <start>
    <choice>
      <ref name="TEI"/>
      <ref name="teiHeader"/>
    </choice>
  </start>
</grammar>
