<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://www.w3.org/1998/Math/MathML" xmlns:mathml="http://www.w3.org/1998/Math/MathML" xmlns:t="http://www.lisa.org/TBX-Specification.33.0.html" xmlns:teidocx="http://www.tei-c.org/ns/teidocx/1.0" xmlns:tm9901="http://www.oasis-open.org/specs/tm9901" xmlns:ns1="http://www.tei-c.org/ns/1.0" xmlns:ns2="http://www.iso.org/ns/1.0" xmlns:xlink="http://www.w3.org/1999/xlink">
  <xs:import namespace="http://www.iso.org/ns/1.0" schemaLocation="ns2.xsd"/>
  <xs:import namespace="http://www.lisa.org/TBX-Specification.33.0.html" schemaLocation="t.xsd"/>
  <xs:import namespace="http://www.oasis-open.org/specs/tm9901" schemaLocation="tm9901.xsd"/>
  <xs:import namespace="http://www.tei-c.org/ns/1.0" schemaLocation="ns1.xsd"/>
  <xs:import namespace="http://www.tei-c.org/ns/teidocx/1.0" schemaLocation="teidocx.xsd"/>
  <xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="xlink.xsd"/>
  <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
  <!--
    Schema generated from ODD source 2010-06-04T15:06:24Z. 
    Edition: 1.6.0 (June 2010)
    
  -->
  <!---->
  <xs:attributeGroup name="MATHML.Common.attrib">
    <xs:attribute ref="xlink:href"/>
    <xs:attribute ref="xlink:type"/>
    <xs:attribute name="class"/>
    <xs:attribute name="style"/>
    <xs:attribute name="id" type="xs:ID"/>
    <xs:attribute name="xref" type="xs:IDREF"/>
    <xs:attribute name="other"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-fontsize">
    <xs:attribute name="fontsize"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-fontweight">
    <xs:attribute name="fontweight">
      <xs:simpleType>
        <xs:restriction base="xs:token">
          <xs:enumeration value="normal"/>
          <xs:enumeration value="bold"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-fontstyle">
    <xs:attribute name="fontstyle">
      <xs:simpleType>
        <xs:restriction base="xs:token">
          <xs:enumeration value="normal"/>
          <xs:enumeration value="italic"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-fontfamily">
    <xs:attribute name="fontfamily"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-color">
    <xs:attribute name="color"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-mathvariant">
    <xs:attribute name="mathvariant"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-mathsize">
    <xs:attribute name="mathsize"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-mathcolor">
    <xs:attribute name="mathcolor"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-mathbackground">
    <xs:attribute name="mathbackground"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-fontinfo">
    <xs:attributeGroup ref="mathml:mathml.att-fontsize"/>
    <xs:attributeGroup ref="mathml:mathml.att-fontweight"/>
    <xs:attributeGroup ref="mathml:mathml.att-fontstyle"/>
    <xs:attributeGroup ref="mathml:mathml.att-fontfamily"/>
    <xs:attributeGroup ref="mathml:mathml.att-color"/>
    <xs:attributeGroup ref="mathml:mathml.att-mathvariant"/>
    <xs:attributeGroup ref="mathml:mathml.att-mathsize"/>
    <xs:attributeGroup ref="mathml:mathml.att-mathcolor"/>
    <xs:attributeGroup ref="mathml:mathml.att-mathbackground"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-form">
    <xs:attribute name="form">
      <xs:simpleType>
        <xs:restriction base="xs:token">
          <xs:enumeration value="prefix"/>
          <xs:enumeration value="infix"/>
          <xs:enumeration value="postfix"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-fence">
    <xs:attribute name="fence">
      <xs:simpleType>
        <xs:restriction base="xs:token">
          <xs:enumeration value="true"/>
          <xs:enumeration value="false"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-separator">
    <xs:attribute name="separator">
      <xs:simpleType>
        <xs:restriction base="xs:token">
          <xs:enumeration value="true"/>
          <xs:enumeration value="false"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-lspace">
    <xs:attribute name="lspace"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-rspace">
    <xs:attribute name="rspace"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-stretchy">
    <xs:attribute name="stretchy">
      <xs:simpleType>
        <xs:restriction base="xs:token">
          <xs:enumeration value="true"/>
          <xs:enumeration value="false"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-symmetric">
    <xs:attribute name="symmetric">
      <xs:simpleType>
        <xs:restriction base="xs:token">
          <xs:enumeration value="true"/>
          <xs:enumeration value="false"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-maxsize">
    <xs:attribute name="maxsize"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-minsize">
    <xs:attribute name="minsize"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-largeop">
    <xs:attribute name="largeop">
      <xs:simpleType>
        <xs:restriction base="xs:token">
          <xs:enumeration value="true"/>
          <xs:enumeration value="false"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-movablelimits">
    <xs:attribute name="movablelimits">
      <xs:simpleType>
        <xs:restriction base="xs:token">
          <xs:enumeration value="true"/>
          <xs:enumeration value="false"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-accent">
    <xs:attribute name="accent">
      <xs:simpleType>
        <xs:restriction base="xs:token">
          <xs:enumeration value="true"/>
          <xs:enumeration value="false"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-opinfo">
    <xs:attributeGroup ref="mathml:mathml.att-form"/>
    <xs:attributeGroup ref="mathml:mathml.att-fence"/>
    <xs:attributeGroup ref="mathml:mathml.att-separator"/>
    <xs:attributeGroup ref="mathml:mathml.att-lspace"/>
    <xs:attributeGroup ref="mathml:mathml.att-rspace"/>
    <xs:attributeGroup ref="mathml:mathml.att-stretchy"/>
    <xs:attributeGroup ref="mathml:mathml.att-symmetric"/>
    <xs:attributeGroup ref="mathml:mathml.att-maxsize"/>
    <xs:attributeGroup ref="mathml:mathml.att-minsize"/>
    <xs:attributeGroup ref="mathml:mathml.att-largeop"/>
    <xs:attributeGroup ref="mathml:mathml.att-movablelimits"/>
    <xs:attributeGroup ref="mathml:mathml.att-accent"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-width">
    <xs:attribute name="width"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-height">
    <xs:attribute name="height"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-depth">
    <xs:attribute name="depth"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-linebreak">
    <xs:attribute name="linebreak"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-sizeinfo">
    <xs:attributeGroup ref="mathml:mathml.att-width"/>
    <xs:attributeGroup ref="mathml:mathml.att-height"/>
    <xs:attributeGroup ref="mathml:mathml.att-depth"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-lquote">
    <xs:attribute name="lquote"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-rquote">
    <xs:attribute name="rquote"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-linethickness">
    <xs:attribute name="linethickness"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-scriptlevel">
    <xs:attribute name="scriptlevel"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-displaystyle">
    <xs:attribute name="displaystyle">
      <xs:simpleType>
        <xs:restriction base="xs:token">
          <xs:enumeration value="true"/>
          <xs:enumeration value="false"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-scriptsizemultiplier">
    <xs:attribute name="scriptsizemultiplier"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-scriptminsize">
    <xs:attribute name="scriptminsize"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-background">
    <xs:attribute name="background"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-veryverythinmathspace">
    <xs:attribute name="veryverythinmathspace"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-verythinmathspace">
    <xs:attribute name="verythinmathspace"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-thinmathspace">
    <xs:attribute name="thinmathspace"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-mediummathspace">
    <xs:attribute name="mediummathspace"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-thickmathspace">
    <xs:attribute name="thickmathspace"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-verythickmathspace">
    <xs:attribute name="verythickmathspace"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-veryverythickmathspace">
    <xs:attribute name="veryverythickmathspace"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-open">
    <xs:attribute name="open"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-close">
    <xs:attribute name="close"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-separators">
    <xs:attribute name="separators"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-subscriptshift">
    <xs:attribute name="subscriptshift"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-superscriptshift">
    <xs:attribute name="superscriptshift"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-accentunder">
    <xs:attribute name="accentunder">
      <xs:simpleType>
        <xs:restriction base="xs:token">
          <xs:enumeration value="true"/>
          <xs:enumeration value="false"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-align">
    <xs:attribute name="align"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-numalign">
    <xs:attribute name="numalign"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-denomalign">
    <xs:attribute name="denomalign"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-rowalign">
    <xs:attribute name="rowalign"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-columnalign">
    <xs:attribute name="columnalign"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-columnwidth">
    <xs:attribute name="columnwidth"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-groupalign">
    <xs:attribute name="groupalign"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-alignmentscope">
    <xs:attribute name="alignmentscope"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-rowspacing">
    <xs:attribute name="rowspacing"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-columnspacing">
    <xs:attribute name="columnspacing"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-rowlines">
    <xs:attribute name="rowlines"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-columnlines">
    <xs:attribute name="columnlines"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-frame">
    <xs:attribute name="frame">
      <xs:simpleType>
        <xs:restriction base="xs:token">
          <xs:enumeration value="none"/>
          <xs:enumeration value="solid"/>
          <xs:enumeration value="dashed"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-side">
    <xs:attribute name="side">
      <xs:simpleType>
        <xs:restriction base="xs:token">
          <xs:enumeration value="left"/>
          <xs:enumeration value="right"/>
          <xs:enumeration value="leftoverlap"/>
          <xs:enumeration value="rightoverlap"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-framespacing">
    <xs:attribute name="framespacing"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-equalrows">
    <xs:attribute name="equalrows"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-equalcolumns">
    <xs:attribute name="equalcolumns"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-tableinfo">
    <xs:attributeGroup ref="mathml:mathml.att-align"/>
    <xs:attributeGroup ref="mathml:mathml.att-rowalign"/>
    <xs:attributeGroup ref="mathml:mathml.att-columnalign"/>
    <xs:attributeGroup ref="mathml:mathml.att-columnwidth"/>
    <xs:attributeGroup ref="mathml:mathml.att-groupalign"/>
    <xs:attributeGroup ref="mathml:mathml.att-alignmentscope"/>
    <xs:attributeGroup ref="mathml:mathml.att-side"/>
    <xs:attributeGroup ref="mathml:mathml.att-rowspacing"/>
    <xs:attributeGroup ref="mathml:mathml.att-columnspacing"/>
    <xs:attributeGroup ref="mathml:mathml.att-rowlines"/>
    <xs:attributeGroup ref="mathml:mathml.att-columnlines"/>
    <xs:attributeGroup ref="mathml:mathml.att-width"/>
    <xs:attributeGroup ref="mathml:mathml.att-frame"/>
    <xs:attributeGroup ref="mathml:mathml.att-framespacing"/>
    <xs:attributeGroup ref="mathml:mathml.att-equalrows"/>
    <xs:attributeGroup ref="mathml:mathml.att-equalcolumns"/>
    <xs:attributeGroup ref="mathml:mathml.att-displaystyle"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-rowspan">
    <xs:attribute name="rowspan"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-columnspan">
    <xs:attribute name="columnspan"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-edge">
    <xs:attribute name="edge">
      <xs:simpleType>
        <xs:restriction base="xs:token">
          <xs:enumeration value="left"/>
          <xs:enumeration value="right"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-actiontype">
    <xs:attribute name="actiontype"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-selection">
    <xs:attribute name="selection"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-name">
    <xs:attribute name="name"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-alt">
    <xs:attribute name="alt"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-index">
    <xs:attribute name="index"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-bevelled">
    <xs:attribute name="bevelled"/>
  </xs:attributeGroup>
  <xs:group name="mathml.ptoken">
    <xs:choice>
      <xs:element ref="mathml:mi"/>
      <xs:element ref="mathml:mn"/>
      <xs:element ref="mathml:mo"/>
      <xs:element ref="mathml:mtext"/>
      <xs:element ref="mathml:ms"/>
    </xs:choice>
  </xs:group>
  <xs:attributeGroup name="mathml.attlist-mi">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-fontinfo"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.attlist-mn">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-fontinfo"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.attlist-mo">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-fontinfo"/>
    <xs:attributeGroup ref="mathml:mathml.att-opinfo"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.attlist-mtext">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-fontinfo"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.attlist-ms">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-fontinfo"/>
    <xs:attributeGroup ref="mathml:mathml.att-lquote"/>
    <xs:attributeGroup ref="mathml:mathml.att-rquote"/>
  </xs:attributeGroup>
  <xs:group name="mathml.petoken">
    <xs:sequence>
      <xs:element ref="mathml:mspace"/>
    </xs:sequence>
  </xs:group>
  <xs:element name="mspace">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-mspace"/>
    </xs:complexType>
  </xs:element>
  <xs:complexType name="mathml.any" mixed="true">
    <xs:choice minOccurs="0">
      <xs:element ref="mathml:mspace"/>
      <xs:element ref="mathml:mprescripts"/>
      <xs:element ref="mathml:none"/>
      <xs:element ref="mathml:malignmark"/>
      <xs:element ref="mathml:maligngroup"/>
      <xs:element ref="mathml:mglyph"/>
      <xs:element ref="mathml:sep"/>
      <xs:element ref="mathml:integers"/>
      <xs:element ref="mathml:reals"/>
      <xs:element ref="mathml:rationals"/>
      <xs:element ref="mathml:naturalnumbers"/>
      <xs:element ref="mathml:complexes"/>
      <xs:element ref="mathml:primes"/>
      <xs:element ref="mathml:exponentiale"/>
      <xs:element ref="mathml:imaginaryi"/>
      <xs:element ref="mathml:notanumber"/>
      <xs:element ref="mathml:true"/>
      <xs:element ref="mathml:false"/>
      <xs:element ref="mathml:emptyset"/>
      <xs:element ref="mathml:pi"/>
      <xs:element ref="mathml:eulergamma"/>
      <xs:element ref="mathml:infinity"/>
      <xs:element ref="mathml:inverse"/>
      <xs:element ref="mathml:domain"/>
      <xs:element ref="mathml:codomain"/>
      <xs:element ref="mathml:image"/>
      <xs:element ref="mathml:ident"/>
      <xs:element ref="mathml:compose"/>
      <xs:element ref="mathml:exp"/>
      <xs:element ref="mathml:abs"/>
      <xs:element ref="mathml:arg"/>
      <xs:element ref="mathml:real"/>
      <xs:element ref="mathml:imaginary"/>
      <xs:element ref="mathml:conjugate"/>
      <xs:element ref="mathml:factorial"/>
      <xs:element ref="mathml:floor"/>
      <xs:element ref="mathml:ceiling"/>
      <xs:element ref="mathml:minus"/>
      <xs:element ref="mathml:quotient"/>
      <xs:element ref="mathml:divide"/>
      <xs:element ref="mathml:power"/>
      <xs:element ref="mathml:rem"/>
      <xs:element ref="mathml:plus"/>
      <xs:element ref="mathml:max"/>
      <xs:element ref="mathml:min"/>
      <xs:element ref="mathml:times"/>
      <xs:element ref="mathml:gcd"/>
      <xs:element ref="mathml:lcm"/>
      <xs:element ref="mathml:root"/>
      <xs:element ref="mathml:exists"/>
      <xs:element ref="mathml:forall"/>
      <xs:element ref="mathml:and"/>
      <xs:element ref="mathml:or"/>
      <xs:element ref="mathml:xor"/>
      <xs:element ref="mathml:not"/>
      <xs:element ref="mathml:implies"/>
      <xs:element ref="mathml:divergence"/>
      <xs:element ref="mathml:grad"/>
      <xs:element ref="mathml:curl"/>
      <xs:element ref="mathml:laplacian"/>
      <xs:element ref="mathml:log"/>
      <xs:element ref="mathml:int"/>
      <xs:element ref="mathml:diff"/>
      <xs:element ref="mathml:partialdiff"/>
      <xs:element ref="mathml:ln"/>
      <xs:element ref="mathml:card"/>
      <xs:element ref="mathml:setdiff"/>
      <xs:element ref="mathml:union"/>
      <xs:element ref="mathml:intersect"/>
      <xs:element ref="mathml:cartesianproduct"/>
      <xs:element ref="mathml:sum"/>
      <xs:element ref="mathml:product"/>
      <xs:element ref="mathml:limit"/>
      <xs:element ref="mathml:sin"/>
      <xs:element ref="mathml:cos"/>
      <xs:element ref="mathml:tan"/>
      <xs:element ref="mathml:sec"/>
      <xs:element ref="mathml:csc"/>
      <xs:element ref="mathml:cot"/>
      <xs:element ref="mathml:sinh"/>
      <xs:element ref="mathml:cosh"/>
      <xs:element ref="mathml:tanh"/>
      <xs:element ref="mathml:sech"/>
      <xs:element ref="mathml:csch"/>
      <xs:element ref="mathml:coth"/>
      <xs:element ref="mathml:arcsin"/>
      <xs:element ref="mathml:arccos"/>
      <xs:element ref="mathml:arctan"/>
      <xs:element ref="mathml:arccosh"/>
      <xs:element ref="mathml:arccot"/>
      <xs:element ref="mathml:arccoth"/>
      <xs:element ref="mathml:arccsc"/>
      <xs:element ref="mathml:arccsch"/>
      <xs:element ref="mathml:arcsec"/>
      <xs:element ref="mathml:arcsech"/>
      <xs:element ref="mathml:arcsinh"/>
      <xs:element ref="mathml:arctanh"/>
      <xs:element ref="mathml:mean"/>
      <xs:element ref="mathml:sdev"/>
      <xs:element ref="mathml:variance"/>
      <xs:element ref="mathml:median"/>
      <xs:element ref="mathml:mode"/>
      <xs:element ref="mathml:moment"/>
      <xs:element ref="mathml:determinant"/>
      <xs:element ref="mathml:transpose"/>
      <xs:element ref="mathml:vectorproduct"/>
      <xs:element ref="mathml:scalarproduct"/>
      <xs:element ref="mathml:outerproduct"/>
      <xs:element ref="mathml:selector"/>
      <xs:element ref="mathml:neq"/>
      <xs:element ref="mathml:factorof"/>
      <xs:element ref="mathml:eq"/>
      <xs:element ref="mathml:equivalent"/>
      <xs:element ref="mathml:approx"/>
      <xs:element ref="mathml:gt"/>
      <xs:element ref="mathml:lt"/>
      <xs:element ref="mathml:geq"/>
      <xs:element ref="mathml:leq"/>
      <xs:element ref="mathml:in"/>
      <xs:element ref="mathml:notin"/>
      <xs:element ref="mathml:notsubset"/>
      <xs:element ref="mathml:notprsubset"/>
      <xs:element ref="mathml:subset"/>
      <xs:element ref="mathml:prsubset"/>
      <xs:element ref="mathml:tendsto"/>
      <xs:element ref="mathml:ci"/>
      <xs:element ref="mathml:csymbol"/>
      <xs:element ref="mathml:cn"/>
      <xs:element ref="mathml:apply"/>
      <xs:element ref="mathml:reln"/>
      <xs:element ref="mathml:lambda"/>
      <xs:element ref="mathml:condition"/>
      <xs:element ref="mathml:declare"/>
      <xs:element ref="mathml:semantics"/>
      <xs:element ref="mathml:annotation"/>
      <xs:element ref="mathml:annotation-xml"/>
      <xs:element ref="mathml:interval"/>
      <xs:element ref="mathml:set"/>
      <xs:element ref="mathml:list"/>
      <xs:element ref="mathml:vector"/>
      <xs:element ref="mathml:matrix"/>
      <xs:element ref="mathml:matrixrow"/>
      <xs:element ref="mathml:piecewise"/>
      <xs:element ref="mathml:piece"/>
      <xs:element ref="mathml:otherwise"/>
      <xs:element ref="mathml:fn"/>
      <xs:element ref="mathml:lowlimit"/>
      <xs:element ref="mathml:uplimit"/>
      <xs:element ref="mathml:bvar"/>
      <xs:element ref="mathml:degree"/>
      <xs:element ref="mathml:logbase"/>
      <xs:element ref="mathml:momentabout"/>
      <xs:element ref="mathml:domainofapplication"/>
      <xs:element ref="mathml:mstyle"/>
      <xs:element ref="mathml:merror"/>
      <xs:element ref="mathml:mphantom"/>
      <xs:element ref="mathml:mrow"/>
      <xs:element ref="mathml:mfrac"/>
      <xs:element ref="mathml:msqrt"/>
      <xs:element ref="mathml:menclose"/>
      <xs:element ref="mathml:mroot"/>
      <xs:element ref="mathml:msub"/>
      <xs:element ref="mathml:msup"/>
      <xs:element ref="mathml:msubsup"/>
      <xs:element ref="mathml:mmultiscripts"/>
      <xs:element ref="mathml:munder"/>
      <xs:element ref="mathml:mover"/>
      <xs:element ref="mathml:munderover"/>
      <xs:element ref="mathml:mtable"/>
      <xs:element ref="mathml:mtr"/>
      <xs:element ref="mathml:mlabeledtr"/>
      <xs:element ref="mathml:mtd"/>
      <xs:element ref="mathml:maction"/>
      <xs:element ref="mathml:mfenced"/>
      <xs:element ref="mathml:mpadded"/>
      <xs:element ref="mathml:mi"/>
      <xs:element ref="mathml:mn"/>
      <xs:element ref="mathml:mo"/>
      <xs:element ref="mathml:mtext"/>
      <xs:element ref="mathml:ms"/>
      <xs:element ref="mathml:math"/>
    </xs:choice>
  </xs:complexType>
  <xs:attributeGroup name="mathml.attlist-mspace">
    <xs:attributeGroup ref="mathml:mathml.att-sizeinfo"/>
    <xs:attributeGroup ref="mathml:mathml.att-linebreak"/>
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
  </xs:attributeGroup>
  <xs:group name="mathml.pgenschema">
    <xs:choice>
      <xs:element ref="mathml:mrow"/>
      <xs:element ref="mathml:mfrac"/>
      <xs:element ref="mathml:msqrt"/>
      <xs:element ref="mathml:mroot"/>
      <xs:element ref="mathml:menclose"/>
      <xs:element ref="mathml:mstyle"/>
      <xs:element ref="mathml:merror"/>
      <xs:element ref="mathml:mpadded"/>
      <xs:element ref="mathml:mphantom"/>
      <xs:element ref="mathml:mfenced"/>
    </xs:choice>
  </xs:group>
  <xs:attributeGroup name="mathml.attlist-mrow">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.attlist-mfrac">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-bevelled"/>
    <xs:attributeGroup ref="mathml:mathml.att-numalign"/>
    <xs:attributeGroup ref="mathml:mathml.att-denomalign"/>
    <xs:attributeGroup ref="mathml:mathml.att-linethickness"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.attlist-msqrt">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.attlist-menclose">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attribute name="notation" default="longdiv"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.attlist-mroot">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.attlist-mstyle">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-fontinfo"/>
    <xs:attributeGroup ref="mathml:mathml.att-opinfo"/>
    <xs:attributeGroup ref="mathml:mathml.att-lquote"/>
    <xs:attributeGroup ref="mathml:mathml.att-rquote"/>
    <xs:attributeGroup ref="mathml:mathml.att-linethickness"/>
    <xs:attributeGroup ref="mathml:mathml.att-scriptlevel"/>
    <xs:attributeGroup ref="mathml:mathml.att-scriptsizemultiplier"/>
    <xs:attributeGroup ref="mathml:mathml.att-scriptminsize"/>
    <xs:attributeGroup ref="mathml:mathml.att-background"/>
    <xs:attributeGroup ref="mathml:mathml.att-veryverythinmathspace"/>
    <xs:attributeGroup ref="mathml:mathml.att-verythinmathspace"/>
    <xs:attributeGroup ref="mathml:mathml.att-thinmathspace"/>
    <xs:attributeGroup ref="mathml:mathml.att-mediummathspace"/>
    <xs:attributeGroup ref="mathml:mathml.att-thickmathspace"/>
    <xs:attributeGroup ref="mathml:mathml.att-verythickmathspace"/>
    <xs:attributeGroup ref="mathml:mathml.att-veryverythickmathspace"/>
    <xs:attributeGroup ref="mathml:mathml.att-open"/>
    <xs:attributeGroup ref="mathml:mathml.att-close"/>
    <xs:attributeGroup ref="mathml:mathml.att-separators"/>
    <xs:attributeGroup ref="mathml:mathml.att-subscriptshift"/>
    <xs:attributeGroup ref="mathml:mathml.att-superscriptshift"/>
    <xs:attributeGroup ref="mathml:mathml.att-accentunder"/>
    <xs:attributeGroup ref="mathml:mathml.att-tableinfo"/>
    <xs:attributeGroup ref="mathml:mathml.att-rowspan"/>
    <xs:attributeGroup ref="mathml:mathml.att-columnspan"/>
    <xs:attributeGroup ref="mathml:mathml.att-edge"/>
    <xs:attributeGroup ref="mathml:mathml.att-actiontype"/>
    <xs:attributeGroup ref="mathml:mathml.att-selection"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.attlist-merror">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.attlist-mpadded">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-sizeinfo"/>
    <xs:attributeGroup ref="mathml:mathml.att-lspace"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.attlist-mphantom">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.attlist-mfenced">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-open"/>
    <xs:attributeGroup ref="mathml:mathml.att-close"/>
    <xs:attributeGroup ref="mathml:mathml.att-separators"/>
  </xs:attributeGroup>
  <xs:group name="mathml.pscrschema">
    <xs:choice>
      <xs:element ref="mathml:msub"/>
      <xs:element ref="mathml:msup"/>
      <xs:element ref="mathml:msubsup"/>
      <xs:element ref="mathml:munder"/>
      <xs:element ref="mathml:mover"/>
      <xs:element ref="mathml:munderover"/>
      <xs:element ref="mathml:mmultiscripts"/>
    </xs:choice>
  </xs:group>
  <xs:attributeGroup name="mathml.attlist-msub">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-subscriptshift"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.attlist-msup">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-superscriptshift"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.attlist-msubsup">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-subscriptshift"/>
    <xs:attributeGroup ref="mathml:mathml.att-superscriptshift"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.attlist-munder">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-accentunder"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.attlist-mover">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-accent"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.attlist-munderover">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-accent"/>
    <xs:attributeGroup ref="mathml:mathml.att-accentunder"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.attlist-mmultiscripts">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-subscriptshift"/>
    <xs:attributeGroup ref="mathml:mathml.att-superscriptshift"/>
  </xs:attributeGroup>
  <xs:group name="mathml.pscreschema">
    <xs:choice>
      <xs:element ref="mathml:mprescripts"/>
      <xs:element ref="mathml:none"/>
    </xs:choice>
  </xs:group>
  <xs:element name="mprescripts">
    <xs:complexType/>
  </xs:element>
  <xs:element name="none">
    <xs:complexType/>
  </xs:element>
  <xs:group name="mathml.ptabschema">
    <xs:choice>
      <xs:element ref="mathml:mtable"/>
      <xs:element ref="mathml:mtr"/>
      <xs:element ref="mathml:mlabeledtr"/>
      <xs:element ref="mathml:mtd"/>
    </xs:choice>
  </xs:group>
  <xs:attributeGroup name="mathml.attlist-mtable">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-tableinfo"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.attlist-mtr">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-rowalign"/>
    <xs:attributeGroup ref="mathml:mathml.att-columnalign"/>
    <xs:attributeGroup ref="mathml:mathml.att-groupalign"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.attlist-mlabeledtr">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-rowalign"/>
    <xs:attributeGroup ref="mathml:mathml.att-columnalign"/>
    <xs:attributeGroup ref="mathml:mathml.att-groupalign"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.attlist-mtd">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-rowalign"/>
    <xs:attributeGroup ref="mathml:mathml.att-columnalign"/>
    <xs:attributeGroup ref="mathml:mathml.att-groupalign"/>
    <xs:attributeGroup ref="mathml:mathml.att-rowspan"/>
    <xs:attributeGroup ref="mathml:mathml.att-columnspan"/>
  </xs:attributeGroup>
  <xs:group name="mathml.plschema">
    <xs:choice>
      <xs:group ref="mathml:mathml.pgenschema"/>
      <xs:group ref="mathml:mathml.pscrschema"/>
      <xs:group ref="mathml:mathml.ptabschema"/>
    </xs:choice>
  </xs:group>
  <xs:group name="mathml.peschema">
    <xs:choice>
      <xs:element ref="mathml:maligngroup"/>
      <xs:element ref="mathml:malignmark"/>
    </xs:choice>
  </xs:group>
  <xs:element name="malignmark">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-malignmark"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-malignmark">
    <xs:attributeGroup ref="mathml:mathml.att-edge"/>
  </xs:attributeGroup>
  <xs:element name="maligngroup">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-maligngroup"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-maligngroup">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-groupalign"/>
  </xs:attributeGroup>
  <xs:element name="mglyph">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-mglyph"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-mglyph">
    <xs:attributeGroup ref="mathml:mathml.att-alt"/>
    <xs:attributeGroup ref="mathml:mathml.att-fontfamily"/>
    <xs:attributeGroup ref="mathml:mathml.att-index"/>
  </xs:attributeGroup>
  <xs:group name="mathml.pactions">
    <xs:sequence>
      <xs:element ref="mathml:maction"/>
    </xs:sequence>
  </xs:group>
  <xs:attributeGroup name="mathml.attlist-maction">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-actiontype"/>
    <xs:attributeGroup ref="mathml:mathml.att-selection"/>
  </xs:attributeGroup>
  <xs:group name="mathml.PresInCont">
    <xs:choice>
      <xs:group ref="mathml:mathml.ptoken"/>
      <xs:group ref="mathml:mathml.petoken"/>
      <xs:group ref="mathml:mathml.plschema"/>
      <xs:group ref="mathml:mathml.peschema"/>
      <xs:group ref="mathml:mathml.pactions"/>
    </xs:choice>
  </xs:group>
  <xs:group name="mathml.Presentation">
    <xs:choice>
      <xs:group ref="mathml:mathml.ptoken"/>
      <xs:group ref="mathml:mathml.petoken"/>
      <xs:group ref="mathml:mathml.pscreschema"/>
      <xs:group ref="mathml:mathml.plschema"/>
      <xs:group ref="mathml:mathml.peschema"/>
      <xs:group ref="mathml:mathml.pactions"/>
    </xs:choice>
  </xs:group>
  <xs:attributeGroup name="mathml.att-base">
    <xs:attribute name="base" default="10"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-closure">
    <xs:attribute name="closure" default="closed"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-definition">
    <xs:attribute name="definitionURL" default=""/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-encoding">
    <xs:attribute name="encoding" default=""/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-nargs">
    <xs:attribute name="nargs" default="1"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-occurrence">
    <xs:attribute name="occurrence" default="function-model"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-order">
    <xs:attribute name="order" default="numeric"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-scope">
    <xs:attribute name="scope" default="local"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-type">
    <xs:attribute name="type"/>
  </xs:attributeGroup>
  <xs:group name="mathml.ctoken">
    <xs:choice>
      <xs:element ref="mathml:csymbol"/>
      <xs:element ref="mathml:ci"/>
      <xs:element ref="mathml:cn"/>
    </xs:choice>
  </xs:group>
  <xs:attributeGroup name="mathml.attlist-ci">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-type"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.attlist-csymbol">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
    <xs:attributeGroup ref="mathml:mathml.att-type"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.attlist-cn">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-type"/>
    <xs:attributeGroup ref="mathml:mathml.att-base"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:group name="mathml.cspecial">
    <xs:choice>
      <xs:element ref="mathml:apply"/>
      <xs:element ref="mathml:reln"/>
      <xs:element ref="mathml:lambda"/>
    </xs:choice>
  </xs:group>
  <xs:attributeGroup name="mathml.attlist-apply">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.attlist-reln">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.attlist-lambda">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
  </xs:attributeGroup>
  <xs:group name="mathml.cother">
    <xs:choice>
      <xs:element ref="mathml:condition"/>
      <xs:element ref="mathml:declare"/>
      <xs:element ref="mathml:sep"/>
    </xs:choice>
  </xs:group>
  <xs:attributeGroup name="mathml.attlist-condition">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.attlist-declare">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-type"/>
    <xs:attributeGroup ref="mathml:mathml.att-scope"/>
    <xs:attributeGroup ref="mathml:mathml.att-nargs"/>
    <xs:attributeGroup ref="mathml:mathml.att-occurrence"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="sep">
    <xs:complexType/>
  </xs:element>
  <xs:group name="mathml.csemantics">
    <xs:choice>
      <xs:element ref="mathml:semantics"/>
      <xs:element ref="mathml:annotation"/>
      <xs:element ref="mathml:annotation-xml"/>
    </xs:choice>
  </xs:group>
  <xs:attributeGroup name="mathml.attlist-semantics">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.attlist-annotation">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.attlist-annotation-xml">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:group name="mathml.cconstructor">
    <xs:choice>
      <xs:element ref="mathml:interval"/>
      <xs:element ref="mathml:list"/>
      <xs:element ref="mathml:matrix"/>
      <xs:element ref="mathml:matrixrow"/>
      <xs:element ref="mathml:set"/>
      <xs:element ref="mathml:vector"/>
      <xs:element ref="mathml:piecewise"/>
    </xs:choice>
  </xs:group>
  <xs:attributeGroup name="mathml.attlist-interval">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-closure"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.attlist-set">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-type"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.attlist-list">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-order"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.attlist-vector">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.attlist-matrix">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.attlist-matrixrow">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.attlist-piecewise">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.attlist-piece">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.attlist-otherwise">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
  </xs:attributeGroup>
  <xs:group name="mathml.c0ary">
    <xs:choice>
      <xs:element ref="mathml:integers"/>
      <xs:element ref="mathml:reals"/>
      <xs:element ref="mathml:rationals"/>
      <xs:element ref="mathml:naturalnumbers"/>
      <xs:element ref="mathml:complexes"/>
      <xs:element ref="mathml:primes"/>
      <xs:element ref="mathml:exponentiale"/>
      <xs:element ref="mathml:imaginaryi"/>
      <xs:element ref="mathml:notanumber"/>
      <xs:element ref="mathml:true"/>
      <xs:element ref="mathml:false"/>
      <xs:element ref="mathml:emptyset"/>
      <xs:element ref="mathml:pi"/>
      <xs:element ref="mathml:eulergamma"/>
      <xs:element ref="mathml:infinity"/>
    </xs:choice>
  </xs:group>
  <xs:element name="integers">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-integers"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-integers">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="reals">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-reals"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-reals">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="rationals">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-rationals"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-rationals">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="naturalnumbers">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-naturalnumbers"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-naturalnumbers">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="complexes">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-complexes"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-complexes">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="primes">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-primes"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-primes">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="exponentiale">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-exponentiale"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-exponentiale">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="imaginaryi">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-imaginaryi"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-imaginaryi">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="notanumber">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-notanumber"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-notanumber">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="true">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-true"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-true">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="false">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-false"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-false">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="emptyset">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-emptyset"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-emptyset">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="pi">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-pi"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-pi">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="eulergamma">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-eulergamma"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-eulergamma">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="infinity">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-infinity"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-infinity">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:group name="mathml.cfuncop1ary">
    <xs:choice>
      <xs:element ref="mathml:inverse"/>
      <xs:element ref="mathml:ident"/>
      <xs:element ref="mathml:domain"/>
      <xs:element ref="mathml:codomain"/>
      <xs:element ref="mathml:image"/>
    </xs:choice>
  </xs:group>
  <xs:element name="inverse">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-inverse"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-inverse">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="domain">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-domain"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-domain">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="codomain">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-codomain"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-codomain">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="image">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-image"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-image">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:group name="mathml.cfuncopnary">
    <xs:choice>
      <xs:element ref="mathml:fn"/>
      <xs:element ref="mathml:compose"/>
    </xs:choice>
  </xs:group>
  <xs:attributeGroup name="mathml.attlist-fn">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="ident">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-ident"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-ident">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="compose">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-compose"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-compose">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:group name="mathml.carithop1ary">
    <xs:choice>
      <xs:element ref="mathml:abs"/>
      <xs:element ref="mathml:conjugate"/>
      <xs:element ref="mathml:exp"/>
      <xs:element ref="mathml:factorial"/>
      <xs:element ref="mathml:arg"/>
      <xs:element ref="mathml:real"/>
      <xs:element ref="mathml:imaginary"/>
      <xs:element ref="mathml:floor"/>
      <xs:element ref="mathml:ceiling"/>
    </xs:choice>
  </xs:group>
  <xs:element name="exp">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-exp"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-exp">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="abs">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-abs"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-abs">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="arg">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-arg"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-arg">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="real">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-real"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-real">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="imaginary">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-imaginary"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-imaginary">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="conjugate">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-conjugate"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-conjugate">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="factorial">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-factorial"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-factorial">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="floor">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-floor"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-floor">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="ceiling">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-ceiling"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-ceiling">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:group name="mathml.carithop1or2ary">
    <xs:sequence>
      <xs:element ref="mathml:minus"/>
    </xs:sequence>
  </xs:group>
  <xs:element name="minus">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-minus"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-minus">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:group name="mathml.carithop2ary">
    <xs:choice>
      <xs:element ref="mathml:quotient"/>
      <xs:element ref="mathml:divide"/>
      <xs:element ref="mathml:power"/>
      <xs:element ref="mathml:rem"/>
    </xs:choice>
  </xs:group>
  <xs:element name="quotient">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-quotient"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-quotient">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="divide">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-divide"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-divide">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="power">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-power"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-power">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="rem">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-rem"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-rem">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:group name="mathml.carithopnary">
    <xs:choice>
      <xs:element ref="mathml:plus"/>
      <xs:element ref="mathml:times"/>
      <xs:element ref="mathml:max"/>
      <xs:element ref="mathml:min"/>
      <xs:element ref="mathml:gcd"/>
      <xs:element ref="mathml:lcm"/>
    </xs:choice>
  </xs:group>
  <xs:element name="plus">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-plus"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-plus">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="max">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-max"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-max">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="min">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-min"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-min">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="times">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-times"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-times">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="gcd">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-gcd"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-gcd">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="lcm">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-lcm"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-lcm">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:group name="mathml.carithoproot">
    <xs:sequence>
      <xs:element ref="mathml:root"/>
    </xs:sequence>
  </xs:group>
  <xs:element name="root">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-root"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-root">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:group name="mathml.clogicopquant">
    <xs:choice>
      <xs:element ref="mathml:exists"/>
      <xs:element ref="mathml:forall"/>
    </xs:choice>
  </xs:group>
  <xs:element name="exists">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-exists"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-exists">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="forall">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-forall"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-forall">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:group name="mathml.clogicopnary">
    <xs:choice>
      <xs:element ref="mathml:and"/>
      <xs:element ref="mathml:or"/>
      <xs:element ref="mathml:xor"/>
    </xs:choice>
  </xs:group>
  <xs:element name="and">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-and"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-and">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="or">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-or"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-or">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="xor">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-xor"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-xor">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:group name="mathml.clogicop1ary">
    <xs:sequence>
      <xs:element ref="mathml:not"/>
    </xs:sequence>
  </xs:group>
  <xs:element name="not">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-not"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-not">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:group name="mathml.clogicop2ary">
    <xs:sequence>
      <xs:element ref="mathml:implies"/>
    </xs:sequence>
  </xs:group>
  <xs:element name="implies">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-implies"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-implies">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:group name="mathml.ccalcop">
    <xs:choice>
      <xs:element ref="mathml:log"/>
      <xs:element ref="mathml:int"/>
      <xs:element ref="mathml:diff"/>
      <xs:element ref="mathml:partialdiff"/>
      <xs:element ref="mathml:divergence"/>
      <xs:element ref="mathml:grad"/>
      <xs:element ref="mathml:curl"/>
      <xs:element ref="mathml:laplacian"/>
    </xs:choice>
  </xs:group>
  <xs:element name="divergence">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-divergence"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-divergence">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="grad">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-grad"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-grad">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="curl">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-curl"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-curl">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="laplacian">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-laplacian"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-laplacian">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="log">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-log"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-log">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="int">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-int"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-int">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="diff">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-diff"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-diff">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="partialdiff">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-partialdiff"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-partialdiff">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:group name="mathml.ccalcop1ary">
    <xs:sequence>
      <xs:element ref="mathml:ln"/>
    </xs:sequence>
  </xs:group>
  <xs:element name="ln">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-ln"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-ln">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:group name="mathml.csetop1ary">
    <xs:sequence>
      <xs:element ref="mathml:card"/>
    </xs:sequence>
  </xs:group>
  <xs:element name="card">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-card"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-card">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:group name="mathml.csetop2ary">
    <xs:sequence>
      <xs:element ref="mathml:setdiff"/>
    </xs:sequence>
  </xs:group>
  <xs:element name="setdiff">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-setdiff"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-setdiff">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:group name="mathml.csetopnary">
    <xs:choice>
      <xs:element ref="mathml:union"/>
      <xs:element ref="mathml:intersect"/>
      <xs:element ref="mathml:cartesianproduct"/>
    </xs:choice>
  </xs:group>
  <xs:element name="union">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-union"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-union">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="intersect">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-intersect"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-intersect">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="cartesianproduct">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-cartesianproduct"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-cartesianproduct">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:group name="mathml.cseqop">
    <xs:choice>
      <xs:element ref="mathml:sum"/>
      <xs:element ref="mathml:product"/>
      <xs:element ref="mathml:limit"/>
    </xs:choice>
  </xs:group>
  <xs:element name="sum">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-sum"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-sum">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="product">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-product"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-product">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="limit">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-limit"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-limit">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:group name="mathml.ctrigop">
    <xs:choice>
      <xs:element ref="mathml:sin"/>
      <xs:element ref="mathml:cos"/>
      <xs:element ref="mathml:tan"/>
      <xs:element ref="mathml:sec"/>
      <xs:element ref="mathml:csc"/>
      <xs:element ref="mathml:cot"/>
      <xs:element ref="mathml:sinh"/>
      <xs:element ref="mathml:cosh"/>
      <xs:element ref="mathml:tanh"/>
      <xs:element ref="mathml:sech"/>
      <xs:element ref="mathml:csch"/>
      <xs:element ref="mathml:coth"/>
      <xs:element ref="mathml:arcsin"/>
      <xs:element ref="mathml:arccos"/>
      <xs:element ref="mathml:arctan"/>
      <xs:element ref="mathml:arccosh"/>
      <xs:element ref="mathml:arccot"/>
      <xs:element ref="mathml:arccoth"/>
      <xs:element ref="mathml:arccsc"/>
      <xs:element ref="mathml:arccsch"/>
      <xs:element ref="mathml:arcsec"/>
      <xs:element ref="mathml:arcsech"/>
      <xs:element ref="mathml:arcsinh"/>
      <xs:element ref="mathml:arctanh"/>
    </xs:choice>
  </xs:group>
  <xs:element name="sin">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-sin"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-sin">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="cos">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-cos"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-cos">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="tan">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-tan"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-tan">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="sec">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-sec"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-sec">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="csc">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-csc"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-csc">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="cot">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-cot"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-cot">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="sinh">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-sinh"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-sinh">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="cosh">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-cosh"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-cosh">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="tanh">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-tanh"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-tanh">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="sech">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-sech"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-sech">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="csch">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-csch"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-csch">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="coth">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-coth"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-coth">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="arcsin">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-arcsin"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-arcsin">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="arccos">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-arccos"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-arccos">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="arctan">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-arctan"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-arctan">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="arccosh">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-arccosh"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-arccosh">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="arccot">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-arccot"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-arccot">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="arccoth">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-arccoth"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-arccoth">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="arccsc">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-arccsc"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-arccsc">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="arccsch">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-arccsch"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-arccsch">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="arcsec">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-arcsec"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-arcsec">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="arcsech">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-arcsech"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-arcsech">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="arcsinh">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-arcsinh"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-arcsinh">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="arctanh">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-arctanh"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-arctanh">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:group name="mathml.cstatopnary">
    <xs:choice>
      <xs:element ref="mathml:mean"/>
      <xs:element ref="mathml:sdev"/>
      <xs:element ref="mathml:variance"/>
      <xs:element ref="mathml:median"/>
      <xs:element ref="mathml:mode"/>
    </xs:choice>
  </xs:group>
  <xs:element name="mean">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-mean"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-mean">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="sdev">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-sdev"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-sdev">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="variance">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-variance"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-variance">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="median">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-median"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-median">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="mode">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-mode"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-mode">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:group name="mathml.cstatopmoment">
    <xs:sequence>
      <xs:element ref="mathml:moment"/>
    </xs:sequence>
  </xs:group>
  <xs:element name="moment">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-moment"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-moment">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:group name="mathml.clalgop1ary">
    <xs:choice>
      <xs:element ref="mathml:determinant"/>
      <xs:element ref="mathml:transpose"/>
    </xs:choice>
  </xs:group>
  <xs:element name="determinant">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-determinant"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-determinant">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="transpose">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-transpose"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-transpose">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:group name="mathml.clalgop2ary">
    <xs:choice>
      <xs:element ref="mathml:vectorproduct"/>
      <xs:element ref="mathml:scalarproduct"/>
      <xs:element ref="mathml:outerproduct"/>
    </xs:choice>
  </xs:group>
  <xs:element name="vectorproduct">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-vectorproduct"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-vectorproduct">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="scalarproduct">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-scalarproduct"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-scalarproduct">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="outerproduct">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-outerproduct"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-outerproduct">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:group name="mathml.clalgopnary">
    <xs:sequence>
      <xs:element ref="mathml:selector"/>
    </xs:sequence>
  </xs:group>
  <xs:element name="selector">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-selector"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-selector">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:group name="mathml.cgenrel2ary">
    <xs:choice>
      <xs:element ref="mathml:neq"/>
      <xs:element ref="mathml:factorof"/>
    </xs:choice>
  </xs:group>
  <xs:element name="neq">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-neq"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-neq">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="factorof">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-factorof"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-factorof">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:group name="mathml.cgenrelnary">
    <xs:choice>
      <xs:element ref="mathml:eq"/>
      <xs:element ref="mathml:leq"/>
      <xs:element ref="mathml:lt"/>
      <xs:element ref="mathml:geq"/>
      <xs:element ref="mathml:gt"/>
      <xs:element ref="mathml:equivalent"/>
      <xs:element ref="mathml:approx"/>
    </xs:choice>
  </xs:group>
  <xs:element name="eq">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-eq"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-eq">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="equivalent">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-equivalent"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-equivalent">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="approx">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-approx"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-approx">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="gt">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-gt"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-gt">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="lt">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-lt"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-lt">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="geq">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-geq"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-geq">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="leq">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-leq"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-leq">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:group name="mathml.csetrel2ary">
    <xs:choice>
      <xs:element ref="mathml:in"/>
      <xs:element ref="mathml:notin"/>
      <xs:element ref="mathml:notsubset"/>
      <xs:element ref="mathml:notprsubset"/>
    </xs:choice>
  </xs:group>
  <xs:element name="in">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-in"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-in">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="notin">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-notin"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-notin">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="notsubset">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-notsubset"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-notsubset">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="notprsubset">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-notprsubset"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-notprsubset">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:group name="mathml.csetrelnary">
    <xs:choice>
      <xs:element ref="mathml:subset"/>
      <xs:element ref="mathml:prsubset"/>
    </xs:choice>
  </xs:group>
  <xs:element name="subset">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-subset"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-subset">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:element name="prsubset">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-prsubset"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-prsubset">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
  </xs:attributeGroup>
  <xs:group name="mathml.cseqrel2ary">
    <xs:sequence>
      <xs:element ref="mathml:tendsto"/>
    </xs:sequence>
  </xs:group>
  <xs:element name="tendsto">
    <xs:complexType>
      <xs:attributeGroup ref="mathml:mathml.attlist-tendsto"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-tendsto">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-definition"/>
    <xs:attributeGroup ref="mathml:mathml.att-encoding"/>
    <xs:attributeGroup ref="mathml:mathml.att-type"/>
  </xs:attributeGroup>
  <xs:group name="mathml.cquantifier">
    <xs:choice>
      <xs:element ref="mathml:lowlimit"/>
      <xs:element ref="mathml:uplimit"/>
      <xs:element ref="mathml:bvar"/>
      <xs:element ref="mathml:degree"/>
      <xs:element ref="mathml:logbase"/>
      <xs:element ref="mathml:momentabout"/>
      <xs:element ref="mathml:domainofapplication"/>
    </xs:choice>
  </xs:group>
  <xs:attributeGroup name="mathml.attlist-lowlimit">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.attlist-uplimit">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.attlist-bvar">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.attlist-degree">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.attlist-logbase">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.attlist-momentabout">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.attlist-domainofapplication">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
  </xs:attributeGroup>
  <xs:group name="mathml.cop1ary">
    <xs:choice>
      <xs:group ref="mathml:mathml.cfuncop1ary"/>
      <xs:group ref="mathml:mathml.carithop1ary"/>
      <xs:group ref="mathml:mathml.clogicop1ary"/>
      <xs:group ref="mathml:mathml.ccalcop1ary"/>
      <xs:group ref="mathml:mathml.ctrigop"/>
      <xs:group ref="mathml:mathml.clalgop1ary"/>
      <xs:group ref="mathml:mathml.csetop1ary"/>
    </xs:choice>
  </xs:group>
  <xs:group name="mathml.cop2ary">
    <xs:choice>
      <xs:group ref="mathml:mathml.carithop2ary"/>
      <xs:group ref="mathml:mathml.clogicop2ary"/>
      <xs:group ref="mathml:mathml.clalgop2ary"/>
      <xs:group ref="mathml:mathml.csetop2ary"/>
    </xs:choice>
  </xs:group>
  <xs:group name="mathml.copnary">
    <xs:choice>
      <xs:group ref="mathml:mathml.cfuncopnary"/>
      <xs:group ref="mathml:mathml.carithopnary"/>
      <xs:group ref="mathml:mathml.clogicopnary"/>
      <xs:group ref="mathml:mathml.csetopnary"/>
      <xs:group ref="mathml:mathml.cstatopnary"/>
      <xs:group ref="mathml:mathml.clalgopnary"/>
    </xs:choice>
  </xs:group>
  <xs:group name="mathml.copmisc">
    <xs:choice>
      <xs:group ref="mathml:mathml.carithoproot"/>
      <xs:group ref="mathml:mathml.carithop1or2ary"/>
      <xs:group ref="mathml:mathml.ccalcop"/>
      <xs:group ref="mathml:mathml.cseqop"/>
      <xs:group ref="mathml:mathml.cstatopmoment"/>
      <xs:group ref="mathml:mathml.clogicopquant"/>
    </xs:choice>
  </xs:group>
  <xs:group name="mathml.crel2ary">
    <xs:choice>
      <xs:group ref="mathml:mathml.cgenrel2ary"/>
      <xs:group ref="mathml:mathml.csetrel2ary"/>
      <xs:group ref="mathml:mathml.cseqrel2ary"/>
    </xs:choice>
  </xs:group>
  <xs:group name="mathml.crelnary">
    <xs:choice>
      <xs:group ref="mathml:mathml.cgenrelnary"/>
      <xs:group ref="mathml:mathml.csetrelnary"/>
    </xs:choice>
  </xs:group>
  <xs:group name="mathml.Content">
    <xs:choice>
      <xs:group ref="mathml:mathml.ctoken"/>
      <xs:group ref="mathml:mathml.cspecial"/>
      <xs:group ref="mathml:mathml.cother"/>
      <xs:group ref="mathml:mathml.csemantics"/>
      <xs:group ref="mathml:mathml.c0ary"/>
      <xs:group ref="mathml:mathml.cconstructor"/>
      <xs:group ref="mathml:mathml.cquantifier"/>
      <xs:group ref="mathml:mathml.cop1ary"/>
      <xs:group ref="mathml:mathml.cop2ary"/>
      <xs:group ref="mathml:mathml.copnary"/>
      <xs:group ref="mathml:mathml.copmisc"/>
      <xs:group ref="mathml:mathml.crel2ary"/>
      <xs:group ref="mathml:mathml.crelnary"/>
    </xs:choice>
  </xs:group>
  <xs:group name="mathml.ContInPres">
    <xs:choice>
      <xs:element ref="mathml:ci"/>
      <xs:element ref="mathml:csymbol"/>
      <xs:element ref="mathml:cn"/>
      <xs:group ref="mathml:mathml.c0ary"/>
      <xs:element ref="mathml:apply"/>
      <xs:element ref="mathml:fn"/>
      <xs:element ref="mathml:lambda"/>
      <xs:element ref="mathml:reln"/>
      <xs:group ref="mathml:mathml.cconstructor"/>
      <xs:element ref="mathml:semantics"/>
      <xs:element ref="mathml:declare"/>
    </xs:choice>
  </xs:group>
  <xs:complexType name="mathml.ContentExpression">
    <xs:choice minOccurs="0" maxOccurs="unbounded">
      <xs:group ref="mathml:mathml.Content"/>
      <xs:group ref="mathml:mathml.PresInCont"/>
    </xs:choice>
  </xs:complexType>
  <xs:complexType name="mathml.PresExpression">
    <xs:choice minOccurs="0" maxOccurs="unbounded">
      <xs:group ref="mathml:mathml.Presentation"/>
      <xs:group ref="mathml:mathml.ContInPres"/>
    </xs:choice>
  </xs:complexType>
  <xs:complexType name="mathml.MathExpression">
    <xs:choice minOccurs="0" maxOccurs="unbounded">
      <xs:group ref="mathml:mathml.PresInCont"/>
      <xs:group ref="mathml:mathml.ContInPres"/>
    </xs:choice>
  </xs:complexType>
  <xs:group name="mathml.MathMLCharacters">
    <xs:sequence>
      <xs:element minOccurs="0" ref="mathml:mglyph"/>
    </xs:sequence>
  </xs:group>
  <xs:element name="ci">
    <xs:complexType mixed="true">
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:group ref="mathml:mathml.MathMLCharacters"/>
        <xs:group ref="mathml:mathml.PresInCont"/>
      </xs:choice>
      <xs:attributeGroup ref="mathml:mathml.attlist-ci"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="csymbol">
    <xs:complexType mixed="true">
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:group ref="mathml:mathml.MathMLCharacters"/>
        <xs:group ref="mathml:mathml.PresInCont"/>
      </xs:choice>
      <xs:attributeGroup ref="mathml:mathml.attlist-csymbol"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="cn">
    <xs:complexType mixed="true">
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:group ref="mathml:mathml.MathMLCharacters"/>
        <xs:element ref="mathml:sep"/>
        <xs:group ref="mathml:mathml.PresInCont"/>
      </xs:choice>
      <xs:attributeGroup ref="mathml:mathml.attlist-cn"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="apply">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="mathml:mathml.ContentExpression">
          <xs:attributeGroup ref="mathml:mathml.attlist-apply"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
  <xs:element name="reln">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="mathml:mathml.ContentExpression">
          <xs:attributeGroup ref="mathml:mathml.attlist-reln"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
  <xs:element name="lambda">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="mathml:mathml.ContentExpression">
          <xs:attributeGroup ref="mathml:mathml.attlist-lambda"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
  <xs:element name="condition">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="mathml:mathml.ContentExpression">
          <xs:attributeGroup ref="mathml:mathml.attlist-condition"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
  <xs:element name="declare">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="mathml:mathml.ContentExpression">
          <xs:attributeGroup ref="mathml:mathml.attlist-declare"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
  <xs:element name="semantics">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="mathml:mathml.ContentExpression">
          <xs:attributeGroup ref="mathml:mathml.attlist-semantics"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
  <xs:element name="annotation">
    <xs:complexType mixed="true">
      <xs:attributeGroup ref="mathml:mathml.attlist-annotation"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="annotation-xml">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="mathml:mathml.any">
          <xs:attributeGroup ref="mathml:mathml.attlist-annotation-xml"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
  <xs:element name="interval">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="mathml:mathml.ContentExpression">
          <xs:attributeGroup ref="mathml:mathml.attlist-interval"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
  <xs:element name="set">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="mathml:mathml.ContentExpression">
          <xs:attributeGroup ref="mathml:mathml.attlist-set"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
  <xs:element name="list">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="mathml:mathml.ContentExpression">
          <xs:attributeGroup ref="mathml:mathml.attlist-list"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
  <xs:element name="vector">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="mathml:mathml.ContentExpression">
          <xs:attributeGroup ref="mathml:mathml.attlist-vector"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
  <xs:element name="matrix">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="mathml:mathml.ContentExpression">
          <xs:attributeGroup ref="mathml:mathml.attlist-matrix"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
  <xs:element name="matrixrow">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="mathml:mathml.ContentExpression">
          <xs:attributeGroup ref="mathml:mathml.attlist-matrixrow"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
  <xs:element name="piecewise">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" maxOccurs="unbounded" ref="mathml:piece"/>
        <xs:element minOccurs="0" ref="mathml:otherwise"/>
      </xs:sequence>
      <xs:attributeGroup ref="mathml:mathml.attlist-piecewise"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="piece">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="mathml:mathml.ContentExpression">
          <xs:attributeGroup ref="mathml:mathml.attlist-piece"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
  <xs:element name="otherwise">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="mathml:mathml.ContentExpression">
          <xs:attributeGroup ref="mathml:mathml.attlist-otherwise"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
  <xs:element name="fn">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="mathml:mathml.ContentExpression">
          <xs:attributeGroup ref="mathml:mathml.attlist-fn"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
  <xs:element name="lowlimit">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="mathml:mathml.ContentExpression">
          <xs:attributeGroup ref="mathml:mathml.attlist-lowlimit"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
  <xs:element name="uplimit">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="mathml:mathml.ContentExpression">
          <xs:attributeGroup ref="mathml:mathml.attlist-uplimit"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
  <xs:element name="bvar">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="mathml:mathml.ContentExpression">
          <xs:attributeGroup ref="mathml:mathml.attlist-bvar"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
  <xs:element name="degree">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="mathml:mathml.ContentExpression">
          <xs:attributeGroup ref="mathml:mathml.attlist-degree"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
  <xs:element name="logbase">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="mathml:mathml.ContentExpression">
          <xs:attributeGroup ref="mathml:mathml.attlist-logbase"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
  <xs:element name="momentabout">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="mathml:mathml.ContentExpression">
          <xs:attributeGroup ref="mathml:mathml.attlist-momentabout"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
  <xs:element name="domainofapplication">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="mathml:mathml.ContentExpression">
          <xs:attributeGroup ref="mathml:mathml.attlist-domainofapplication"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
  <xs:element name="mstyle">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="mathml:mathml.PresExpression">
          <xs:attributeGroup ref="mathml:mathml.attlist-mstyle"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
  <xs:element name="merror">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="mathml:mathml.PresExpression">
          <xs:attributeGroup ref="mathml:mathml.attlist-merror"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
  <xs:element name="mphantom">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="mathml:mathml.PresExpression">
          <xs:attributeGroup ref="mathml:mathml.attlist-mphantom"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
  <xs:element name="mrow">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="mathml:mathml.PresExpression">
          <xs:attributeGroup ref="mathml:mathml.attlist-mrow"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
  <xs:element name="mfrac">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="mathml:mathml.PresExpression">
          <xs:attributeGroup ref="mathml:mathml.attlist-mfrac"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
  <xs:element name="msqrt">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="mathml:mathml.PresExpression">
          <xs:attributeGroup ref="mathml:mathml.attlist-msqrt"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
  <xs:element name="menclose">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="mathml:mathml.PresExpression">
          <xs:attributeGroup ref="mathml:mathml.attlist-menclose"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
  <xs:element name="mroot">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="mathml:mathml.PresExpression">
          <xs:attributeGroup ref="mathml:mathml.attlist-mroot"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
  <xs:element name="msub">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="mathml:mathml.PresExpression">
          <xs:attributeGroup ref="mathml:mathml.attlist-msub"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
  <xs:element name="msup">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="mathml:mathml.PresExpression">
          <xs:attributeGroup ref="mathml:mathml.attlist-msup"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
  <xs:element name="msubsup">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="mathml:mathml.PresExpression">
          <xs:attributeGroup ref="mathml:mathml.attlist-msubsup"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
  <xs:element name="mmultiscripts">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="mathml:mathml.PresExpression">
          <xs:attributeGroup ref="mathml:mathml.attlist-mmultiscripts"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
  <xs:element name="munder">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="mathml:mathml.PresExpression">
          <xs:attributeGroup ref="mathml:mathml.attlist-munder"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
  <xs:element name="mover">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="mathml:mathml.PresExpression">
          <xs:attributeGroup ref="mathml:mathml.attlist-mover"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
  <xs:element name="munderover">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="mathml:mathml.PresExpression">
          <xs:attributeGroup ref="mathml:mathml.attlist-munderover"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
  <xs:element name="mtable">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="mathml:mathml.PresExpression">
          <xs:attributeGroup ref="mathml:mathml.attlist-mtable"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
  <xs:element name="mtr">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="mathml:mathml.PresExpression">
          <xs:attributeGroup ref="mathml:mathml.attlist-mtr"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
  <xs:element name="mlabeledtr">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="mathml:mathml.PresExpression">
          <xs:attributeGroup ref="mathml:mathml.attlist-mlabeledtr"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
  <xs:element name="mtd">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="mathml:mathml.PresExpression">
          <xs:attributeGroup ref="mathml:mathml.attlist-mtd"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
  <xs:element name="maction">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="mathml:mathml.PresExpression">
          <xs:attributeGroup ref="mathml:mathml.attlist-maction"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
  <xs:element name="mfenced">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="mathml:mathml.PresExpression">
          <xs:attributeGroup ref="mathml:mathml.attlist-mfenced"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
  <xs:element name="mpadded">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="mathml:mathml.PresExpression">
          <xs:attributeGroup ref="mathml:mathml.attlist-mpadded"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
  <xs:element name="mi">
    <xs:complexType mixed="true">
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:group ref="mathml:mathml.MathMLCharacters"/>
        <xs:element ref="mathml:malignmark"/>
      </xs:choice>
      <xs:attributeGroup ref="mathml:mathml.attlist-mi"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="mn">
    <xs:complexType mixed="true">
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:group ref="mathml:mathml.MathMLCharacters"/>
        <xs:element ref="mathml:malignmark"/>
      </xs:choice>
      <xs:attributeGroup ref="mathml:mathml.attlist-mn"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="mo">
    <xs:complexType mixed="true">
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:group ref="mathml:mathml.MathMLCharacters"/>
        <xs:element ref="mathml:malignmark"/>
      </xs:choice>
      <xs:attributeGroup ref="mathml:mathml.attlist-mo"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="mtext">
    <xs:complexType mixed="true">
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:group ref="mathml:mathml.MathMLCharacters"/>
        <xs:element ref="mathml:malignmark"/>
      </xs:choice>
      <xs:attributeGroup ref="mathml:mathml.attlist-mtext"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="ms">
    <xs:complexType mixed="true">
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:group ref="mathml:mathml.MathMLCharacters"/>
        <xs:element ref="mathml:malignmark"/>
      </xs:choice>
      <xs:attributeGroup ref="mathml:mathml.attlist-ms"/>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.att-macros">
    <xs:attribute name="macros"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-mode">
    <xs:attribute name="mode"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-display">
    <xs:attribute name="display"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-topinfo">
    <xs:attributeGroup ref="mathml:MATHML.Common.attrib"/>
    <xs:attributeGroup ref="mathml:mathml.att-macros"/>
    <xs:attributeGroup ref="mathml:mathml.att-mode"/>
    <xs:attributeGroup ref="mathml:mathml.att-display"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-baseline">
    <xs:attribute name="baseline"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-overflow">
    <xs:attribute name="overflow" default="scroll">
      <xs:simpleType>
        <xs:restriction base="xs:token">
          <xs:enumeration value="scroll"/>
          <xs:enumeration value="elide"/>
          <xs:enumeration value="truncate"/>
          <xs:enumeration value="scale"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-altimg">
    <xs:attribute name="altimg"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-alttext">
    <xs:attribute name="alttext"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="mathml.att-browif">
    <xs:attributeGroup ref="mathml:mathml.att-type"/>
    <xs:attributeGroup ref="mathml:mathml.att-name"/>
    <xs:attributeGroup ref="mathml:mathml.att-height"/>
    <xs:attributeGroup ref="mathml:mathml.att-width"/>
    <xs:attributeGroup ref="mathml:mathml.att-baseline"/>
    <xs:attributeGroup ref="mathml:mathml.att-overflow"/>
    <xs:attributeGroup ref="mathml:mathml.att-altimg"/>
    <xs:attributeGroup ref="mathml:mathml.att-alttext"/>
  </xs:attributeGroup>
  <xs:element name="math">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="mathml:mathml.MathExpression">
          <xs:attributeGroup ref="mathml:mathml.attlist-math"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
  <xs:attributeGroup name="mathml.attlist-math">
    <xs:attributeGroup ref="mathml:mathml.att-topinfo"/>
    <xs:attributeGroup ref="mathml:mathml.att-browif"/>
  </xs:attributeGroup>
  <xs:group name="macro.paraContent">
    <xs:sequence>
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:group ref="mathml:model.gLike"/>
        <xs:group ref="mathml:model.phrase"/>
        <xs:group ref="mathml:model.inter"/>
        <xs:group ref="mathml:model.global"/>
        <xs:element ref="mathml:math"/>
      </xs:choice>
    </xs:sequence>
  </xs:group>
  <xs:complexType name="macro.limitedContent" mixed="true">
    <xs:choice minOccurs="0" maxOccurs="unbounded">
      <xs:group ref="mathml:model.limitedPhrase"/>
      <xs:group ref="mathml:model.inter"/>
    </xs:choice>
  </xs:complexType>
  <xs:complexType name="macro.phraseSeq" mixed="true">
    <xs:choice minOccurs="0" maxOccurs="unbounded">
      <xs:group ref="mathml:model.gLike"/>
      <xs:group ref="mathml:model.phrase"/>
      <xs:group ref="mathml:model.global"/>
      <xs:element ref="mathml:math"/>
    </xs:choice>
  </xs:complexType>
  <xs:complexType name="macro.phraseSeq.limited" mixed="true">
    <xs:choice minOccurs="0" maxOccurs="unbounded">
      <xs:group ref="mathml:model.limitedPhrase"/>
      <xs:group ref="mathml:model.global"/>
    </xs:choice>
  </xs:complexType>
  <xs:complexType name="macro.specialPara" mixed="true">
    <xs:choice minOccurs="0" maxOccurs="unbounded">
      <xs:group ref="mathml:model.gLike"/>
      <xs:group ref="mathml:model.phrase"/>
      <xs:group ref="mathml:model.inter"/>
      <xs:group ref="mathml:model.divPart"/>
      <xs:group ref="mathml:model.global"/>
      <xs:element ref="mathml:math"/>
    </xs:choice>
  </xs:complexType>
  <xs:group name="macro.xtext">
    <xs:sequence>
      <xs:group minOccurs="0" maxOccurs="unbounded" ref="mathml:model.gLike"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="macro.anyXML">
    <xs:choice>
      <xs:group ref="ns1:local"/>
      <xs:any namespace="##local" processContents="skip"/>
    </xs:choice>
  </xs:group>
  <xs:simpleType name="yesorno">
    <xs:restriction base="xs:token">
      <xs:enumeration value="0"/>
      <xs:enumeration value="1"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:group name="anyVML">
    <xs:sequence>
      <xs:any namespace="urn:schemas-microsoft-com:vml" processContents="skip"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="anyOLE">
    <xs:sequence>
      <xs:any namespace="urn:schemas-microsoft-com:office:office" processContents="skip"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="anyOOXML">
    <xs:sequence>
      <xs:any namespace="http://schemas.openxmlformats.org/wordprocessingml/2006/main" processContents="skip"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="anyOOXMLDrawing">
    <xs:sequence>
      <xs:any namespace="http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing" processContents="skip"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="anyOOXMLDrawingMain">
    <xs:sequence>
      <xs:any namespace="http://schemas.openxmlformats.org/drawingml/2006/main" processContents="skip"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="anyOOXMLDrawingPic">
    <xs:sequence>
      <xs:any namespace="http://schemas.openxmlformats.org/drawingml/2006/picture" processContents="skip"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="tbx_entity.noteText">
    <xs:sequence>
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:group ref="mathml:macro.xtext"/>
        <xs:group ref="mathml:model.segLike"/>
        <xs:group ref="mathml:model.ptrLike"/>
        <xs:element ref="mathml:math"/>
        <xs:element ref="t:hi"/>
        <xs:element ref="ns1:hi"/>
      </xs:choice>
    </xs:sequence>
  </xs:group>
  <xs:group name="tbx_entity.auxInfo">
    <xs:sequence>
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:element ref="t:descrip"/>
        <xs:element ref="t:descripGrp"/>
        <xs:element ref="t:admin"/>
        <xs:element ref="t:note"/>
        <xs:element ref="t:ref"/>
      </xs:choice>
    </xs:sequence>
  </xs:group>
  <xs:complexType name="tbx_entity.basicText" mixed="true">
    <xs:choice minOccurs="0" maxOccurs="unbounded">
      <xs:group ref="mathml:macro.xtext"/>
      <xs:group ref="mathml:model.pPart.transcriptional"/>
      <xs:group ref="mathml:model.segLike"/>
      <xs:element ref="mathml:math"/>
      <xs:element ref="ns1:hi"/>
    </xs:choice>
  </xs:complexType>
  <xs:attributeGroup name="att.ascribed.attributes">
    <xs:attributeGroup ref="mathml:att.ascribed.attribute.who"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.ascribed.attribute.who">
    <xs:attribute name="who">
      <xs:annotation>
        <xs:documentation>indicates the person, or group of people, to whom the element content is ascribed.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:restriction>
          <xs:simpleType>
            <xs:list>
              <xs:simpleType>
                <xs:union memberTypes="xs:anyURI xs:anyURI"/>
              </xs:simpleType>
            </xs:list>
          </xs:simpleType>
          <xs:minLength value="1"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.canonical.attributes">
    <xs:attributeGroup ref="mathml:att.canonical.attribute.key"/>
    <xs:attributeGroup ref="mathml:att.canonical.attribute.ref"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.canonical.attribute.key">
    <xs:attribute name="key" type="xs:string">
      <xs:annotation>
        <xs:documentation>provides an externally-defined means of identifying the entity (or entities) being
        named, using a coded value of some kind.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.canonical.attribute.ref">
    <xs:attribute name="ref">
      <xs:annotation>
        <xs:documentation>(reference) provides an explicit means of locating a full definition for the entity being named by
        means of one or more URIs.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:restriction>
          <xs:simpleType>
            <xs:list>
              <xs:simpleType>
                <xs:union memberTypes="xs:anyURI xs:anyURI"/>
              </xs:simpleType>
            </xs:list>
          </xs:simpleType>
          <xs:minLength value="1"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.ranging.attributes">
    <xs:attributeGroup ref="mathml:att.ranging.attribute.atLeast"/>
    <xs:attributeGroup ref="mathml:att.ranging.attribute.atMost"/>
    <xs:attributeGroup ref="mathml:att.ranging.attribute.min"/>
    <xs:attributeGroup ref="mathml:att.ranging.attribute.max"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.ranging.attribute.atLeast">
    <xs:attribute name="atLeast">
      <xs:annotation>
        <xs:documentation>gives a minimum estimated value for the approximate measurement.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:union memberTypes="xs:double xs:decimal">
          <xs:simpleType>
            <xs:restriction base="xs:token">
              <xs:pattern value="(\-?[\d]+/\-?[\d]+)"/>
            </xs:restriction>
          </xs:simpleType>
        </xs:union>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.ranging.attribute.atMost">
    <xs:attribute name="atMost">
      <xs:annotation>
        <xs:documentation>gives a maximum estimated value for the approximate measurement.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:union memberTypes="xs:double xs:decimal">
          <xs:simpleType>
            <xs:restriction base="xs:token">
              <xs:pattern value="(\-?[\d]+/\-?[\d]+)"/>
            </xs:restriction>
          </xs:simpleType>
        </xs:union>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.ranging.attribute.min">
    <xs:attribute name="min">
      <xs:annotation>
        <xs:documentation>where the measurement summarizes more than one observation
      or a range, supplies the minimum value
        observed.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:union memberTypes="xs:double xs:decimal">
          <xs:simpleType>
            <xs:restriction base="xs:token">
              <xs:pattern value="(\-?[\d]+/\-?[\d]+)"/>
            </xs:restriction>
          </xs:simpleType>
        </xs:union>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.ranging.attribute.max">
    <xs:attribute name="max">
      <xs:annotation>
        <xs:documentation>where the measurement summarizes more than one observation
      or a range, supplies the maximum value
      observed.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:union memberTypes="xs:double xs:decimal">
          <xs:simpleType>
            <xs:restriction base="xs:token">
              <xs:pattern value="(\-?[\d]+/\-?[\d]+)"/>
            </xs:restriction>
          </xs:simpleType>
        </xs:union>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.dimensions.attributes">
    <xs:attributeGroup ref="mathml:att.ranging.attributes"/>
    <xs:attributeGroup ref="mathml:att.dimensions.attribute.unit"/>
    <xs:attributeGroup ref="mathml:att.dimensions.attribute.quantity"/>
    <xs:attributeGroup ref="mathml:att.dimensions.attribute.extent"/>
    <xs:attributeGroup ref="mathml:att.dimensions.attribute.precision"/>
    <xs:attributeGroup ref="mathml:att.dimensions.attribute.scope"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.dimensions.attribute.unit">
    <xs:attribute name="unit">
      <xs:annotation>
        <xs:documentation>names the unit used for the measurement
Suggested values include: 1] cm(centimetres) ; 2] mm(millimetres) ; 3] in(inches) ; 4] lines; 5] chars(characters) </xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:union memberTypes="xs:Name">
          <xs:simpleType>
            <xs:restriction base="xs:token">
              <xs:enumeration value="cm">
                <xs:annotation>
                  <xs:documentation>(centimetres) </xs:documentation>
                </xs:annotation>
              </xs:enumeration>
            </xs:restriction>
          </xs:simpleType>
          <xs:simpleType>
            <xs:restriction base="xs:token">
              <xs:enumeration value="mm">
                <xs:annotation>
                  <xs:documentation>(millimetres) </xs:documentation>
                </xs:annotation>
              </xs:enumeration>
            </xs:restriction>
          </xs:simpleType>
          <xs:simpleType>
            <xs:restriction base="xs:token">
              <xs:enumeration value="in">
                <xs:annotation>
                  <xs:documentation>(inches) </xs:documentation>
                </xs:annotation>
              </xs:enumeration>
            </xs:restriction>
          </xs:simpleType>
          <xs:simpleType>
            <xs:restriction base="xs:token">
              <xs:enumeration value="lines">
                <xs:annotation>
                  <xs:documentation>lines of text</xs:documentation>
                </xs:annotation>
              </xs:enumeration>
            </xs:restriction>
          </xs:simpleType>
          <xs:simpleType>
            <xs:restriction base="xs:token">
              <xs:enumeration value="chars">
                <xs:annotation>
                  <xs:documentation>(characters) characters of text</xs:documentation>
                </xs:annotation>
              </xs:enumeration>
            </xs:restriction>
          </xs:simpleType>
        </xs:union>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.dimensions.attribute.quantity">
    <xs:attribute name="quantity">
      <xs:annotation>
        <xs:documentation>specifies the length in the units specified</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:union memberTypes="xs:double xs:decimal">
          <xs:simpleType>
            <xs:restriction base="xs:token">
              <xs:pattern value="(\-?[\d]+/\-?[\d]+)"/>
            </xs:restriction>
          </xs:simpleType>
        </xs:union>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.dimensions.attribute.extent">
    <xs:attribute name="extent">
      <xs:annotation>
        <xs:documentation>indicates the size of the object concerned using a project-specific vocabulary combining
        quantity and units in a single string of words. </xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:restriction>
          <xs:simpleType>
            <xs:list>
              <xs:simpleType>
                <xs:union>
                  <xs:simpleType>
                    <xs:restriction base="xs:token">
                      <xs:pattern value="(\p{L}|\p{N}|\p{P}|\p{S})+"/>
                    </xs:restriction>
                  </xs:simpleType>
                  <xs:simpleType>
                    <xs:restriction base="xs:token">
                      <xs:pattern value="(\p{L}|\p{N}|\p{P}|\p{S})+"/>
                    </xs:restriction>
                  </xs:simpleType>
                </xs:union>
              </xs:simpleType>
            </xs:list>
          </xs:simpleType>
          <xs:minLength value="1"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.dimensions.attribute.precision">
    <xs:attribute name="precision">
      <xs:annotation>
        <xs:documentation>characterizes the precision of the values specified by the other attributes.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:restriction base="xs:token">
          <xs:enumeration value="high"/>
          <xs:enumeration value="medium"/>
          <xs:enumeration value="low"/>
          <xs:enumeration value="unknown"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.dimensions.attribute.scope">
    <xs:attribute name="scope" type="xs:Name">
      <xs:annotation>
        <xs:documentation>where the measurement summarizes more than one observation, specifies the applicability
        of this measurement.
Sample values include: 1] all; 2] most; 3] range</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.datable.w3c.attributes">
    <xs:attributeGroup ref="mathml:att.datable.w3c.attribute.period"/>
    <xs:attributeGroup ref="mathml:att.datable.w3c.attribute.when"/>
    <xs:attributeGroup ref="mathml:att.datable.w3c.attribute.notBefore"/>
    <xs:attributeGroup ref="mathml:att.datable.w3c.attribute.notAfter"/>
    <xs:attributeGroup ref="mathml:att.datable.w3c.attribute.from"/>
    <xs:attributeGroup ref="mathml:att.datable.w3c.attribute.to"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.datable.w3c.attribute.period">
    <xs:attribute name="period" type="xs:anyURI">
      <xs:annotation>
        <xs:documentation>supplies a pointer to some location defining a named
      period of time within which the datable item is understood to
      have occurred.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.datable.w3c.attribute.when">
    <xs:attribute name="when">
      <xs:annotation>
        <xs:documentation>supplies the value of the date or time in a standard form,
      e.g. yyyy-mm-dd.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:union memberTypes="xs:date xs:gYear xs:gMonth xs:gDay xs:gYearMonth xs:gMonthDay xs:time xs:dateTime"/>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.datable.w3c.attribute.notBefore">
    <xs:attribute name="notBefore">
      <xs:annotation>
        <xs:documentation>specifies the earliest possible date for the event in
	  standard form, e.g. yyyy-mm-dd.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:union memberTypes="xs:date xs:gYear xs:gMonth xs:gDay xs:gYearMonth xs:gMonthDay xs:time xs:dateTime"/>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.datable.w3c.attribute.notAfter">
    <xs:attribute name="notAfter">
      <xs:annotation>
        <xs:documentation>specifies the latest possible date for the event in
	  standard form, e.g. yyyy-mm-dd.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:union memberTypes="xs:date xs:gYear xs:gMonth xs:gDay xs:gYearMonth xs:gMonthDay xs:time xs:dateTime"/>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.datable.w3c.attribute.from">
    <xs:attribute name="from">
      <xs:annotation>
        <xs:documentation>indicates the starting point of the period in standard form, e.g. yyyy-mm-dd.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:union memberTypes="xs:date xs:gYear xs:gMonth xs:gDay xs:gYearMonth xs:gMonthDay xs:time xs:dateTime"/>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.datable.w3c.attribute.to">
    <xs:attribute name="to">
      <xs:annotation>
        <xs:documentation>indicates the ending point of the period in standard
	  form, e.g. yyyy-mm-dd.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:union memberTypes="xs:date xs:gYear xs:gMonth xs:gDay xs:gYearMonth xs:gMonthDay xs:time xs:dateTime"/>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.datable.attributes">
    <xs:attributeGroup ref="mathml:att.datable.w3c.attributes"/>
    <xs:attributeGroup ref="mathml:att.datable.iso.attributes"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.declarable.attributes">
    <xs:attributeGroup ref="mathml:att.declarable.attribute.default"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.declarable.attribute.default">
    <xs:attribute name="default" default="false">
      <xs:annotation>
        <xs:documentation>indicates whether or not this element is selected by default when
its parent is selected.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:restriction base="xs:token">
          <xs:enumeration value="true">
            <xs:annotation>
              <xs:documentation>This element is selected if its parent is selected</xs:documentation>
            </xs:annotation>
          </xs:enumeration>
          <xs:enumeration value="false">
            <xs:annotation>
              <xs: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.</xs:documentation>
            </xs:annotation>
          </xs:enumeration>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.declaring.attributes">
    <xs:attributeGroup ref="mathml:att.declaring.attribute.decls"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.declaring.attribute.decls">
    <xs:attribute name="decls">
      <xs:annotation>
        <xs:documentation>identifies one or more declarable elements within the
header, which are understood to apply to the element bearing this
attribute and its content.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:restriction>
          <xs:simpleType>
            <xs:list>
              <xs:simpleType>
                <xs:union memberTypes="xs:anyURI xs:anyURI"/>
              </xs:simpleType>
            </xs:list>
          </xs:simpleType>
          <xs:minLength value="1"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.divLike.attributes">
    <xs:attributeGroup ref="mathml:att.divLike.attribute.org"/>
    <xs:attributeGroup ref="mathml:att.divLike.attribute.sample"/>
    <xs:attributeGroup ref="mathml:att.divLike.attribute.part"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.divLike.attribute.org">
    <xs:attribute name="org" default="uniform">
      <xs:annotation>
        <xs:documentation>(organization) specifies how the content of the division is organized.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:restriction base="xs:token">
          <xs:enumeration value="composite">
            <xs:annotation>
              <xs: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.</xs:documentation>
            </xs:annotation>
          </xs:enumeration>
          <xs:enumeration value="uniform">
            <xs:annotation>
              <xs:documentation>uniform content: i.e. the immediate contents of this
		  element are regarded as forming a logical unit, to be
		  processed in sequence.</xs:documentation>
            </xs:annotation>
          </xs:enumeration>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.divLike.attribute.sample">
    <xs:attribute name="sample" default="complete">
      <xs:annotation>
        <xs:documentation>indicates whether this division is a sample of the
		original source and if so, from which part.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:restriction base="xs:token">
          <xs:enumeration value="initial">
            <xs:annotation>
              <xs:documentation>division lacks material present at end in source.</xs:documentation>
            </xs:annotation>
          </xs:enumeration>
          <xs:enumeration value="medial">
            <xs:annotation>
              <xs:documentation>division lacks material at start and end.</xs:documentation>
            </xs:annotation>
          </xs:enumeration>
          <xs:enumeration value="final">
            <xs:annotation>
              <xs:documentation>division lacks material at start.</xs:documentation>
            </xs:annotation>
          </xs:enumeration>
          <xs:enumeration value="unknown">
            <xs:annotation>
              <xs:documentation>position of sampled material within original unknown.</xs:documentation>
            </xs:annotation>
          </xs:enumeration>
          <xs:enumeration value="complete">
            <xs:annotation>
              <xs:documentation>division is not a sample.</xs:documentation>
            </xs:annotation>
          </xs:enumeration>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.divLike.attribute.part">
    <xs:attribute name="part" default="N">
      <xs:annotation>
        <xs: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.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:restriction base="xs:token">
          <xs:enumeration value="Y">
            <xs:annotation>
              <xs:documentation>(yes) the division is incomplete in some respect</xs:documentation>
            </xs:annotation>
          </xs:enumeration>
          <xs:enumeration value="N">
            <xs:annotation>
              <xs:documentation>(no) either the division is complete, or no claim is made as to its completeness.</xs:documentation>
            </xs:annotation>
          </xs:enumeration>
          <xs:enumeration value="I">
            <xs:annotation>
              <xs:documentation>(initial) the initial part of an incomplete division</xs:documentation>
            </xs:annotation>
          </xs:enumeration>
          <xs:enumeration value="M">
            <xs:annotation>
              <xs:documentation>(medial) a medial part of an incomplete division</xs:documentation>
            </xs:annotation>
          </xs:enumeration>
          <xs:enumeration value="F">
            <xs:annotation>
              <xs:documentation>(final) the final part of an incomplete division</xs:documentation>
            </xs:annotation>
          </xs:enumeration>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.docStatus.attributes">
    <xs:attributeGroup ref="mathml:att.docStatus.attribute.status"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.docStatus.attribute.status">
    <xs:attribute name="status" default="draft" type="xs:Name">
      <xs:annotation>
        <xs: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 </xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.responsibility.attributes">
    <xs:attributeGroup ref="mathml:att.responsibility.attribute.cert"/>
    <xs:attributeGroup ref="mathml:att.responsibility.attribute.resp"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.responsibility.attribute.cert">
    <xs:attribute name="cert">
      <xs:annotation>
        <xs:documentation>(certainty) signifies the degree of certainty associated with the intervention or interpretation.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:restriction base="xs:token">
          <xs:enumeration value="high"/>
          <xs:enumeration value="medium"/>
          <xs:enumeration value="low"/>
          <xs:enumeration value="unknown"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.responsibility.attribute.resp">
    <xs:attribute name="resp">
      <xs:annotation>
        <xs:documentation>(responsible party) indicates the agency responsible for the intervention or interpretation, for example an
        editor or transcriber.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:restriction>
          <xs:simpleType>
            <xs:list>
              <xs:simpleType>
                <xs:union memberTypes="xs:anyURI xs:anyURI"/>
              </xs:simpleType>
            </xs:list>
          </xs:simpleType>
          <xs:minLength value="1"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.editLike.attributes">
    <xs:attributeGroup ref="mathml:att.dimensions.attributes"/>
    <xs:attributeGroup ref="mathml:att.responsibility.attributes"/>
    <xs:attributeGroup ref="mathml:att.editLike.attribute.evidence"/>
    <xs:attributeGroup ref="mathml:att.editLike.attribute.source"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.editLike.attribute.evidence">
    <xs:attribute name="evidence">
      <xs:annotation>
        <xs:documentation>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</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:union memberTypes="xs:Name">
          <xs:simpleType>
            <xs:restriction base="xs:token">
              <xs:enumeration value="internal">
                <xs:annotation>
                  <xs:documentation>there is internal evidence to support the intervention.</xs:documentation>
                </xs:annotation>
              </xs:enumeration>
            </xs:restriction>
          </xs:simpleType>
          <xs:simpleType>
            <xs:restriction base="xs:token">
              <xs:enumeration value="external">
                <xs:annotation>
                  <xs:documentation>there is external evidence to support the intervention.</xs:documentation>
                </xs:annotation>
              </xs:enumeration>
            </xs:restriction>
          </xs:simpleType>
          <xs:simpleType>
            <xs:restriction base="xs:token">
              <xs:enumeration value="conjecture">
                <xs:annotation>
                  <xs:documentation>the intervention or interpretation has been made by the editor, cataloguer, or
            scholar on the basis of their expertise.</xs:documentation>
                </xs:annotation>
              </xs:enumeration>
            </xs:restriction>
          </xs:simpleType>
        </xs:union>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.editLike.attribute.source">
    <xs:attribute name="source">
      <xs:annotation>
        <xs:documentation>contains a list of one or more pointers indicating the sources which support the given
        reading.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:restriction>
          <xs:simpleType>
            <xs:list>
              <xs:simpleType>
                <xs:union memberTypes="xs:anyURI xs:anyURI"/>
              </xs:simpleType>
            </xs:list>
          </xs:simpleType>
          <xs:minLength value="1"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.global.attributes">
    <xs:attributeGroup ref="mathml:att.global.analytic.attributes"/>
    <xs:attributeGroup ref="mathml:att.global.facs.attributes"/>
    <xs:attributeGroup ref="mathml:att.global.attribute.style"/>
    <xs:attributeGroup ref="mathml:att.global.attribute.meta"/>
    <xs:attributeGroup ref="mathml:att.global.attribute.status"/>
    <xs:attributeGroup ref="mathml:att.global.attribute.provision"/>
    <xs:attributeGroup ref="mathml:att.global.attribute.spaceBefore"/>
    <xs:attributeGroup ref="mathml:att.global.attribute.spaceAfter"/>
    <xs:attributeGroup ref="mathml:att.global.attribute.align"/>
    <xs:attributeGroup ref="mathml:att.global.attribute.replaceable"/>
    <xs:attributeGroup ref="mathml:att.global.attribute.xmlid"/>
    <xs:attributeGroup ref="mathml:att.global.attribute.n"/>
    <xs:attributeGroup ref="mathml:att.global.attribute.xmllang"/>
    <xs:attributeGroup ref="mathml:att.global.attribute.rend"/>
    <xs:attributeGroup ref="mathml:att.global.attribute.xmlbase"/>
    <xs:attributeGroup ref="mathml:att.global.attribute.xmlspace"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.global.attribute.style">
    <xs:attribute ref="ns2:style"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.global.attribute.meta">
    <xs:attribute ref="ns2:meta"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.global.attribute.status">
    <xs:attribute ref="ns2:status"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.global.attribute.provision">
    <xs:attribute ref="ns2:provision"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.global.attribute.spaceBefore">
    <xs:attribute ref="ns2:spaceBefore"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.global.attribute.spaceAfter">
    <xs:attribute ref="ns2:spaceAfter"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.global.attribute.align">
    <xs:attribute ref="ns2:align"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.global.attribute.replaceable">
    <xs:attribute ref="ns2:replaceable"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.global.attribute.xmlid">
    <xs:attributeGroup ref="xml:id"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.global.attribute.n">
    <xs:attribute name="n">
      <xs:annotation>
        <xs:documentation>(number) gives a number (or other label) for an element, which is not necessarily unique within
        the document.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:restriction>
          <xs:simpleType>
            <xs:list>
              <xs:simpleType>
                <xs:union>
                  <xs:simpleType>
                    <xs:restriction base="xs:token">
                      <xs:pattern value="(\p{L}|\p{N}|\p{P}|\p{S})+"/>
                    </xs:restriction>
                  </xs:simpleType>
                  <xs:simpleType>
                    <xs:restriction base="xs:token">
                      <xs:pattern value="(\p{L}|\p{N}|\p{P}|\p{S})+"/>
                    </xs:restriction>
                  </xs:simpleType>
                </xs:union>
              </xs:simpleType>
            </xs:list>
          </xs:simpleType>
          <xs:minLength value="1"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.global.attribute.xmllang">
    <xs:attributeGroup ref="xml:lang"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.global.attribute.rend">
    <xs:attribute name="rend">
      <xs:annotation>
        <xs:documentation>(rendition) indicates how the element in question was rendered or presented in the source text.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:restriction>
          <xs:simpleType>
            <xs:list>
              <xs:simpleType>
                <xs:union>
                  <xs:simpleType>
                    <xs:restriction base="xs:token">
                      <xs:pattern value="(\p{L}|\p{N}|\p{P}|\p{S})+"/>
                    </xs:restriction>
                  </xs:simpleType>
                  <xs:simpleType>
                    <xs:restriction base="xs:token">
                      <xs:pattern value="(\p{L}|\p{N}|\p{P}|\p{S})+"/>
                    </xs:restriction>
                  </xs:simpleType>
                </xs:union>
              </xs:simpleType>
            </xs:list>
          </xs:simpleType>
          <xs:minLength value="1"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.global.attribute.xmlbase">
    <xs:attribute ref="xml:base"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.global.attribute.xmlspace">
    <xs:attribute ref="xml:space"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.internetMedia.attributes">
    <xs:attributeGroup ref="mathml:att.internetMedia.attribute.mimeType"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.internetMedia.attribute.mimeType">
    <xs:attribute name="mimeType">
      <xs:annotation>
        <xs:documentation>(MIME media type) specifies the applicable multimedia internet mail extension (MIME) media type</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:restriction base="xs:token">
          <xs:pattern value="(\p{L}|\p{N}|\p{P}|\p{S})+"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.naming.attributes">
    <xs:attributeGroup ref="mathml:att.canonical.attributes"/>
    <xs:attributeGroup ref="mathml:att.naming.attribute.role"/>
    <xs:attributeGroup ref="mathml:att.naming.attribute.nymRef"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.naming.attribute.role">
    <xs:attribute name="role" type="xs:Name">
      <xs:annotation>
        <xs:documentation>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. </xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.naming.attribute.nymRef">
    <xs:attribute name="nymRef">
      <xs:annotation>
        <xs:documentation>(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.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:restriction>
          <xs:simpleType>
            <xs:list>
              <xs:simpleType>
                <xs:union memberTypes="xs:anyURI xs:anyURI"/>
              </xs:simpleType>
            </xs:list>
          </xs:simpleType>
          <xs:minLength value="1"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.placement.attributes">
    <xs:attributeGroup ref="mathml:att.placement.attribute.place"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.placement.attribute.place">
    <xs:attribute name="place">
      <xs:annotation>
        <xs:documentation>
Suggested values include: 1] below; 2] bottom; 3] margin; 4] top; 5] opposite; 6] overleaf; 7] above; 8] end; 9] inline; 10] inspace</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:restriction>
          <xs:simpleType>
            <xs:list>
              <xs:simpleType>
                <xs:union>
                  <xs:simpleType>
                    <xs:union memberTypes="xs:Name">
                      <xs:simpleType>
                        <xs:restriction base="xs:token">
                          <xs:enumeration value="below">
                            <xs:annotation>
                              <xs:documentation>below the line</xs:documentation>
                            </xs:annotation>
                          </xs:enumeration>
                        </xs:restriction>
                      </xs:simpleType>
                      <xs:simpleType>
                        <xs:restriction base="xs:token">
                          <xs:enumeration value="bottom">
                            <xs:annotation>
                              <xs:documentation>at the foot of the page</xs:documentation>
                            </xs:annotation>
                          </xs:enumeration>
                        </xs:restriction>
                      </xs:simpleType>
                      <xs:simpleType>
                        <xs:restriction base="xs:token">
                          <xs:enumeration value="margin">
                            <xs:annotation>
                              <xs:documentation>in the margin (left, right, or both)</xs:documentation>
                            </xs:annotation>
                          </xs:enumeration>
                        </xs:restriction>
                      </xs:simpleType>
                      <xs:simpleType>
                        <xs:restriction base="xs:token">
                          <xs:enumeration value="top">
                            <xs:annotation>
                              <xs:documentation>at the top of the page</xs:documentation>
                            </xs:annotation>
                          </xs:enumeration>
                        </xs:restriction>
                      </xs:simpleType>
                      <xs:simpleType>
                        <xs:restriction base="xs:token">
                          <xs:enumeration value="opposite">
                            <xs:annotation>
                              <xs:documentation>on the opposite, i.e. facing, page</xs:documentation>
                            </xs:annotation>
                          </xs:enumeration>
                        </xs:restriction>
                      </xs:simpleType>
                      <xs:simpleType>
                        <xs:restriction base="xs:token">
                          <xs:enumeration value="overleaf">
                            <xs:annotation>
                              <xs:documentation>on the other side of the leaf</xs:documentation>
                            </xs:annotation>
                          </xs:enumeration>
                        </xs:restriction>
                      </xs:simpleType>
                      <xs:simpleType>
                        <xs:restriction base="xs:token">
                          <xs:enumeration value="above">
                            <xs:annotation>
                              <xs:documentation>above the line</xs:documentation>
                            </xs:annotation>
                          </xs:enumeration>
                        </xs:restriction>
                      </xs:simpleType>
                      <xs:simpleType>
                        <xs:restriction base="xs:token">
                          <xs:enumeration value="end">
                            <xs:annotation>
                              <xs:documentation>at the end of e.g. chapter or volume.</xs:documentation>
                            </xs:annotation>
                          </xs:enumeration>
                        </xs:restriction>
                      </xs:simpleType>
                      <xs:simpleType>
                        <xs:restriction base="xs:token">
                          <xs:enumeration value="inline">
                            <xs:annotation>
                              <xs:documentation>within the body of the text.</xs:documentation>
                            </xs:annotation>
                          </xs:enumeration>
                        </xs:restriction>
                      </xs:simpleType>
                      <xs:simpleType>
                        <xs:restriction base="xs:token">
                          <xs:enumeration value="inspace">
                            <xs:annotation>
                              <xs:documentation> in a predefined space, for example left by an earlier scribe.</xs:documentation>
                            </xs:annotation>
                          </xs:enumeration>
                        </xs:restriction>
                      </xs:simpleType>
                    </xs:union>
                  </xs:simpleType>
                  <xs:simpleType>
                    <xs:union memberTypes="xs:Name">
                      <xs:simpleType>
                        <xs:restriction base="xs:token">
                          <xs:enumeration value="below">
                            <xs:annotation>
                              <xs:documentation>below the line</xs:documentation>
                            </xs:annotation>
                          </xs:enumeration>
                        </xs:restriction>
                      </xs:simpleType>
                      <xs:simpleType>
                        <xs:restriction base="xs:token">
                          <xs:enumeration value="bottom">
                            <xs:annotation>
                              <xs:documentation>at the foot of the page</xs:documentation>
                            </xs:annotation>
                          </xs:enumeration>
                        </xs:restriction>
                      </xs:simpleType>
                      <xs:simpleType>
                        <xs:restriction base="xs:token">
                          <xs:enumeration value="margin">
                            <xs:annotation>
                              <xs:documentation>in the margin (left, right, or both)</xs:documentation>
                            </xs:annotation>
                          </xs:enumeration>
                        </xs:restriction>
                      </xs:simpleType>
                      <xs:simpleType>
                        <xs:restriction base="xs:token">
                          <xs:enumeration value="top">
                            <xs:annotation>
                              <xs:documentation>at the top of the page</xs:documentation>
                            </xs:annotation>
                          </xs:enumeration>
                        </xs:restriction>
                      </xs:simpleType>
                      <xs:simpleType>
                        <xs:restriction base="xs:token">
                          <xs:enumeration value="opposite">
                            <xs:annotation>
                              <xs:documentation>on the opposite, i.e. facing, page</xs:documentation>
                            </xs:annotation>
                          </xs:enumeration>
                        </xs:restriction>
                      </xs:simpleType>
                      <xs:simpleType>
                        <xs:restriction base="xs:token">
                          <xs:enumeration value="overleaf">
                            <xs:annotation>
                              <xs:documentation>on the other side of the leaf</xs:documentation>
                            </xs:annotation>
                          </xs:enumeration>
                        </xs:restriction>
                      </xs:simpleType>
                      <xs:simpleType>
                        <xs:restriction base="xs:token">
                          <xs:enumeration value="above">
                            <xs:annotation>
                              <xs:documentation>above the line</xs:documentation>
                            </xs:annotation>
                          </xs:enumeration>
                        </xs:restriction>
                      </xs:simpleType>
                      <xs:simpleType>
                        <xs:restriction base="xs:token">
                          <xs:enumeration value="end">
                            <xs:annotation>
                              <xs:documentation>at the end of e.g. chapter or volume.</xs:documentation>
                            </xs:annotation>
                          </xs:enumeration>
                        </xs:restriction>
                      </xs:simpleType>
                      <xs:simpleType>
                        <xs:restriction base="xs:token">
                          <xs:enumeration value="inline">
                            <xs:annotation>
                              <xs:documentation>within the body of the text.</xs:documentation>
                            </xs:annotation>
                          </xs:enumeration>
                        </xs:restriction>
                      </xs:simpleType>
                      <xs:simpleType>
                        <xs:restriction base="xs:token">
                          <xs:enumeration value="inspace">
                            <xs:annotation>
                              <xs:documentation> in a predefined space, for example left by an earlier scribe.</xs:documentation>
                            </xs:annotation>
                          </xs:enumeration>
                        </xs:restriction>
                      </xs:simpleType>
                    </xs:union>
                  </xs:simpleType>
                </xs:union>
              </xs:simpleType>
            </xs:list>
          </xs:simpleType>
          <xs:minLength value="1"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.typed.attributes">
    <xs:attributeGroup ref="mathml:att.typed.attribute.type"/>
    <xs:attributeGroup ref="mathml:att.typed.attribute.subtype"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.typed.attribute.type">
    <xs:attribute name="type" type="xs:Name">
      <xs:annotation>
        <xs:documentation>characterizes the element in some sense, using any convenient
 classification scheme or typology.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.typed.attribute.subtype">
    <xs:attribute name="subtype" type="xs:Name">
      <xs:annotation>
        <xs:documentation>provides a sub-categorization of the element, if needed</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.pointing.attributes">
    <xs:attributeGroup ref="mathml:att.pointing.attribute.target"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.pointing.attribute.target">
    <xs:attribute name="target">
      <xs:annotation>
        <xs:documentation>specifies the destination of the reference by supplying one or more URI References</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:restriction>
          <xs:simpleType>
            <xs:list>
              <xs:simpleType>
                <xs:union memberTypes="xs:anyURI xs:anyURI"/>
              </xs:simpleType>
            </xs:list>
          </xs:simpleType>
          <xs:minLength value="1"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.segLike.attributes">
    <xs:attributeGroup ref="mathml:att.segLike.attribute.function"/>
    <xs:attributeGroup ref="mathml:att.segLike.attribute.part"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.segLike.attribute.function">
    <xs:attribute name="function" type="xs:Name">
      <xs:annotation>
        <xs:documentation>characterizes the function of the segment.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.segLike.attribute.part">
    <xs:attribute name="part" default="N">
      <xs:annotation>
        <xs: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.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:restriction base="xs:token">
          <xs:enumeration value="Y">
            <xs:annotation>
              <xs:documentation>(yes) the segment is incomplete in some respect</xs:documentation>
            </xs:annotation>
          </xs:enumeration>
          <xs:enumeration value="N">
            <xs:annotation>
              <xs:documentation>(no) either the segment is complete, or no claim is made as to
its completeness</xs:documentation>
            </xs:annotation>
          </xs:enumeration>
          <xs:enumeration value="I">
            <xs:annotation>
              <xs:documentation>(initial) the initial part of an incomplete segment</xs:documentation>
            </xs:annotation>
          </xs:enumeration>
          <xs:enumeration value="M">
            <xs:annotation>
              <xs:documentation>(medial) a medial part of an incomplete segment</xs:documentation>
            </xs:annotation>
          </xs:enumeration>
          <xs:enumeration value="F">
            <xs:annotation>
              <xs:documentation>(final) the final part of an incomplete segment</xs:documentation>
            </xs:annotation>
          </xs:enumeration>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.sourced.attributes">
    <xs:attributeGroup ref="mathml:att.sourced.attribute.ed"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.sourced.attribute.ed">
    <xs:attribute name="ed">
      <xs:annotation>
        <xs:documentation>(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.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:restriction>
          <xs:simpleType>
            <xs:list>
              <xs:simpleType>
                <xs:union memberTypes="xs:anyURI xs:anyURI"/>
              </xs:simpleType>
            </xs:list>
          </xs:simpleType>
          <xs:minLength value="1"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.spanning.attributes">
    <xs:attributeGroup ref="mathml:att.spanning.attribute.spanTo"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.spanning.attribute.spanTo">
    <xs:attribute name="spanTo" type="xs:anyURI">
      <xs:annotation>
        <xs:documentation>indicates the end of a span initiated by the element
	bearing this attribute.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.transcriptional.attributes">
    <xs:attributeGroup ref="mathml:att.editLike.attributes"/>
    <xs:attributeGroup ref="mathml:att.transcriptional.attribute.hand"/>
    <xs:attributeGroup ref="mathml:att.transcriptional.attribute.status"/>
    <xs:attributeGroup ref="mathml:att.transcriptional.attribute.seq"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.transcriptional.attribute.hand">
    <xs:attribute name="hand" type="xs:anyURI">
      <xs:annotation>
        <xs:documentation>signifies the hand of the agent which made the intervention.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.transcriptional.attribute.status">
    <xs:attribute name="status" default="unremarkable" type="xs:Name">
      <xs:annotation>
        <xs: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</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.transcriptional.attribute.seq">
    <xs:attribute name="seq" type="xs:nonNegativeInteger">
      <xs:annotation>
        <xs:documentation>(sequence) assigns a sequence number related to the order in which
      the encoded features carrying this attribute are believed to have occurred.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.translatable.attributes">
    <xs:attributeGroup ref="mathml:att.translatable.attribute.version"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.translatable.attribute.version">
    <xs:attribute name="version">
      <xs:annotation>
        <xs:documentation>specifies the version name or number of the source from
	which the translated version was derived</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:restriction base="xs:token">
          <xs:pattern value="(\p{L}|\p{N}|\p{P}|\p{S})+"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:group name="model.nameLike.agent">
    <xs:choice>
      <xs:element ref="ns1:name"/>
      <xs:element ref="ns1:orgName"/>
      <xs:element ref="ns1:persName"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.nameLike.agent_alternation">
    <xs:choice>
      <xs:element ref="ns1:name"/>
      <xs:element ref="ns1:orgName"/>
      <xs:element ref="ns1:persName"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.nameLike.agent_sequence">
    <xs:sequence>
      <xs:element ref="ns1:name"/>
      <xs:element ref="ns1:orgName"/>
      <xs:element ref="ns1:persName"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.nameLike.agent_sequenceOptional">
    <xs:sequence>
      <xs:element minOccurs="0" ref="ns1:name"/>
      <xs:element minOccurs="0" ref="ns1:orgName"/>
      <xs:element minOccurs="0" ref="ns1:persName"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.nameLike.agent_sequenceOptionalRepeatable">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:name"/>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:orgName"/>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:persName"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.nameLike.agent_sequenceRepeatable">
    <xs:sequence>
      <xs:element maxOccurs="unbounded" ref="ns1:name"/>
      <xs:element maxOccurs="unbounded" ref="ns1:orgName"/>
      <xs:element maxOccurs="unbounded" ref="ns1:persName"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.segLike">
    <xs:choice>
      <xs:element ref="ns1:c"/>
      <xs:element ref="ns1:seg"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.segLike_alternation">
    <xs:choice>
      <xs:element ref="ns1:c"/>
      <xs:element ref="ns1:seg"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.segLike_sequence">
    <xs:sequence>
      <xs:element ref="ns1:c"/>
      <xs:element ref="ns1:seg"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.segLike_sequenceOptional">
    <xs:sequence>
      <xs:element minOccurs="0" ref="ns1:c"/>
      <xs:element minOccurs="0" ref="ns1:seg"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.segLike_sequenceOptionalRepeatable">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:c"/>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:seg"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.segLike_sequenceRepeatable">
    <xs:sequence>
      <xs:element maxOccurs="unbounded" ref="ns1:c"/>
      <xs:element maxOccurs="unbounded" ref="ns1:seg"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.hiLike">
    <xs:sequence>
      <xs:element ref="ns1:hi"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.hiLike_alternation">
    <xs:sequence>
      <xs:element ref="ns1:hi"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.hiLike_sequence">
    <xs:sequence>
      <xs:element ref="ns1:hi"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.hiLike_sequenceOptional">
    <xs:sequence>
      <xs:element minOccurs="0" ref="ns1:hi"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.hiLike_sequenceOptionalRepeatable">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:hi"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.hiLike_sequenceRepeatable">
    <xs:sequence>
      <xs:element maxOccurs="unbounded" ref="ns1:hi"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.emphLike">
    <xs:choice>
      <xs:element ref="ns1:foreign"/>
      <xs:element ref="ns1:emph"/>
      <xs:element ref="ns1:mentioned"/>
      <xs:element ref="ns1:gloss"/>
      <xs:element ref="ns1:term"/>
      <xs:element ref="ns1:title"/>
      <xs:element ref="ns1:code"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.emphLike_alternation">
    <xs:choice>
      <xs:element ref="ns1:foreign"/>
      <xs:element ref="ns1:emph"/>
      <xs:element ref="ns1:mentioned"/>
      <xs:element ref="ns1:gloss"/>
      <xs:element ref="ns1:term"/>
      <xs:element ref="ns1:title"/>
      <xs:element ref="ns1:code"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.emphLike_sequence">
    <xs:sequence>
      <xs:element ref="ns1:foreign"/>
      <xs:element ref="ns1:emph"/>
      <xs:element ref="ns1:mentioned"/>
      <xs:element ref="ns1:gloss"/>
      <xs:element ref="ns1:term"/>
      <xs:element ref="ns1:title"/>
      <xs:element ref="ns1:code"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.emphLike_sequenceOptional">
    <xs:sequence>
      <xs:element minOccurs="0" ref="ns1:foreign"/>
      <xs:element minOccurs="0" ref="ns1:emph"/>
      <xs:element minOccurs="0" ref="ns1:mentioned"/>
      <xs:element minOccurs="0" ref="ns1:gloss"/>
      <xs:element minOccurs="0" ref="ns1:term"/>
      <xs:element minOccurs="0" ref="ns1:title"/>
      <xs:element minOccurs="0" ref="ns1:code"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.emphLike_sequenceOptionalRepeatable">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:foreign"/>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:emph"/>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:mentioned"/>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:gloss"/>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:term"/>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:title"/>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:code"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.emphLike_sequenceRepeatable">
    <xs:sequence>
      <xs:element maxOccurs="unbounded" ref="ns1:foreign"/>
      <xs:element maxOccurs="unbounded" ref="ns1:emph"/>
      <xs:element maxOccurs="unbounded" ref="ns1:mentioned"/>
      <xs:element maxOccurs="unbounded" ref="ns1:gloss"/>
      <xs:element maxOccurs="unbounded" ref="ns1:term"/>
      <xs:element maxOccurs="unbounded" ref="ns1:title"/>
      <xs:element maxOccurs="unbounded" ref="ns1:code"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.highlighted">
    <xs:choice>
      <xs:group ref="mathml:model.hiLike"/>
      <xs:group ref="mathml:model.emphLike"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.highlighted_alternation">
    <xs:choice>
      <xs:group ref="mathml:model.hiLike_alternation"/>
      <xs:group ref="mathml:model.emphLike_alternation"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.highlighted_sequence">
    <xs:sequence>
      <xs:group ref="mathml:model.hiLike_sequence"/>
      <xs:group ref="mathml:model.emphLike_sequence"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.highlighted_sequenceOptional">
    <xs:sequence>
      <xs:group minOccurs="0" ref="mathml:model.hiLike_sequenceOptional"/>
      <xs:group minOccurs="0" ref="mathml:model.emphLike_sequenceOptional"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.highlighted_sequenceOptionalRepeatable">
    <xs:sequence>
      <xs:group minOccurs="0" maxOccurs="unbounded" ref="mathml:model.hiLike_sequenceOptionalRepeatable"/>
      <xs:group minOccurs="0" maxOccurs="unbounded" ref="mathml:model.emphLike_sequenceOptionalRepeatable"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.highlighted_sequenceRepeatable">
    <xs:sequence>
      <xs:group maxOccurs="unbounded" ref="mathml:model.hiLike_sequenceRepeatable"/>
      <xs:group maxOccurs="unbounded" ref="mathml:model.emphLike_sequenceRepeatable"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.dateLike">
    <xs:choice>
      <xs:element ref="ns1:date"/>
      <xs:element ref="ns1:time"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.dateLike_alternation">
    <xs:choice>
      <xs:element ref="ns1:date"/>
      <xs:element ref="ns1:time"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.dateLike_sequence">
    <xs:sequence>
      <xs:element ref="ns1:date"/>
      <xs:element ref="ns1:time"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.dateLike_sequenceOptional">
    <xs:sequence>
      <xs:element minOccurs="0" ref="ns1:date"/>
      <xs:element minOccurs="0" ref="ns1:time"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.dateLike_sequenceOptionalRepeatable">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:date"/>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:time"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.dateLike_sequenceRepeatable">
    <xs:sequence>
      <xs:element maxOccurs="unbounded" ref="ns1:date"/>
      <xs:element maxOccurs="unbounded" ref="ns1:time"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.measureLike">
    <xs:sequence>
      <xs:element ref="ns1:num"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.measureLike_alternation">
    <xs:sequence>
      <xs:element ref="ns1:num"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.measureLike_sequence">
    <xs:sequence>
      <xs:element ref="ns1:num"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.measureLike_sequenceOptional">
    <xs:sequence>
      <xs:element minOccurs="0" ref="ns1:num"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.measureLike_sequenceOptionalRepeatable">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:num"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.measureLike_sequenceRepeatable">
    <xs:sequence>
      <xs:element maxOccurs="unbounded" ref="ns1:num"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.egLike">
    <xs:sequence>
      <xs:element ref="ns1:eg"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.egLike_alternation">
    <xs:sequence>
      <xs:element ref="ns1:eg"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.egLike_sequence">
    <xs:sequence>
      <xs:element ref="ns1:eg"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.egLike_sequenceOptional">
    <xs:sequence>
      <xs:element minOccurs="0" ref="ns1:eg"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.egLike_sequenceOptionalRepeatable">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:eg"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.egLike_sequenceRepeatable">
    <xs:sequence>
      <xs:element maxOccurs="unbounded" ref="ns1:eg"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.graphicLike">
    <xs:choice>
      <xs:element ref="ns1:graphic"/>
      <xs:element ref="ns1:formula"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.graphicLike_alternation">
    <xs:choice>
      <xs:element ref="ns1:graphic"/>
      <xs:element ref="ns1:formula"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.graphicLike_sequence">
    <xs:sequence>
      <xs:element ref="ns1:graphic"/>
      <xs:element ref="ns1:formula"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.graphicLike_sequenceOptional">
    <xs:sequence>
      <xs:element minOccurs="0" ref="ns1:graphic"/>
      <xs:element minOccurs="0" ref="ns1:formula"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.graphicLike_sequenceOptionalRepeatable">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:graphic"/>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:formula"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.graphicLike_sequenceRepeatable">
    <xs:sequence>
      <xs:element maxOccurs="unbounded" ref="ns1:graphic"/>
      <xs:element maxOccurs="unbounded" ref="ns1:formula"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.pPart.editorial">
    <xs:sequence>
      <xs:element ref="ns1:abbr"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.pPart.editorial_alternation">
    <xs:sequence>
      <xs:element ref="ns1:abbr"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.pPart.editorial_sequence">
    <xs:sequence>
      <xs:element ref="ns1:abbr"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.pPart.editorial_sequenceOptional">
    <xs:sequence>
      <xs:element minOccurs="0" ref="ns1:abbr"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.pPart.editorial_sequenceOptionalRepeatable">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:abbr"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.pPart.editorial_sequenceRepeatable">
    <xs:sequence>
      <xs:element maxOccurs="unbounded" ref="ns1:abbr"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.pPart.transcriptional">
    <xs:choice>
      <xs:element ref="ns1:add"/>
      <xs:element ref="ns1:del"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.pPart.transcriptional_alternation">
    <xs:choice>
      <xs:element ref="ns1:add"/>
      <xs:element ref="ns1:del"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.pPart.transcriptional_sequence">
    <xs:sequence>
      <xs:element ref="ns1:add"/>
      <xs:element ref="ns1:del"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.pPart.transcriptional_sequenceOptional">
    <xs:sequence>
      <xs:element minOccurs="0" ref="ns1:add"/>
      <xs:element minOccurs="0" ref="ns1:del"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.pPart.transcriptional_sequenceOptionalRepeatable">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:add"/>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:del"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.pPart.transcriptional_sequenceRepeatable">
    <xs:sequence>
      <xs:element maxOccurs="unbounded" ref="ns1:add"/>
      <xs:element maxOccurs="unbounded" ref="ns1:del"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.pPart.edit">
    <xs:choice>
      <xs:group ref="mathml:model.pPart.editorial"/>
      <xs:group ref="mathml:model.pPart.transcriptional"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.pPart.edit_alternation">
    <xs:choice>
      <xs:group ref="mathml:model.pPart.editorial_alternation"/>
      <xs:group ref="mathml:model.pPart.transcriptional_alternation"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.pPart.edit_sequence">
    <xs:sequence>
      <xs:group ref="mathml:model.pPart.editorial_sequence"/>
      <xs:group ref="mathml:model.pPart.transcriptional_sequence"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.pPart.edit_sequenceOptional">
    <xs:sequence>
      <xs:group minOccurs="0" ref="mathml:model.pPart.editorial_sequenceOptional"/>
      <xs:group minOccurs="0" ref="mathml:model.pPart.transcriptional_sequenceOptional"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.pPart.edit_sequenceOptionalRepeatable">
    <xs:sequence>
      <xs:group minOccurs="0" maxOccurs="unbounded" ref="mathml:model.pPart.editorial_sequenceOptionalRepeatable"/>
      <xs:group minOccurs="0" maxOccurs="unbounded" ref="mathml:model.pPart.transcriptional_sequenceOptionalRepeatable"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.pPart.edit_sequenceRepeatable">
    <xs:sequence>
      <xs:group maxOccurs="unbounded" ref="mathml:model.pPart.editorial_sequenceRepeatable"/>
      <xs:group maxOccurs="unbounded" ref="mathml:model.pPart.transcriptional_sequenceRepeatable"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.ptrLike">
    <xs:choice>
      <xs:element ref="ns1:ptr"/>
      <xs:element ref="ns1:ref"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.ptrLike_alternation">
    <xs:choice>
      <xs:element ref="ns1:ptr"/>
      <xs:element ref="ns1:ref"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.ptrLike_sequence">
    <xs:sequence>
      <xs:element ref="ns1:ptr"/>
      <xs:element ref="ns1:ref"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.ptrLike_sequenceOptional">
    <xs:sequence>
      <xs:element minOccurs="0" ref="ns1:ptr"/>
      <xs:element minOccurs="0" ref="ns1:ref"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.ptrLike_sequenceOptionalRepeatable">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:ptr"/>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:ref"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.ptrLike_sequenceRepeatable">
    <xs:sequence>
      <xs:element maxOccurs="unbounded" ref="ns1:ptr"/>
      <xs:element maxOccurs="unbounded" ref="ns1:ref"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.milestoneLike">
    <xs:choice>
      <xs:element ref="ns1:milestone"/>
      <xs:element ref="ns1:pb"/>
      <xs:element ref="ns1:lb"/>
      <xs:element ref="ns1:fw"/>
      <xs:element ref="ns1:anchor"/>
      <xs:element ref="ns2:wordObject"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.milestoneLike_alternation">
    <xs:choice>
      <xs:element ref="ns1:milestone"/>
      <xs:element ref="ns1:pb"/>
      <xs:element ref="ns1:lb"/>
      <xs:element ref="ns1:fw"/>
      <xs:element ref="ns1:anchor"/>
      <xs:element ref="ns2:wordObject"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.milestoneLike_sequence">
    <xs:sequence>
      <xs:element ref="ns1:milestone"/>
      <xs:element ref="ns1:pb"/>
      <xs:element ref="ns1:lb"/>
      <xs:element ref="ns1:fw"/>
      <xs:element ref="ns1:anchor"/>
      <xs:element ref="ns2:wordObject"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.milestoneLike_sequenceOptional">
    <xs:sequence>
      <xs:element minOccurs="0" ref="ns1:milestone"/>
      <xs:element minOccurs="0" ref="ns1:pb"/>
      <xs:element minOccurs="0" ref="ns1:lb"/>
      <xs:element minOccurs="0" ref="ns1:fw"/>
      <xs:element minOccurs="0" ref="ns1:anchor"/>
      <xs:element minOccurs="0" ref="ns2:wordObject"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.milestoneLike_sequenceOptionalRepeatable">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:milestone"/>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:pb"/>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:lb"/>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:fw"/>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:anchor"/>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns2:wordObject"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.milestoneLike_sequenceRepeatable">
    <xs:sequence>
      <xs:element maxOccurs="unbounded" ref="ns1:milestone"/>
      <xs:element maxOccurs="unbounded" ref="ns1:pb"/>
      <xs:element maxOccurs="unbounded" ref="ns1:lb"/>
      <xs:element maxOccurs="unbounded" ref="ns1:fw"/>
      <xs:element maxOccurs="unbounded" ref="ns1:anchor"/>
      <xs:element maxOccurs="unbounded" ref="ns2:wordObject"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.gLike">
    <xs:sequence>
      <xs:element ref="ns1:g"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.phrase.xml">
    <xs:sequence>
      <xs:element ref="ns1:gi"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.phrase.xml_alternation">
    <xs:sequence>
      <xs:element ref="ns1:gi"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.phrase.xml_sequence">
    <xs:sequence>
      <xs:element ref="ns1:gi"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.phrase.xml_sequenceOptional">
    <xs:sequence>
      <xs:element minOccurs="0" ref="ns1:gi"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.phrase.xml_sequenceOptionalRepeatable">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:gi"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.phrase.xml_sequenceRepeatable">
    <xs:sequence>
      <xs:element maxOccurs="unbounded" ref="ns1:gi"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.biblLike">
    <xs:choice>
      <xs:element ref="ns1:bibl"/>
      <xs:element ref="ns1:biblStruct"/>
      <xs:element ref="ns1:biblFull"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.biblLike_alternation">
    <xs:choice>
      <xs:element ref="ns1:bibl"/>
      <xs:element ref="ns1:biblStruct"/>
      <xs:element ref="ns1:biblFull"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.biblLike_sequence">
    <xs:sequence>
      <xs:element ref="ns1:bibl"/>
      <xs:element ref="ns1:biblStruct"/>
      <xs:element ref="ns1:biblFull"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.biblLike_sequenceOptional">
    <xs:sequence>
      <xs:element minOccurs="0" ref="ns1:bibl"/>
      <xs:element minOccurs="0" ref="ns1:biblStruct"/>
      <xs:element minOccurs="0" ref="ns1:biblFull"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.biblLike_sequenceOptionalRepeatable">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:bibl"/>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:biblStruct"/>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:biblFull"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.biblLike_sequenceRepeatable">
    <xs:sequence>
      <xs:element maxOccurs="unbounded" ref="ns1:bibl"/>
      <xs:element maxOccurs="unbounded" ref="ns1:biblStruct"/>
      <xs:element maxOccurs="unbounded" ref="ns1:biblFull"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.headLike">
    <xs:sequence>
      <xs:element ref="ns1:head"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.headLike_alternation">
    <xs:sequence>
      <xs:element ref="ns1:head"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.headLike_sequence">
    <xs:sequence>
      <xs:element ref="ns1:head"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.headLike_sequenceOptional">
    <xs:sequence>
      <xs:element minOccurs="0" ref="ns1:head"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.headLike_sequenceOptionalRepeatable">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:head"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.headLike_sequenceRepeatable">
    <xs:sequence>
      <xs:element maxOccurs="unbounded" ref="ns1:head"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.labelLike">
    <xs:choice>
      <xs:element ref="ns1:desc"/>
      <xs:element ref="ns1:label"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.labelLike_alternation">
    <xs:choice>
      <xs:element ref="ns1:desc"/>
      <xs:element ref="ns1:label"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.labelLike_sequence">
    <xs:sequence>
      <xs:element ref="ns1:desc"/>
      <xs:element ref="ns1:label"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.labelLike_sequenceOptional">
    <xs:sequence>
      <xs:element minOccurs="0" ref="ns1:desc"/>
      <xs:element minOccurs="0" ref="ns1:label"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.labelLike_sequenceOptionalRepeatable">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:desc"/>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:label"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.labelLike_sequenceRepeatable">
    <xs:sequence>
      <xs:element maxOccurs="unbounded" ref="ns1:desc"/>
      <xs:element maxOccurs="unbounded" ref="ns1:label"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.listLike">
    <xs:choice>
      <xs:element ref="ns1:list"/>
      <xs:element ref="ns1:listBibl"/>
      <xs:element ref="ns1:listEvent"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.listLike_alternation">
    <xs:choice>
      <xs:element ref="ns1:list"/>
      <xs:element ref="ns1:listBibl"/>
      <xs:element ref="ns1:listEvent"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.listLike_sequence">
    <xs:sequence>
      <xs:element ref="ns1:list"/>
      <xs:element ref="ns1:listBibl"/>
      <xs:element ref="ns1:listEvent"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.listLike_sequenceOptional">
    <xs:sequence>
      <xs:element minOccurs="0" ref="ns1:list"/>
      <xs:element minOccurs="0" ref="ns1:listBibl"/>
      <xs:element minOccurs="0" ref="ns1:listEvent"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.listLike_sequenceOptionalRepeatable">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:list"/>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:listBibl"/>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:listEvent"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.listLike_sequenceRepeatable">
    <xs:sequence>
      <xs:element maxOccurs="unbounded" ref="ns1:list"/>
      <xs:element maxOccurs="unbounded" ref="ns1:listBibl"/>
      <xs:element maxOccurs="unbounded" ref="ns1:listEvent"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.noteLike">
    <xs:sequence>
      <xs:element ref="ns1:note"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.noteLike_alternation">
    <xs:sequence>
      <xs:element ref="ns1:note"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.noteLike_sequence">
    <xs:sequence>
      <xs:element ref="ns1:note"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.noteLike_sequenceOptional">
    <xs:sequence>
      <xs:element minOccurs="0" ref="ns1:note"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.noteLike_sequenceOptionalRepeatable">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:note"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.noteLike_sequenceRepeatable">
    <xs:sequence>
      <xs:element maxOccurs="unbounded" ref="ns1:note"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.lLike">
    <xs:sequence>
      <xs:element ref="ns1:l"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.lLike_alternation">
    <xs:sequence>
      <xs:element ref="ns1:l"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.lLike_sequence">
    <xs:sequence>
      <xs:element ref="ns1:l"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.lLike_sequenceOptional">
    <xs:sequence>
      <xs:element minOccurs="0" ref="ns1:l"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.lLike_sequenceOptionalRepeatable">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:l"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.lLike_sequenceRepeatable">
    <xs:sequence>
      <xs:element maxOccurs="unbounded" ref="ns1:l"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.pLike">
    <xs:sequence>
      <xs:element ref="ns1:p"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.pLike_alternation">
    <xs:sequence>
      <xs:element ref="ns1:p"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.pLike_sequence">
    <xs:sequence>
      <xs:element ref="ns1:p"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.pLike_sequenceOptional">
    <xs:sequence>
      <xs:element minOccurs="0" ref="ns1:p"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.pLike_sequenceOptionalRepeatable">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:p"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.pLike_sequenceRepeatable">
    <xs:sequence>
      <xs:element maxOccurs="unbounded" ref="ns1:p"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.global.edit">
    <xs:choice>
      <xs:element ref="ns1:addSpan"/>
      <xs:element ref="ns1:delSpan"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.global.edit_alternation">
    <xs:choice>
      <xs:element ref="ns1:addSpan"/>
      <xs:element ref="ns1:delSpan"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.global.edit_sequence">
    <xs:sequence>
      <xs:element ref="ns1:addSpan"/>
      <xs:element ref="ns1:delSpan"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.global.edit_sequenceOptional">
    <xs:sequence>
      <xs:element minOccurs="0" ref="ns1:addSpan"/>
      <xs:element minOccurs="0" ref="ns1:delSpan"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.global.edit_sequenceOptionalRepeatable">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:addSpan"/>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:delSpan"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.global.edit_sequenceRepeatable">
    <xs:sequence>
      <xs:element maxOccurs="unbounded" ref="ns1:addSpan"/>
      <xs:element maxOccurs="unbounded" ref="ns1:delSpan"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.divPart">
    <xs:choice>
      <xs:group ref="mathml:model.lLike"/>
      <xs:group ref="mathml:model.pLike"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.divPart_alternation">
    <xs:choice>
      <xs:group ref="mathml:model.lLike_alternation"/>
      <xs:group ref="mathml:model.pLike_alternation"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.divPart_sequence">
    <xs:sequence>
      <xs:group ref="mathml:model.lLike_sequence"/>
      <xs:group ref="mathml:model.pLike_sequence"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.divPart_sequenceOptional">
    <xs:sequence>
      <xs:group minOccurs="0" ref="mathml:model.lLike_sequenceOptional"/>
      <xs:group minOccurs="0" ref="mathml:model.pLike_sequenceOptional"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.divPart_sequenceOptionalRepeatable">
    <xs:sequence>
      <xs:group minOccurs="0" maxOccurs="unbounded" ref="mathml:model.lLike_sequenceOptionalRepeatable"/>
      <xs:group minOccurs="0" maxOccurs="unbounded" ref="mathml:model.pLike_sequenceOptionalRepeatable"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.divPart_sequenceRepeatable">
    <xs:sequence>
      <xs:group maxOccurs="unbounded" ref="mathml:model.lLike_sequenceRepeatable"/>
      <xs:group maxOccurs="unbounded" ref="mathml:model.pLike_sequenceRepeatable"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.persStateLike">
    <xs:sequence>
      <xs:element ref="ns1:persName"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.persStateLike_alternation">
    <xs:sequence>
      <xs:element ref="ns1:persName"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.persStateLike_sequence">
    <xs:sequence>
      <xs:element ref="ns1:persName"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.persStateLike_sequenceOptional">
    <xs:sequence>
      <xs:element minOccurs="0" ref="ns1:persName"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.persStateLike_sequenceOptionalRepeatable">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:persName"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.persStateLike_sequenceRepeatable">
    <xs:sequence>
      <xs:element maxOccurs="unbounded" ref="ns1:persName"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.personLike">
    <xs:sequence>
      <xs:element ref="ns1:org"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.publicationStmtPart">
    <xs:choice>
      <xs:element ref="ns1:address"/>
      <xs:element ref="ns1:date"/>
      <xs:element ref="ns1:publisher"/>
      <xs:element ref="ns1:pubPlace"/>
      <xs:element ref="ns1:distributor"/>
      <xs:element ref="ns1:authority"/>
      <xs:element ref="ns1:idno"/>
      <xs:element ref="ns1:availability"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.glossLike">
    <xs:choice>
      <xs:element ref="ns1:desc"/>
      <xs:element ref="ns1:gloss"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.quoteLike">
    <xs:choice>
      <xs:element ref="ns1:quote"/>
      <xs:element ref="ns1:cit"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.quoteLike_alternation">
    <xs:choice>
      <xs:element ref="ns1:quote"/>
      <xs:element ref="ns1:cit"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.quoteLike_sequence">
    <xs:sequence>
      <xs:element ref="ns1:quote"/>
      <xs:element ref="ns1:cit"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.quoteLike_sequenceOptional">
    <xs:sequence>
      <xs:element minOccurs="0" ref="ns1:quote"/>
      <xs:element minOccurs="0" ref="ns1:cit"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.quoteLike_sequenceOptionalRepeatable">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:quote"/>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:cit"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.quoteLike_sequenceRepeatable">
    <xs:sequence>
      <xs:element maxOccurs="unbounded" ref="ns1:quote"/>
      <xs:element maxOccurs="unbounded" ref="ns1:cit"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.qLike">
    <xs:choice>
      <xs:group ref="mathml:model.quoteLike"/>
      <xs:element ref="ns1:q"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.qLike_alternation">
    <xs:choice>
      <xs:group ref="mathml:model.quoteLike_alternation"/>
      <xs:element ref="ns1:q"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.qLike_sequence">
    <xs:sequence>
      <xs:group ref="mathml:model.quoteLike_sequence"/>
      <xs:element ref="ns1:q"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.qLike_sequenceOptional">
    <xs:sequence>
      <xs:group minOccurs="0" ref="mathml:model.quoteLike_sequenceOptional"/>
      <xs:element minOccurs="0" ref="ns1:q"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.qLike_sequenceOptionalRepeatable">
    <xs:sequence>
      <xs:group minOccurs="0" maxOccurs="unbounded" ref="mathml:model.quoteLike_sequenceOptionalRepeatable"/>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:q"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.qLike_sequenceRepeatable">
    <xs:sequence>
      <xs:group maxOccurs="unbounded" ref="mathml:model.quoteLike_sequenceRepeatable"/>
      <xs:element maxOccurs="unbounded" ref="ns1:q"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.respLike">
    <xs:choice>
      <xs:element ref="ns1:author"/>
      <xs:element ref="ns1:editor"/>
      <xs:element ref="ns1:respStmt"/>
      <xs:element ref="ns1:meeting"/>
      <xs:element ref="ns1:sponsor"/>
      <xs:element ref="ns1:funder"/>
      <xs:element ref="ns1:principal"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.respLike_alternation">
    <xs:choice>
      <xs:element ref="ns1:author"/>
      <xs:element ref="ns1:editor"/>
      <xs:element ref="ns1:respStmt"/>
      <xs:element ref="ns1:meeting"/>
      <xs:element ref="ns1:sponsor"/>
      <xs:element ref="ns1:funder"/>
      <xs:element ref="ns1:principal"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.respLike_sequence">
    <xs:sequence>
      <xs:element ref="ns1:author"/>
      <xs:element ref="ns1:editor"/>
      <xs:element ref="ns1:respStmt"/>
      <xs:element ref="ns1:meeting"/>
      <xs:element ref="ns1:sponsor"/>
      <xs:element ref="ns1:funder"/>
      <xs:element ref="ns1:principal"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.respLike_sequenceOptional">
    <xs:sequence>
      <xs:element minOccurs="0" ref="ns1:author"/>
      <xs:element minOccurs="0" ref="ns1:editor"/>
      <xs:element minOccurs="0" ref="ns1:respStmt"/>
      <xs:element minOccurs="0" ref="ns1:meeting"/>
      <xs:element minOccurs="0" ref="ns1:sponsor"/>
      <xs:element minOccurs="0" ref="ns1:funder"/>
      <xs:element minOccurs="0" ref="ns1:principal"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.respLike_sequenceOptionalRepeatable">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:author"/>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:editor"/>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:respStmt"/>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:meeting"/>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:sponsor"/>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:funder"/>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:principal"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.respLike_sequenceRepeatable">
    <xs:sequence>
      <xs:element maxOccurs="unbounded" ref="ns1:author"/>
      <xs:element maxOccurs="unbounded" ref="ns1:editor"/>
      <xs:element maxOccurs="unbounded" ref="ns1:respStmt"/>
      <xs:element maxOccurs="unbounded" ref="ns1:meeting"/>
      <xs:element maxOccurs="unbounded" ref="ns1:sponsor"/>
      <xs:element maxOccurs="unbounded" ref="ns1:funder"/>
      <xs:element maxOccurs="unbounded" ref="ns1:principal"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.divWrapper">
    <xs:sequence>
      <xs:element ref="ns1:meeting"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.divWrapper_alternation">
    <xs:sequence>
      <xs:element ref="ns1:meeting"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.divWrapper_sequence">
    <xs:sequence>
      <xs:element ref="ns1:meeting"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.divWrapper_sequenceOptional">
    <xs:sequence>
      <xs:element minOccurs="0" ref="ns1:meeting"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.divWrapper_sequenceOptionalRepeatable">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:meeting"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.divWrapper_sequenceRepeatable">
    <xs:sequence>
      <xs:element maxOccurs="unbounded" ref="ns1:meeting"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.divTopPart">
    <xs:sequence>
      <xs:group ref="mathml:model.headLike"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.divTopPart_alternation">
    <xs:sequence>
      <xs:group ref="mathml:model.headLike_alternation"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.divTopPart_sequence">
    <xs:sequence>
      <xs:group ref="mathml:model.headLike_sequence"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.divTopPart_sequenceOptional">
    <xs:sequence>
      <xs:group minOccurs="0" ref="mathml:model.headLike_sequenceOptional"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.divTopPart_sequenceOptionalRepeatable">
    <xs:sequence>
      <xs:group minOccurs="0" maxOccurs="unbounded" ref="mathml:model.headLike_sequenceOptionalRepeatable"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.divTopPart_sequenceRepeatable">
    <xs:sequence>
      <xs:group maxOccurs="unbounded" ref="mathml:model.headLike_sequenceRepeatable"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.divTop">
    <xs:choice>
      <xs:group ref="mathml:model.divWrapper"/>
      <xs:group ref="mathml:model.divTopPart"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.pLike.front">
    <xs:choice>
      <xs:element ref="ns1:head"/>
      <xs:element ref="ns1:titlePart"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.divBottom">
    <xs:sequence>
      <xs:group ref="mathml:model.divWrapper"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.msQuoteLike">
    <xs:sequence>
      <xs:element ref="ns1:title"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.msQuoteLike_alternation">
    <xs:sequence>
      <xs:element ref="ns1:title"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.msQuoteLike_sequence">
    <xs:sequence>
      <xs:element ref="ns1:title"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.msQuoteLike_sequenceOptional">
    <xs:sequence>
      <xs:element minOccurs="0" ref="ns1:title"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.msQuoteLike_sequenceOptionalRepeatable">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:title"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.msQuoteLike_sequenceRepeatable">
    <xs:sequence>
      <xs:element maxOccurs="unbounded" ref="ns1:title"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.imprintPart">
    <xs:choice>
      <xs:element ref="ns1:publisher"/>
      <xs:element ref="ns1:biblScope"/>
      <xs:element ref="ns1:pubPlace"/>
      <xs:element ref="ns1:distributor"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.imprintPart_alternation">
    <xs:choice>
      <xs:element ref="ns1:publisher"/>
      <xs:element ref="ns1:biblScope"/>
      <xs:element ref="ns1:pubPlace"/>
      <xs:element ref="ns1:distributor"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.imprintPart_sequence">
    <xs:sequence>
      <xs:element ref="ns1:publisher"/>
      <xs:element ref="ns1:biblScope"/>
      <xs:element ref="ns1:pubPlace"/>
      <xs:element ref="ns1:distributor"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.imprintPart_sequenceOptional">
    <xs:sequence>
      <xs:element minOccurs="0" ref="ns1:publisher"/>
      <xs:element minOccurs="0" ref="ns1:biblScope"/>
      <xs:element minOccurs="0" ref="ns1:pubPlace"/>
      <xs:element minOccurs="0" ref="ns1:distributor"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.imprintPart_sequenceOptionalRepeatable">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:publisher"/>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:biblScope"/>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:pubPlace"/>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:distributor"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.imprintPart_sequenceRepeatable">
    <xs:sequence>
      <xs:element maxOccurs="unbounded" ref="ns1:publisher"/>
      <xs:element maxOccurs="unbounded" ref="ns1:biblScope"/>
      <xs:element maxOccurs="unbounded" ref="ns1:pubPlace"/>
      <xs:element maxOccurs="unbounded" ref="ns1:distributor"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.addressLike">
    <xs:sequence>
      <xs:element ref="ns1:address"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.addressLike_alternation">
    <xs:sequence>
      <xs:element ref="ns1:address"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.addressLike_sequence">
    <xs:sequence>
      <xs:element ref="ns1:address"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.addressLike_sequenceOptional">
    <xs:sequence>
      <xs:element minOccurs="0" ref="ns1:address"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.addressLike_sequenceOptionalRepeatable">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:address"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.addressLike_sequenceRepeatable">
    <xs:sequence>
      <xs:element maxOccurs="unbounded" ref="ns1:address"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.nameLike">
    <xs:choice>
      <xs:group ref="mathml:model.nameLike.agent"/>
      <xs:element ref="ns1:idno"/>
      <xs:group ref="mathml:model.persNamePart"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.nameLike_alternation">
    <xs:choice>
      <xs:group ref="mathml:model.nameLike.agent_alternation"/>
      <xs:element ref="ns1:idno"/>
      <xs:group ref="mathml:model.persNamePart_alternation"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.nameLike_sequence">
    <xs:sequence>
      <xs:group ref="mathml:model.nameLike.agent_sequence"/>
      <xs:element ref="ns1:idno"/>
      <xs:group ref="mathml:model.persNamePart_sequence"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.nameLike_sequenceOptional">
    <xs:sequence>
      <xs:group minOccurs="0" ref="mathml:model.nameLike.agent_sequenceOptional"/>
      <xs:element minOccurs="0" ref="ns1:idno"/>
      <xs:group minOccurs="0" ref="mathml:model.persNamePart_sequenceOptional"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.nameLike_sequenceOptionalRepeatable">
    <xs:sequence>
      <xs:group minOccurs="0" maxOccurs="unbounded" ref="mathml:model.nameLike.agent_sequenceOptionalRepeatable"/>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:idno"/>
      <xs:group minOccurs="0" maxOccurs="unbounded" ref="mathml:model.persNamePart_sequenceOptionalRepeatable"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.nameLike_sequenceRepeatable">
    <xs:sequence>
      <xs:group maxOccurs="unbounded" ref="mathml:model.nameLike.agent_sequenceRepeatable"/>
      <xs:element maxOccurs="unbounded" ref="ns1:idno"/>
      <xs:group maxOccurs="unbounded" ref="mathml:model.persNamePart_sequenceRepeatable"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.global">
    <xs:choice>
      <xs:group ref="mathml:model.milestoneLike"/>
      <xs:group ref="mathml:model.noteLike"/>
      <xs:group ref="mathml:model.global.edit"/>
      <xs:element ref="ns1:figure"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.biblPart">
    <xs:choice>
      <xs:group ref="mathml:model.respLike"/>
      <xs:group ref="mathml:model.imprintPart"/>
      <xs:element ref="ns1:series"/>
      <xs:element ref="ns1:edition"/>
      <xs:element ref="ns1:extent"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.frontPart">
    <xs:sequence>
      <xs:element ref="ns1:divGen"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.addrPart">
    <xs:choice>
      <xs:group ref="mathml:model.nameLike"/>
      <xs:element ref="ns1:addrLine"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.pPart.data">
    <xs:choice>
      <xs:group ref="mathml:model.dateLike"/>
      <xs:group ref="mathml:model.measureLike"/>
      <xs:group ref="mathml:model.addressLike"/>
      <xs:group ref="mathml:model.nameLike"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.pPart.data_alternation">
    <xs:choice>
      <xs:group ref="mathml:model.dateLike_alternation"/>
      <xs:group ref="mathml:model.measureLike_alternation"/>
      <xs:group ref="mathml:model.addressLike_alternation"/>
      <xs:group ref="mathml:model.nameLike_alternation"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.pPart.data_sequence">
    <xs:sequence>
      <xs:group ref="mathml:model.dateLike_sequence"/>
      <xs:group ref="mathml:model.measureLike_sequence"/>
      <xs:group ref="mathml:model.addressLike_sequence"/>
      <xs:group ref="mathml:model.nameLike_sequence"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.pPart.data_sequenceOptional">
    <xs:sequence>
      <xs:group minOccurs="0" ref="mathml:model.dateLike_sequenceOptional"/>
      <xs:group minOccurs="0" ref="mathml:model.measureLike_sequenceOptional"/>
      <xs:group minOccurs="0" ref="mathml:model.addressLike_sequenceOptional"/>
      <xs:group minOccurs="0" ref="mathml:model.nameLike_sequenceOptional"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.pPart.data_sequenceOptionalRepeatable">
    <xs:sequence>
      <xs:group minOccurs="0" maxOccurs="unbounded" ref="mathml:model.dateLike_sequenceOptionalRepeatable"/>
      <xs:group minOccurs="0" maxOccurs="unbounded" ref="mathml:model.measureLike_sequenceOptionalRepeatable"/>
      <xs:group minOccurs="0" maxOccurs="unbounded" ref="mathml:model.addressLike_sequenceOptionalRepeatable"/>
      <xs:group minOccurs="0" maxOccurs="unbounded" ref="mathml:model.nameLike_sequenceOptionalRepeatable"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.pPart.data_sequenceRepeatable">
    <xs:sequence>
      <xs:group maxOccurs="unbounded" ref="mathml:model.dateLike_sequenceRepeatable"/>
      <xs:group maxOccurs="unbounded" ref="mathml:model.measureLike_sequenceRepeatable"/>
      <xs:group maxOccurs="unbounded" ref="mathml:model.addressLike_sequenceRepeatable"/>
      <xs:group maxOccurs="unbounded" ref="mathml:model.nameLike_sequenceRepeatable"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.inter">
    <xs:choice>
      <xs:group ref="mathml:model.egLike"/>
      <xs:group ref="mathml:model.biblLike"/>
      <xs:group ref="mathml:model.labelLike"/>
      <xs:group ref="mathml:model.listLike"/>
      <xs:group ref="mathml:model.qLike"/>
      <xs:element ref="tm9901:table"/>
      <xs:element ref="t:termEntry"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.inter_alternation">
    <xs:choice>
      <xs:group ref="mathml:model.egLike_alternation"/>
      <xs:group ref="mathml:model.biblLike_alternation"/>
      <xs:group ref="mathml:model.labelLike_alternation"/>
      <xs:group ref="mathml:model.listLike_alternation"/>
      <xs:group ref="mathml:model.qLike_alternation"/>
      <xs:element ref="tm9901:table"/>
      <xs:element ref="t:termEntry"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.inter_sequence">
    <xs:sequence>
      <xs:group ref="mathml:model.egLike_sequence"/>
      <xs:group ref="mathml:model.biblLike_sequence"/>
      <xs:group ref="mathml:model.labelLike_sequence"/>
      <xs:group ref="mathml:model.listLike_sequence"/>
      <xs:group ref="mathml:model.qLike_sequence"/>
      <xs:element ref="tm9901:table"/>
      <xs:element ref="t:termEntry"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.inter_sequenceOptional">
    <xs:sequence>
      <xs:group minOccurs="0" ref="mathml:model.egLike_sequenceOptional"/>
      <xs:group minOccurs="0" ref="mathml:model.biblLike_sequenceOptional"/>
      <xs:group minOccurs="0" ref="mathml:model.labelLike_sequenceOptional"/>
      <xs:group minOccurs="0" ref="mathml:model.listLike_sequenceOptional"/>
      <xs:group minOccurs="0" ref="mathml:model.qLike_sequenceOptional"/>
      <xs:element minOccurs="0" ref="tm9901:table"/>
      <xs:element minOccurs="0" ref="t:termEntry"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.inter_sequenceOptionalRepeatable">
    <xs:sequence>
      <xs:group minOccurs="0" maxOccurs="unbounded" ref="mathml:model.egLike_sequenceOptionalRepeatable"/>
      <xs:group minOccurs="0" maxOccurs="unbounded" ref="mathml:model.biblLike_sequenceOptionalRepeatable"/>
      <xs:group minOccurs="0" maxOccurs="unbounded" ref="mathml:model.labelLike_sequenceOptionalRepeatable"/>
      <xs:group minOccurs="0" maxOccurs="unbounded" ref="mathml:model.listLike_sequenceOptionalRepeatable"/>
      <xs:group minOccurs="0" maxOccurs="unbounded" ref="mathml:model.qLike_sequenceOptionalRepeatable"/>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="tm9901:table"/>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="t:termEntry"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.inter_sequenceRepeatable">
    <xs:sequence>
      <xs:group maxOccurs="unbounded" ref="mathml:model.egLike_sequenceRepeatable"/>
      <xs:group maxOccurs="unbounded" ref="mathml:model.biblLike_sequenceRepeatable"/>
      <xs:group maxOccurs="unbounded" ref="mathml:model.labelLike_sequenceRepeatable"/>
      <xs:group maxOccurs="unbounded" ref="mathml:model.listLike_sequenceRepeatable"/>
      <xs:group maxOccurs="unbounded" ref="mathml:model.qLike_sequenceRepeatable"/>
      <xs:element maxOccurs="unbounded" ref="tm9901:table"/>
      <xs:element maxOccurs="unbounded" ref="t:termEntry"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.common">
    <xs:choice>
      <xs:group ref="mathml:model.divPart"/>
      <xs:group ref="mathml:model.inter"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.phrase">
    <xs:choice>
      <xs:group ref="mathml:model.segLike"/>
      <xs:group ref="mathml:model.highlighted"/>
      <xs:group ref="mathml:model.graphicLike"/>
      <xs:group ref="mathml:model.pPart.edit"/>
      <xs:group ref="mathml:model.ptrLike"/>
      <xs:group ref="mathml:model.phrase.xml"/>
      <xs:group ref="mathml:model.pPart.data"/>
      <xs:element ref="teidocx:dynamicContent"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.limitedPhrase">
    <xs:choice>
      <xs:group ref="mathml:model.emphLike"/>
      <xs:group ref="mathml:model.pPart.editorial"/>
      <xs:group ref="mathml:model.ptrLike"/>
      <xs:group ref="mathml:model.phrase.xml"/>
      <xs:group ref="mathml:model.pPart.data"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.divLike">
    <xs:sequence>
      <xs:element ref="ns1:div"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.divGenLike">
    <xs:sequence>
      <xs:element ref="ns1:divGen"/>
    </xs:sequence>
  </xs:group>
  <xs:attributeGroup name="att.personal.attributes">
    <xs:attributeGroup ref="mathml:att.naming.attributes"/>
    <xs:attributeGroup ref="mathml:att.personal.attribute.full"/>
    <xs:attributeGroup ref="mathml:att.personal.attribute.sort"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.personal.attribute.full">
    <xs:attribute name="full" default="yes">
      <xs:annotation>
        <xs:documentation>indicates whether the name component is given in full, as an
abbreviation or simply as an initial.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:restriction base="xs:token">
          <xs:enumeration value="yes">
            <xs:annotation>
              <xs:documentation>the name component is spelled out in full.</xs:documentation>
            </xs:annotation>
          </xs:enumeration>
          <xs:enumeration value="abb">
            <xs:annotation>
              <xs:documentation>(abbreviated) the name component is given in an abbreviated form.</xs:documentation>
            </xs:annotation>
          </xs:enumeration>
          <xs:enumeration value="init">
            <xs:annotation>
              <xs:documentation>(initial letter) the name component is indicated only by
one initial.</xs:documentation>
            </xs:annotation>
          </xs:enumeration>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.personal.attribute.sort">
    <xs:attribute name="sort" type="xs:nonNegativeInteger">
      <xs:annotation>
        <xs:documentation>specifies the sort order of the name component in relation
to others within the personal name.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.global.analytic.attributes">
    <xs:attributeGroup ref="mathml:att.global.analytic.attribute.ana"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.global.analytic.attribute.ana">
    <xs:attribute name="ana">
      <xs:annotation>
        <xs:documentation>(analysis) indicates one or more elements containing interpretations of the
element on which the ana attribute appears.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:restriction>
          <xs:simpleType>
            <xs:list>
              <xs:simpleType>
                <xs:union memberTypes="xs:anyURI xs:anyURI"/>
              </xs:simpleType>
            </xs:list>
          </xs:simpleType>
          <xs:minLength value="1"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:group name="model.teiHeaderPart">
    <xs:choice>
      <xs:element ref="ns1:encodingDesc"/>
      <xs:element ref="ns1:profileDesc"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.encodingDescPart">
    <xs:choice>
      <xs:element ref="ns1:projectDesc"/>
      <xs:element ref="ns1:refsDecl"/>
      <xs:element ref="ns1:classDecl"/>
      <xs:element ref="ns1:appInfo"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.applicationLike">
    <xs:sequence>
      <xs:element ref="ns1:application"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.profileDescPart">
    <xs:choice>
      <xs:element ref="ns1:creation"/>
      <xs:element ref="ns1:langUsage"/>
      <xs:element ref="ns1:textClass"/>
    </xs:choice>
  </xs:group>
  <xs:attributeGroup name="att.global.facs.attributes">
    <xs:attributeGroup ref="mathml:att.global.facs.attribute.facs"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.global.facs.attribute.facs">
    <xs:attribute name="facs">
      <xs:annotation>
        <xs:documentation>(facsimile) points to all or part of an image which corresponds with the content of the element.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:restriction>
          <xs:simpleType>
            <xs:list>
              <xs:simpleType>
                <xs:union memberTypes="xs:anyURI xs:anyURI"/>
              </xs:simpleType>
            </xs:list>
          </xs:simpleType>
          <xs:minLength value="1"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:group name="model.persNamePart">
    <xs:choice>
      <xs:element ref="ns1:surname"/>
      <xs:element ref="ns1:forename"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.persNamePart_alternation">
    <xs:choice>
      <xs:element ref="ns1:surname"/>
      <xs:element ref="ns1:forename"/>
    </xs:choice>
  </xs:group>
  <xs:group name="model.persNamePart_sequence">
    <xs:sequence>
      <xs:element ref="ns1:surname"/>
      <xs:element ref="ns1:forename"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.persNamePart_sequenceOptional">
    <xs:sequence>
      <xs:element minOccurs="0" ref="ns1:surname"/>
      <xs:element minOccurs="0" ref="ns1:forename"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.persNamePart_sequenceOptionalRepeatable">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:surname"/>
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="ns1:forename"/>
    </xs:sequence>
  </xs:group>
  <xs:group name="model.persNamePart_sequenceRepeatable">
    <xs:sequence>
      <xs:element maxOccurs="unbounded" ref="ns1:surname"/>
      <xs:element maxOccurs="unbounded" ref="ns1:forename"/>
    </xs:sequence>
  </xs:group>
  <xs:attributeGroup name="att.datable.iso.attributes">
    <xs:attributeGroup ref="mathml:att.datable.iso.attribute.when-iso"/>
    <xs:attributeGroup ref="mathml:att.datable.iso.attribute.notBefore-iso"/>
    <xs:attributeGroup ref="mathml:att.datable.iso.attribute.notAfter-iso"/>
    <xs:attributeGroup ref="mathml:att.datable.iso.attribute.from-iso"/>
    <xs:attributeGroup ref="mathml:att.datable.iso.attribute.to-iso"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.datable.iso.attribute.when-iso">
    <xs:attribute name="when-iso">
      <xs:annotation>
        <xs:documentation>supplies the value of a date or time in a standard form.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:union memberTypes="xs:date xs:gYear xs:gMonth xs:gDay xs:gYearMonth xs:gMonthDay xs:time xs:dateTime">
          <xs:simpleType>
            <xs:restriction base="xs:token">
              <xs:pattern value="[0-9.,DHMPRSTWYZ/:+\-]+"/>
            </xs:restriction>
          </xs:simpleType>
        </xs:union>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.datable.iso.attribute.notBefore-iso">
    <xs:attribute name="notBefore-iso">
      <xs:annotation>
        <xs:documentation>specifies the earliest possible date for the event in standard form, e.g. yyyy-mm-dd.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:union memberTypes="xs:date xs:gYear xs:gMonth xs:gDay xs:gYearMonth xs:gMonthDay xs:time xs:dateTime">
          <xs:simpleType>
            <xs:restriction base="xs:token">
              <xs:pattern value="[0-9.,DHMPRSTWYZ/:+\-]+"/>
            </xs:restriction>
          </xs:simpleType>
        </xs:union>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.datable.iso.attribute.notAfter-iso">
    <xs:attribute name="notAfter-iso">
      <xs:annotation>
        <xs:documentation>specifies the latest possible date for the event in standard form, e.g. yyyy-mm-dd.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:union memberTypes="xs:date xs:gYear xs:gMonth xs:gDay xs:gYearMonth xs:gMonthDay xs:time xs:dateTime">
          <xs:simpleType>
            <xs:restriction base="xs:token">
              <xs:pattern value="[0-9.,DHMPRSTWYZ/:+\-]+"/>
            </xs:restriction>
          </xs:simpleType>
        </xs:union>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.datable.iso.attribute.from-iso">
    <xs:attribute name="from-iso">
      <xs:annotation>
        <xs:documentation>indicates the starting point of the period in standard form.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:union memberTypes="xs:date xs:gYear xs:gMonth xs:gDay xs:gYearMonth xs:gMonthDay xs:time xs:dateTime">
          <xs:simpleType>
            <xs:restriction base="xs:token">
              <xs:pattern value="[0-9.,DHMPRSTWYZ/:+\-]+"/>
            </xs:restriction>
          </xs:simpleType>
        </xs:union>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="att.datable.iso.attribute.to-iso">
    <xs:attribute name="to-iso">
      <xs:annotation>
        <xs:documentation>indicates the ending point of the period in standard form.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:union memberTypes="xs:date xs:gYear xs:gMonth xs:gDay xs:gYearMonth xs:gMonthDay xs:time xs:dateTime">
          <xs:simpleType>
            <xs:restriction base="xs:token">
              <xs:pattern value="[0-9.,DHMPRSTWYZ/:+\-]+"/>
            </xs:restriction>
          </xs:simpleType>
        </xs:union>
      </xs:simpleType>
    </xs:attribute>
  </xs:attributeGroup>
  <xs:attributeGroup name="idlang.attributes">
    <xs:attributeGroup ref="mathml:id.attributes"/>
    <xs:attributeGroup ref="mathml:lang.attributes"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="id.attributes">
    <xs:attributeGroup ref="mathml:id.attribute.id"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="id.attribute.id">
    <xs:attribute name="id"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="target-IDREF.attributes">
    <xs:attributeGroup ref="mathml:target-IDREF.attribute.target"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="target-IDREF.attribute.target">
    <xs:attribute name="target"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="lang.attributes">
    <xs:attributeGroup ref="mathml:lang.attribute.xmllang"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="lang.attribute.xmllang">
    <xs:attributeGroup ref="xml:lang1"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="IDLangTgtDtyp.attributes">
    <xs:attributeGroup ref="mathml:lang.attributes"/>
    <xs:attributeGroup ref="mathml:id.attributes"/>
    <xs:attributeGroup ref="mathml:target-IDREF.attributes"/>
    <xs:attributeGroup ref="mathml:IDLangTgtDtyp.attribute.datatype"/>
  </xs:attributeGroup>
  <xs:attributeGroup name="IDLangTgtDtyp.attribute.datatype">
    <xs:attribute name="datatype">
      <xs:annotation>
        <xs:documentation>The data type of plainText, or what is known as PCDATA.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:attributeGroup>
</xs:schema>
