<?xml version="1.0"?>
<rng:grammar xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:teix="http://www.tei-c.org/ns/Examples" xmlns:rng="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes" ns="http://www.tei-c.org/ns/1.0">
  <!--
Schema generated from ODD source 2009-01-31T17:03:59Z. 
TEI Edition: 1.3.0. Last updated on February 1st 2009.

-->
  <!--
This template file is freely available and you are
             hereby authorised to copy, modify, and redistribute it in
             any way without further reference or permissions.
When making such modifications, you are strongly
             recommended to change the present text to include an
             accurate statement of the licencing conditions applicable
             to your modified text.-->
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="macro.paraContent">
    <zeroOrMore>
      <choice>
        <text/>
        <ref name="model.gLike"/>
        <ref name="model.phrase"/>
        <ref name="model.inter"/>
        <ref name="model.global"/>
      </choice>
    </zeroOrMore>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="macro.limitedContent">
    <zeroOrMore>
      <choice>
        <text/>
        <ref name="model.limitedPhrase"/>
        <ref name="model.inter"/>
      </choice>
    </zeroOrMore>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="macro.phraseSeq">
    <zeroOrMore>
      <choice>
        <text/>
        <ref name="model.gLike"/>
        <ref name="model.phrase"/>
        <ref name="model.global"/>
      </choice>
    </zeroOrMore>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="macro.phraseSeq.limited">
    <zeroOrMore>
      <choice>
        <text/>
        <ref name="model.limitedPhrase"/>
        <ref name="model.global"/>
      </choice>
    </zeroOrMore>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="macro.specialPara">
    <zeroOrMore>
      <choice>
        <text/>
        <ref name="model.gLike"/>
        <ref name="model.phrase"/>
        <ref name="model.inter"/>
        <ref name="model.divPart"/>
        <ref name="model.global"/>
      </choice>
    </zeroOrMore>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="macro.anyXML">
    <element>
      <anyName/>
      <zeroOrMore>
        <choice>
          <attribute>
            <anyName>
              <except>
                <name>xml:id</name>
                <name>xml:lang</name>
              </except>
            </anyName>
          </attribute>
          <text/>
          <ref name="macro.anyXML"/>
        </choice>
      </zeroOrMore>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.ascribed.attributes">
    <ref name="att.ascribed.attribute.who"/>
    <empty/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.ascribed.attribute.who">
    <rng:optional>
      <rng:attribute name="who">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the person, or group of
	people, to whom the element content is ascribed.</a:documentation>
        <rng:list>
          <rng:oneOrMore>
            <data type="anyURI"/>
          </rng:oneOrMore>
        </rng:list>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.canonical.attributes">
    <ref name="att.canonical.attribute.key"/>
    <ref name="att.canonical.attribute.ref"/>
    <empty/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.canonical.attribute.key">
    <rng:optional>
      <rng:attribute name="key">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">provides an externally-defined means
 of identifying the entity (or entities) being named, using a coded value
      of some kind.</a:documentation>
        <data type="string"/>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.canonical.attribute.ref">
    <rng:optional>
      <rng:attribute name="ref">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (reference) provides an explicit means of locating a full definition
      for the entity being named by means of one or more URIs.</a:documentation>
        <rng:list>
          <rng:oneOrMore>
            <data type="anyURI"/>
          </rng:oneOrMore>
        </rng:list>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.dimensions.attributes">
    <ref name="att.dimensions.attribute.unit"/>
    <ref name="att.dimensions.attribute.quantity"/>
    <ref name="att.dimensions.attribute.extent"/>
    <ref name="att.dimensions.attribute.atLeast"/>
    <ref name="att.dimensions.attribute.atMost"/>
    <ref name="att.dimensions.attribute.min"/>
    <ref name="att.dimensions.attribute.max"/>
    <ref name="att.dimensions.attribute.precision"/>
    <ref name="att.dimensions.attribute.scope"/>
    <empty/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.dimensions.attribute.unit">
    <rng:optional>
      <rng:attribute name="unit">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">names the unit used for the measurement
Suggested values include: 1] cm (centimetres); 2] mm (millimetres); 3] in (inches); 4] lines; 5] chars (characters)</a:documentation>
        <rng:choice>
          <rng:value>cm</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(centimetres) </a:documentation>
          <rng:value>mm</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(millimetres) </a:documentation>
          <rng:value>in</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(inches) </a:documentation>
          <rng:value>lines</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">lines of text</a:documentation>
          <rng:value>chars</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(characters) characters of text</a:documentation>
          <data type="Name"/>
        </rng:choice>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.dimensions.attribute.quantity">
    <rng:optional>
      <rng:attribute name="quantity">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the length in the units specified</a:documentation>
        <choice>
          <data type="double"/>
          <data type="decimal"/>
        </choice>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.dimensions.attribute.extent">
    <rng:optional>
      <rng:attribute name="extent">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the size of the object concerned using a
      project-specific vocabulary combining quantity and units in a
      single string of words.  </a:documentation>
        <rng:list>
          <rng:oneOrMore>
            <data type="token">
              <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
            </data>
          </rng:oneOrMore>
        </rng:list>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.dimensions.attribute.atLeast">
    <rng:optional>
      <rng:attribute name="atLeast">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">gives a minimum  estimated value for the  measurement.</a:documentation>
        <choice>
          <data type="double"/>
          <data type="decimal"/>
        </choice>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.dimensions.attribute.atMost">
    <rng:optional>
      <rng:attribute name="atMost">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">gives a maximum  estimated value for the  measurement.</a:documentation>
        <choice>
          <data type="double"/>
          <data type="decimal"/>
        </choice>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.dimensions.attribute.min">
    <rng:optional>
      <rng:attribute name="min">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">where the measurement summarizes more than one
      observation, supplies the minimum value observed.</a:documentation>
        <choice>
          <data type="double"/>
          <data type="decimal"/>
        </choice>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.dimensions.attribute.max">
    <rng:optional>
      <rng:attribute name="max">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">where the measurement summarizes more than one
      observation, supplies the maximum value observed.</a:documentation>
        <choice>
          <data type="double"/>
          <data type="decimal"/>
        </choice>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.dimensions.attribute.precision">
    <rng:optional>
      <rng:attribute name="precision">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">characterizes the precision of the values specified by the
      other attributes.</a:documentation>
        <choice>
          <value>high</value>
          <value>medium</value>
          <value>low</value>
          <value>unknown</value>
        </choice>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.dimensions.attribute.scope">
    <rng:optional>
      <rng:attribute name="scope">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">where the measurement summarizes more than one
      observation, specifies the applicability of this measurement.
Sample values include: 1] all; 2] most; 3] range</a:documentation>
        <data type="Name"/>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.datable.w3c.attributes">
    <ref name="att.datable.w3c.attribute.period"/>
    <ref name="att.datable.w3c.attribute.when"/>
    <ref name="att.datable.w3c.attribute.notBefore"/>
    <ref name="att.datable.w3c.attribute.notAfter"/>
    <ref name="att.datable.w3c.attribute.from"/>
    <ref name="att.datable.w3c.attribute.to"/>
    <empty/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.datable.w3c.attribute.period">
    <rng:optional>
      <rng:attribute name="period">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">supplies a pointer to some location defining a named
      period of time within which the datable item is understood to
      have occurred.</a:documentation>
        <data type="anyURI"/>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.datable.w3c.attribute.when">
    <rng:optional>
      <rng:attribute name="when">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">supplies the value of the date or time in a standard form,
      e.g. yyyy-mm-dd.</a:documentation>
        <choice>
          <data type="date"/>
          <data type="gYear"/>
          <data type="gMonth"/>
          <data type="gDay"/>
          <data type="gYearMonth"/>
          <data type="gMonthDay"/>
          <data type="time"/>
          <data type="dateTime"/>
        </choice>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.datable.w3c.attribute.notBefore">
    <rng:optional>
      <rng:attribute name="notBefore">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the earliest possible date for the event in
	  standard form, e.g. yyyy-mm-dd.</a:documentation>
        <choice>
          <data type="date"/>
          <data type="gYear"/>
          <data type="gMonth"/>
          <data type="gDay"/>
          <data type="gYearMonth"/>
          <data type="gMonthDay"/>
          <data type="time"/>
          <data type="dateTime"/>
        </choice>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.datable.w3c.attribute.notAfter">
    <rng:optional>
      <rng:attribute name="notAfter">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the latest possible date for the event in
	  standard form, e.g. yyyy-mm-dd.</a:documentation>
        <choice>
          <data type="date"/>
          <data type="gYear"/>
          <data type="gMonth"/>
          <data type="gDay"/>
          <data type="gYearMonth"/>
          <data type="gMonthDay"/>
          <data type="time"/>
          <data type="dateTime"/>
        </choice>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.datable.w3c.attribute.from">
    <rng:optional>
      <rng:attribute name="from">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the starting point of the period in standard form, e.g. yyyy-mm-dd.</a:documentation>
        <choice>
          <data type="date"/>
          <data type="gYear"/>
          <data type="gMonth"/>
          <data type="gDay"/>
          <data type="gYearMonth"/>
          <data type="gMonthDay"/>
          <data type="time"/>
          <data type="dateTime"/>
        </choice>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.datable.w3c.attribute.to">
    <rng:optional>
      <rng:attribute name="to">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the ending point of the period in standard
	  form, e.g. yyyy-mm-dd.</a:documentation>
        <choice>
          <data type="date"/>
          <data type="gYear"/>
          <data type="gMonth"/>
          <data type="gDay"/>
          <data type="gYearMonth"/>
          <data type="gMonthDay"/>
          <data type="time"/>
          <data type="dateTime"/>
        </choice>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.datable.attributes">
    <ref name="att.datable.w3c.attributes"/>
    <empty/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.declarable.attributes">
    <ref name="att.declarable.attribute.default"/>
    <empty/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.declarable.attribute.default">
    <rng:optional>
      <rng:attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="default" a:defaultValue="false">
        <a:documentation>indicates whether or not this element is selected by default when
its parent is selected.</a:documentation>
        <rng:choice>
          <rng:value>true</rng:value>
          <a:documentation>This element is selected if its parent is selected</a:documentation>
          <rng:value>false</rng:value>
          <a:documentation>This element can only be selected explicitly, unless it is the
only one of its kind, in which case it is selected if its parent is selected.</a:documentation>
        </rng:choice>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.declaring.attributes">
    <ref name="att.declaring.attribute.decls"/>
    <empty/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.declaring.attribute.decls">
    <rng:optional>
      <rng:attribute name="decls">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">identifies one or more declarable elements within the
header, which are understood to apply to the element bearing this
attribute and its content.</a:documentation>
        <rng:list>
          <rng:oneOrMore>
            <data type="anyURI"/>
          </rng:oneOrMore>
        </rng:list>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.divLike.attributes">
    <ref name="att.divLike.attribute.org"/>
    <ref name="att.divLike.attribute.sample"/>
    <ref name="att.divLike.attribute.part"/>
    <empty/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.divLike.attribute.org">
    <rng:optional>
      <rng:attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="org" a:defaultValue="uniform">
        <a:documentation>(organization) specifies how the content of the division is organized.</a:documentation>
        <rng:choice>
          <rng:value>composite</rng:value>
          <a:documentation>composite content: i.e. no claim is made about the
		  sequence in which the immediate contents of this division
		  are to be processed, or their inter-relationships.</a:documentation>
          <rng:value>uniform</rng:value>
          <a:documentation>uniform content: i.e. the immediate contents of this
		  element are regarded as forming a logical unit, to be
		  processed in sequence.</a:documentation>
        </rng:choice>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.divLike.attribute.sample">
    <rng:optional>
      <rng:attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="sample" a:defaultValue="complete">
        <a:documentation>indicates whether this division is a sample of the
		original source and if so, from which part.</a:documentation>
        <rng:choice>
          <rng:value>initial</rng:value>
          <a:documentation>division lacks material present at end in source.</a:documentation>
          <rng:value>medial</rng:value>
          <a:documentation>division lacks material at start and end.</a:documentation>
          <rng:value>final</rng:value>
          <a:documentation>division lacks material at start.</a:documentation>
          <rng:value>unknown</rng:value>
          <a:documentation>position of sampled material within original unknown.</a:documentation>
          <rng:value>complete</rng:value>
          <a:documentation>division is not a sample.</a:documentation>
        </rng:choice>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.divLike.attribute.part">
    <rng:optional>
      <rng:attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="part" a:defaultValue="N">
        <a:documentation>specifies whether or not the division is fragmented by
		some other structural element, for example a speech which is
		divided between two or more verse stanzas.</a:documentation>
        <rng:choice>
          <rng:value>Y</rng:value>
          <a:documentation>(yes) the division is incomplete in some respect</a:documentation>
          <rng:value>N</rng:value>
          <a:documentation>(no) either the division is complete, or no claim is made as to its completeness.</a:documentation>
          <rng:value>I</rng:value>
          <a:documentation>(initial) the initial part of an incomplete division</a:documentation>
          <rng:value>M</rng:value>
          <a:documentation>(medial) a medial part of an incomplete division</a:documentation>
          <rng:value>F</rng:value>
          <a:documentation>(final) the final part of an incomplete division</a:documentation>
        </rng:choice>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.duration.w3c.attributes">
    <ref name="att.duration.w3c.attribute.dur"/>
    <empty/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.duration.w3c.attribute.dur">
    <rng:optional>
      <rng:attribute name="dur">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(duration) indicates the length of this element in time.</a:documentation>
        <data type="duration"/>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.editLike.attributes">
    <ref name="att.dimensions.attributes"/>
    <ref name="att.editLike.attribute.cert"/>
    <ref name="att.editLike.attribute.resp"/>
    <ref name="att.editLike.attribute.evidence"/>
    <ref name="att.editLike.attribute.source"/>
    <empty/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.editLike.attribute.cert">
    <rng:optional>
      <rng:attribute name="cert">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(certainty) signifies the degree of certainty associated with the
	intervention or interpretation.</a:documentation>
        <choice>
          <value>high</value>
          <value>medium</value>
          <value>low</value>
          <value>unknown</value>
        </choice>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.editLike.attribute.resp">
    <rng:optional>
      <rng:attribute name="resp">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(responsible party) indicates the agency responsible for the
	intervention or interpretation, for example an editor or transcriber.</a:documentation>
        <rng:list>
          <rng:oneOrMore>
            <data type="anyURI"/>
          </rng:oneOrMore>
        </rng:list>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.editLike.attribute.evidence">
    <rng:optional>
      <rng:attribute name="evidence">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the nature of the evidence supporting the reliability or
  accuracy of the intervention or interpretation.
Suggested values include: 1] internal; 2] external; 3] conjecture</a:documentation>
        <rng:choice>
          <rng:value>internal</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">there is internal evidence to support the intervention.</a:documentation>
          <rng:value>external</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">there is external evidence to support the intervention.</a:documentation>
          <rng:value>conjecture</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">the intervention or interpretation has been made by
	    the editor, cataloguer, or scholar on the basis of their
	    expertise.</a:documentation>
          <data type="Name"/>
        </rng:choice>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.editLike.attribute.source">
    <rng:optional>
      <rng:attribute name="source">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a list of one or more pointers indicating the
      sources which support the given reading.</a:documentation>
        <rng:list>
          <rng:oneOrMore>
            <data type="anyURI"/>
          </rng:oneOrMore>
        </rng:list>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.global.attributes">
    <ref name="att.global.attribute.xmlid"/>
    <ref name="att.global.attribute.n"/>
    <ref name="att.global.attribute.xmllang"/>
    <ref name="att.global.attribute.rend"/>
    <ref name="att.global.attribute.rendition"/>
    <ref name="att.global.attribute.xmlbase"/>
    <empty/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.global.attribute.xmlid">
    <rng:optional>
      <rng:attribute name="xml:id">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(identifier) provides a unique identifier for the element bearing the
      attribute.</a:documentation>
        <data type="ID"/>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.global.attribute.n">
    <rng:optional>
      <rng:attribute name="n">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(number) gives a number (or other label) for an element, which is
      not necessarily unique within the document.</a:documentation>
        <rng:list>
          <rng:oneOrMore>
            <data type="token">
              <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
            </data>
          </rng:oneOrMore>
        </rng:list>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.global.attribute.xmllang">
    <rng:optional>
      <rng:attribute name="xml:lang">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(language) indicates the language of the element content using a
      tag generated according to BCP 47</a:documentation>
        <data type="language"/>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.global.attribute.rend">
    <rng:optional>
      <rng:attribute name="rend">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(rendition) indicates how the element in question was rendered or
	presented in the source text.</a:documentation>
        <rng:list>
          <rng:oneOrMore>
            <data type="token">
              <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
            </data>
          </rng:oneOrMore>
        </rng:list>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.global.attribute.rendition">
    <rng:optional>
      <rng:attribute name="rendition">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">points to a description of the rendering  or
	presentation used for this element in the source text.</a:documentation>
        <rng:list>
          <rng:oneOrMore>
            <data type="anyURI"/>
          </rng:oneOrMore>
        </rng:list>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.global.attribute.xmlbase">
    <rng:optional>
      <rng:attribute name="xml:base">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">provides a base URI reference with which applications can
      resolve relative URI references into absolute URI
      references.</a:documentation>
        <data type="anyURI"/>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.handFeatures.attributes">
    <ref name="att.handFeatures.attribute.scribe"/>
    <ref name="att.handFeatures.attribute.script"/>
    <ref name="att.handFeatures.attribute.medium"/>
    <ref name="att.handFeatures.attribute.scope"/>
    <empty/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.handFeatures.attribute.scribe">
    <rng:optional>
      <rng:attribute name="scribe">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">gives a standard name or other identifier for the scribe
believed to be responsible for this hand.</a:documentation>
        <data type="Name"/>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.handFeatures.attribute.script">
    <rng:optional>
      <rng:attribute name="script">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">characterizes the particular script or writing style used by
this hand, for example secretary, copperplate, Chancery, Italian, etc.</a:documentation>
        <rng:list>
          <rng:oneOrMore>
            <data type="Name"/>
          </rng:oneOrMore>
        </rng:list>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.handFeatures.attribute.medium">
    <rng:optional>
      <rng:attribute name="medium">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">describes the tint or type of ink, e.g. brown, or other
writing medium, e.g. pencil</a:documentation>
        <data type="Name"/>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.handFeatures.attribute.scope">
    <rng:optional>
      <rng:attribute name="scope">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies how widely this  hand is used in the manuscript.</a:documentation>
        <rng:choice>
          <rng:value>sole</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">only this hand is used throughout the manuscript</a:documentation>
          <rng:value>major</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">this hand is used through most of the manuscript</a:documentation>
          <rng:value>minor</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">this hand is used occasionally in the manuscript</a:documentation>
        </rng:choice>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.internetMedia.attributes">
    <ref name="att.internetMedia.attribute.mimeType"/>
    <empty/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.internetMedia.attribute.mimeType">
    <rng:optional>
      <rng:attribute name="mimeType">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(MIME media type) specifies the applicable multimedia internet mail extension (MIME) media type</a:documentation>
        <data type="token">
          <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
        </data>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.measurement.attributes">
    <ref name="att.measurement.attribute.unit"/>
    <ref name="att.measurement.attribute.quantity"/>
    <ref name="att.measurement.attribute.commodity"/>
    <empty/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.measurement.attribute.unit">
    <rng:optional>
      <rng:attribute name="unit">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the units used for the measurement, usually
      using the standard symbol for the desired units.
Suggested values include: 1] m (metre); 2] kg (kilogram); 3] s (second); 4] Hz (hertz); 5] Pa (pascal); 6] &#x2126; (ohm); 7] L (litre); 8] t (tonne); 9] ha (hectare); 10] &#x212B; (&#xE5;ngstr&#xF6;m); 11] mL (millilitre); 12] cm (centimetre); 13] dB (decibel); 14] kbit (kilobit); 15] Kibit (kibibit); 16] kB (kilobyte); 17] KiB (kibibyte); 18] MB (megabyte); 19] MiB (mebibyte)</a:documentation>
        <rng:choice>
          <rng:value>m</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(metre) SI base unit of length</a:documentation>
          <rng:value>kg</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(kilogram) SI base unit of mass</a:documentation>
          <rng:value>s</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(second) SI base unit of time</a:documentation>
          <rng:value>Hz</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(hertz) SI unit of frequency</a:documentation>
          <rng:value>Pa</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(pascal) SI unit of pressure or stress</a:documentation>
          <rng:value>&#x2126;</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(ohm) SI unit of electric resistance</a:documentation>
          <rng:value>L</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(litre) 1 dm&#xB3;</a:documentation>
          <rng:value>t</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(tonne) 10&#xB3; kg</a:documentation>
          <rng:value>ha</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(hectare) 1 hm&#xB2;</a:documentation>
          <rng:value>&#x212B;</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(&#xE5;ngstr&#xF6;m) 10&#x207B;&#xB9;&#x2070; m</a:documentation>
          <rng:value>mL</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(millilitre) </a:documentation>
          <rng:value>cm</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(centimetre) </a:documentation>
          <rng:value>dB</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(decibel) see remarks, below</a:documentation>
          <rng:value>kbit</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(kilobit) 10&#xB3; or 1000 bits</a:documentation>
          <rng:value>Kibit</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(kibibit) 2&#xB9;&#x2070; or 1024 bits</a:documentation>
          <rng:value>kB</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(kilobyte) 10&#xB3; or 1000 bytes</a:documentation>
          <rng:value>KiB</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(kibibyte) 2&#xB9;&#x2070; or 1024 bytes</a:documentation>
          <rng:value>MB</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(megabyte) 10&#x2076; or 1&#x202F;000&#x202F;000 bytes</a:documentation>
          <rng:value>MiB</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(mebibyte) 2&#xB2;&#x2070; or 1&#x202F;048&#x202F;576 bytes</a:documentation>
          <data type="Name"/>
        </rng:choice>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.measurement.attribute.quantity">
    <rng:optional>
      <rng:attribute name="quantity">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the number of the specified units that
      comprise the measurement</a:documentation>
        <choice>
          <data type="double"/>
          <data type="decimal"/>
        </choice>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.measurement.attribute.commodity">
    <rng:optional>
      <rng:attribute name="commodity">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the substance that is being measured</a:documentation>
        <rng:list>
          <rng:oneOrMore>
            <data type="token">
              <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
            </data>
          </rng:oneOrMore>
        </rng:list>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.naming.attributes">
    <ref name="att.canonical.attributes"/>
    <ref name="att.naming.attribute.nymRef"/>
    <empty/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.naming.attribute.nymRef">
    <rng:optional>
      <rng:attribute name="nymRef">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(reference to the canonical name) provides a means of locating the canonical form
      (nym) of the names associated with the object
       named by
      the element bearing it.</a:documentation>
        <rng:list>
          <rng:oneOrMore>
            <data type="anyURI"/>
          </rng:oneOrMore>
        </rng:list>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.placement.attributes">
    <ref name="att.placement.attribute.place"/>
    <empty/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.placement.attribute.place">
    <rng:optional>
      <rng:attribute name="place">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">
Suggested values include: 1] below; 2] bottom; 3] margin; 4] top; 5] opposite; 6] overleaf; 7] above; 8] end; 9] inline; 10] inspace</a:documentation>
        <rng:list>
          <rng:oneOrMore>
            <rng:choice>
              <rng:value>below</rng:value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">below the line</a:documentation>
              <rng:value>bottom</rng:value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">at the foot of the page</a:documentation>
              <rng:value>margin</rng:value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">in the margin (left, right, or both)</a:documentation>
              <rng:value>top</rng:value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">at the top of the page</a:documentation>
              <rng:value>opposite</rng:value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">on the opposite, i.e. facing, page</a:documentation>
              <rng:value>overleaf</rng:value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">on the other side of the leaf</a:documentation>
              <rng:value>above</rng:value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">above the line</a:documentation>
              <rng:value>end</rng:value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">at the end of e.g. chapter or volume.</a:documentation>
              <rng:value>inline</rng:value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">within the body of the text.</a:documentation>
              <rng:value>inspace</rng:value>
              <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> in a predefined space, for example left by an earlier scribe.</a:documentation>
              <data type="Name"/>
            </rng:choice>
          </rng:oneOrMore>
        </rng:list>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.sourced.attributes">
    <ref name="att.sourced.attribute.ed"/>
    <empty/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.sourced.attribute.ed">
    <rng:optional>
      <rng:attribute name="ed">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (edition) supplies an arbitrary identifier for the source edition in which
      the associated feature (for example, a  page, column, or line
      break) occurs at this point in the text.</a:documentation>
        <rng:list>
          <rng:oneOrMore>
            <data type="anyURI"/>
          </rng:oneOrMore>
        </rng:list>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.spanning.attributes">
    <ref name="att.spanning.attribute.spanTo"/>
    <empty/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.spanning.attribute.spanTo">
    <rng:optional>
      <rng:attribute name="spanTo">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the end of a span initiated by the element
	bearing this attribute.</a:documentation>
        <data type="anyURI"/>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.transcriptional.attributes">
    <ref name="att.editLike.attributes"/>
    <ref name="att.transcriptional.attribute.hand"/>
    <ref name="att.transcriptional.attribute.status"/>
    <ref name="att.transcriptional.attribute.seq"/>
    <empty/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.transcriptional.attribute.hand">
    <rng:optional>
      <rng:attribute name="hand">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">signifies the hand of the agent which made the intervention.</a:documentation>
        <data type="anyURI"/>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.transcriptional.attribute.status">
    <rng:optional>
      <rng:attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="status" a:defaultValue="unremarkable">
        <a:documentation>indicates the effect of the intervention, for example in
      the case of a deletion, strikeouts
      which include too much or too little text, or in the case of an
      addition, an insertion which duplicates some of the text
      already present.
Sample values include: 1] duplicate; 2] duplicate-partial; 3] excessStart; 4] excessEnd; 5] shortStart; 6] shortEnd; 7] partial; 8] unremarkable</a:documentation>
        <data type="Name"/>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.transcriptional.attribute.seq">
    <rng:optional>
      <rng:attribute name="seq">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(sequence) assigns a sequence number related to the order in which
      the encoded features carrying this attribute are believed to have occurred.</a:documentation>
        <data type="nonNegativeInteger"/>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.translatable.attributes">
    <ref name="att.translatable.attribute.version"/>
    <empty/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.translatable.attribute.version">
    <rng:optional>
      <rng:attribute name="version">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the version name or number of the source from
	which the translated version was derived</a:documentation>
        <data type="token">
          <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
        </data>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.typed.attributes">
    <ref name="att.typed.attribute.type"/>
    <ref name="att.typed.attribute.subtype"/>
    <empty/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.typed.attribute.type">
    <rng:optional>
      <rng:attribute name="type">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">characterizes the element in some sense, using any convenient
 classification scheme or typology.</a:documentation>
        <data type="Name"/>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.typed.attribute.subtype">
    <rng:optional>
      <rng:attribute name="subtype">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">provides a sub-categorization of the element, if needed</a:documentation>
        <data type="Name"/>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.nameLike.agent">
    <rng:choice>
      <ref name="name"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.segLike">
    <notAllowed/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.hiLike">
    <rng:choice>
      <ref name="hi"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.emphLike">
    <rng:choice>
      <ref name="foreign"/>
      <ref name="emph"/>
      <ref name="distinct"/>
      <ref name="mentioned"/>
      <ref name="soCalled"/>
      <ref name="gloss"/>
      <ref name="term"/>
      <ref name="title"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.highlighted">
    <rng:choice>
      <ref name="model.hiLike"/>
      <ref name="model.emphLike"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.dateLike">
    <rng:choice>
      <ref name="date"/>
      <ref name="time"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.measureLike">
    <rng:choice>
      <ref name="num"/>
      <ref name="measure"/>
      <ref name="measureGrp"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.graphicLike">
    <rng:choice>
      <ref name="graphic"/>
      <ref name="binaryObject"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.pPart.editorial">
    <rng:choice>
      <ref name="choice"/>
      <ref name="abbr"/>
      <ref name="expan"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.pPart.transcriptional">
    <rng:choice>
      <ref name="sic"/>
      <ref name="corr"/>
      <ref name="reg"/>
      <ref name="orig"/>
      <ref name="add"/>
      <ref name="del"/>
      <ref name="unclear"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.pPart.edit">
    <rng:choice>
      <ref name="model.pPart.editorial"/>
      <ref name="model.pPart.transcriptional"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.ptrLike">
    <rng:choice>
      <ref name="ptr"/>
      <ref name="ref"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.global.meta">
    <rng:choice>
      <ref name="index"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.milestoneLike">
    <rng:choice>
      <ref name="milestone"/>
      <ref name="pb"/>
      <ref name="lb"/>
      <ref name="cb"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.gLike">
    <notAllowed/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.biblLike">
    <rng:choice>
      <ref name="bibl"/>
      <ref name="biblStruct"/>
      <ref name="biblFull"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.headLike">
    <rng:choice>
      <ref name="head"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.labelLike">
    <rng:choice>
      <ref name="desc"/>
      <ref name="label"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.listLike">
    <rng:choice>
      <ref name="list"/>
      <ref name="listBibl"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.noteLike">
    <rng:choice>
      <ref name="note"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.lLike">
    <rng:choice>
      <ref name="l"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.pLike">
    <rng:choice>
      <ref name="p"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.stageLike">
    <rng:choice>
      <ref name="stage"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.entryPart">
    <rng:choice>
      <ref name="superEntry"/>
      <ref name="hom"/>
      <ref name="sense"/>
      <ref name="form"/>
      <ref name="orth"/>
      <ref name="pron"/>
      <ref name="hyph"/>
      <ref name="syll"/>
      <ref name="stress"/>
      <ref name="gen"/>
      <ref name="number"/>
      <ref name="case"/>
      <ref name="per"/>
      <ref name="tns"/>
      <ref name="mood"/>
      <ref name="iType"/>
      <ref name="gramGrp"/>
      <ref name="pos"/>
      <ref name="subc"/>
      <ref name="colloc"/>
      <ref name="def"/>
      <ref name="etym"/>
      <ref name="usg"/>
      <ref name="lbl"/>
      <ref name="xr"/>
      <ref name="re"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.entryPart.top">
    <rng:choice>
      <ref name="cit"/>
      <ref name="dictScrap"/>
      <ref name="form"/>
      <ref name="gramGrp"/>
      <ref name="def"/>
      <ref name="etym"/>
      <ref name="usg"/>
      <ref name="xr"/>
      <ref name="re"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.global.edit">
    <rng:choice>
      <ref name="gap"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.divPart">
    <rng:choice>
      <ref name="model.lLike"/>
      <ref name="model.pLike"/>
      <ref name="lg"/>
      <ref name="sp"/>
      <ref name="floatingText"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.placeStateLike">
    <notAllowed/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.publicationStmtPart">
    <rng:choice>
      <ref name="address"/>
      <ref name="date"/>
      <ref name="publisher"/>
      <ref name="pubPlace"/>
      <ref name="distributor"/>
      <ref name="authority"/>
      <ref name="idno"/>
      <ref name="availability"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.glossLike">
    <rng:choice>
      <ref name="desc"/>
      <ref name="gloss"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.quoteLike">
    <rng:choice>
      <ref name="quote"/>
      <ref name="cit"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.qLike">
    <rng:choice>
      <ref name="model.quoteLike"/>
      <ref name="said"/>
      <ref name="q"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.respLike">
    <rng:choice>
      <ref name="author"/>
      <ref name="editor"/>
      <ref name="respStmt"/>
      <ref name="sponsor"/>
      <ref name="funder"/>
      <ref name="principal"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.divWrapper">
    <rng:choice>
      <ref name="meeting"/>
      <ref name="byline"/>
      <ref name="dateline"/>
      <ref name="argument"/>
      <ref name="epigraph"/>
      <ref name="docAuthor"/>
      <ref name="docDate"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.divTopPart">
    <rng:choice>
      <ref name="model.headLike"/>
      <ref name="opener"/>
      <ref name="salute"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.divTop">
    <rng:choice>
      <ref name="model.divWrapper"/>
      <ref name="model.divTopPart"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.pLike.front">
    <rng:choice>
      <ref name="head"/>
      <ref name="byline"/>
      <ref name="argument"/>
      <ref name="epigraph"/>
      <ref name="docTitle"/>
      <ref name="titlePart"/>
      <ref name="docAuthor"/>
      <ref name="docEdition"/>
      <ref name="docImprint"/>
      <ref name="docDate"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.divBottomPart">
    <rng:choice>
      <ref name="trailer"/>
      <ref name="closer"/>
      <ref name="signed"/>
      <ref name="postscript"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.divBottom">
    <rng:choice>
      <ref name="model.divWrapper"/>
      <ref name="model.divBottomPart"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.titlepagePart">
    <rng:choice>
      <ref name="graphic"/>
      <ref name="binaryObject"/>
      <ref name="byline"/>
      <ref name="epigraph"/>
      <ref name="docTitle"/>
      <ref name="titlePart"/>
      <ref name="docAuthor"/>
      <ref name="imprimatur"/>
      <ref name="docEdition"/>
      <ref name="docImprint"/>
      <ref name="docDate"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.choicePart">
    <rng:choice>
      <ref name="sic"/>
      <ref name="corr"/>
      <ref name="reg"/>
      <ref name="orig"/>
      <ref name="unclear"/>
      <ref name="abbr"/>
      <ref name="expan"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.imprintPart">
    <rng:choice>
      <ref name="publisher"/>
      <ref name="biblScope"/>
      <ref name="pubPlace"/>
      <ref name="distributor"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.catDescPart">
    <notAllowed/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.addressLike">
    <rng:choice>
      <ref name="email"/>
      <ref name="address"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.nameLike">
    <rng:choice>
      <ref name="model.nameLike.agent"/>
      <ref name="model.placeStateLike"/>
      <ref name="rs"/>
      <ref name="lang"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.global">
    <rng:choice>
      <ref name="model.global.meta"/>
      <ref name="model.milestoneLike"/>
      <ref name="model.noteLike"/>
      <ref name="model.global.edit"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.biblPart">
    <rng:choice>
      <ref name="model.respLike"/>
      <ref name="model.imprintPart"/>
      <ref name="series"/>
      <ref name="meeting"/>
      <ref name="relatedItem"/>
      <ref name="edition"/>
      <ref name="extent"/>
      <ref name="idno"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.frontPart">
    <rng:choice>
      <ref name="divGen"/>
      <ref name="titlePage"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.addrPart">
    <rng:choice>
      <ref name="model.nameLike"/>
      <ref name="addrLine"/>
      <ref name="street"/>
      <ref name="postCode"/>
      <ref name="postBox"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.pPart.data">
    <rng:choice>
      <ref name="model.dateLike"/>
      <ref name="model.measureLike"/>
      <ref name="model.addressLike"/>
      <ref name="model.nameLike"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.inter">
    <rng:choice>
      <ref name="model.biblLike"/>
      <ref name="model.labelLike"/>
      <ref name="model.listLike"/>
      <ref name="model.stageLike"/>
      <ref name="model.qLike"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.common">
    <rng:choice>
      <ref name="model.divPart"/>
      <ref name="model.inter"/>
      <ref name="model.entryLike"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.phrase">
    <rng:choice>
      <ref name="model.segLike"/>
      <ref name="model.highlighted"/>
      <ref name="model.graphicLike"/>
      <ref name="model.pPart.edit"/>
      <ref name="model.ptrLike"/>
      <ref name="model.pPart.data"/>
      <ref name="model.ptrLike.form"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.limitedPhrase">
    <rng:choice>
      <ref name="model.emphLike"/>
      <ref name="model.pPart.editorial"/>
      <ref name="model.ptrLike"/>
      <ref name="model.pPart.data"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.divLike">
    <rng:choice>
      <ref name="div"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.divGenLike">
    <rng:choice>
      <ref name="divGen"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.div1Like">
    <rng:choice>
      <ref name="div1"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.div2Like">
    <rng:choice>
      <ref name="div2"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.div3Like">
    <rng:choice>
      <ref name="div3"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.div4Like">
    <rng:choice>
      <ref name="div4"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.div5Like">
    <rng:choice>
      <ref name="div5"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.div6Like">
    <rng:choice>
      <ref name="div6"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.div7Like">
    <rng:choice>
      <ref name="div7"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.resourceLike">
    <notAllowed/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="p">
    <element name="p">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(paragraph) marks paragraphs in prose.</a:documentation>
      <rng:ref name="macro.paraContent"/>
      <ref name="att.global.attributes"/>
      <ref name="att.declaring.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="foreign">
    <element name="foreign">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(foreign) identifies a word or phrase as belonging to some language other
        than that of the surrounding text. </a:documentation>
      <rng:ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="emph">
    <element name="emph">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(emphasized) marks words or phrases which are stressed or emphasized for
        linguistic or rhetorical effect.</a:documentation>
      <rng:ref name="macro.paraContent"/>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="hi">
    <element name="hi">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(highlighted) marks a word or phrase as graphically distinct from the
        surrounding text, for reasons concerning which no claim is
        made. </a:documentation>
      <rng:ref name="macro.paraContent"/>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="distinct">
    <element name="distinct">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">identifies any word or phrase which is regarded as linguistically distinct, for example as
        archaic, technical, dialectal, non-preferred, etc., or as forming part of a sublanguage. </a:documentation>
      <rng:ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <rng:optional>
        <rng:attribute name="type">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the sublanguage or register to which the word or phrase is being
                assigned</a:documentation>
          <data type="Name"/>
        </rng:attribute>
      </rng:optional>
      <rng:optional>
        <rng:attribute name="time">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies how the phrase is distinct diachronically</a:documentation>
          <data type="anyURI"/>
        </rng:attribute>
      </rng:optional>
      <rng:optional>
        <rng:attribute name="space">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies how the phrase is distinct diatopically</a:documentation>
          <data type="anyURI"/>
        </rng:attribute>
      </rng:optional>
      <rng:optional>
        <rng:attribute name="social">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies how the phrase is distinct diastatically</a:documentation>
          <data type="anyURI"/>
        </rng:attribute>
      </rng:optional>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="said">
    <element name="said">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(speech or thought) indicates passages thought or spoken aloud, whether
        explicitly indicated in the source or not, whether directly
        or indirectly reported, whether by real people or
        fictional characters.</a:documentation>
      <rng:ref name="macro.specialPara"/>
      <ref name="att.global.attributes"/>
      <ref name="att.ascribed.attributes"/>
      <rng:optional>
        <rng:attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="aloud" a:defaultValue="unknown">
          <a:documentation>may be used to indicate whether the quoted matter
                is regarded as having been vocalized or signed.</a:documentation>
          <choice>
            <data type="boolean"/>
            <value>unknown</value>
            <value>inapplicable</value>
          </choice>
        </rng:attribute>
      </rng:optional>
      <rng:optional>
        <rng:attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="direct" a:defaultValue="true">
          <a:documentation>may be used to indicate whether the quoted matter is regarded
                as direct or indirect speech.</a:documentation>
          <choice>
            <data type="boolean"/>
            <value>unknown</value>
            <value>inapplicable</value>
          </choice>
        </rng:attribute>
      </rng:optional>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="quote">
    <element name="quote">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(quotation) contains a phrase or passage attributed by the narrator or author to some agency external
        to the text.</a:documentation>
      <rng:ref name="macro.specialPara"/>
      <ref name="att.global.attributes"/>
      <ref name="att.typed.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="q">
    <element name="q">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(separated from the surrounding text with quotation marks) contains material which is marked as (ostensibly) being somehow different than the
    surrounding text, for any one of a variety of reasons including, but not limited to: direct
    speech or thought, technical terms or jargon, authorial distance, quotations from elsewhere, and
    passages that are mentioned but not used.</a:documentation>
      <rng:ref name="macro.specialPara"/>
      <ref name="att.global.attributes"/>
      <ref name="att.ascribed.attributes"/>
      <rng:optional>
        <rng:attribute name="type">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">may be used to indicate whether the offset passage is spoken or thought, or to
        characterize it more finely.
Suggested values include: 1] spoken; 2] thought; 3] written; 4] soCalled; 5] foreign (foreign words); 6] distinct (linguistically distinct); 7] term (technical term); 8] emph (rhetorically emphasized); 9] mentioned</a:documentation>
          <rng:choice>
            <rng:value>spoken</rng:value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">representation of speech</a:documentation>
            <rng:value>thought</rng:value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">representation of thought, e.g. internal monologue</a:documentation>
            <rng:value>written</rng:value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">quotation from a written source</a:documentation>
            <rng:value>soCalled</rng:value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">authorial distance</a:documentation>
            <rng:value>foreign</rng:value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(foreign words) </a:documentation>
            <rng:value>distinct</rng:value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(linguistically distinct) </a:documentation>
            <rng:value>term</rng:value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(technical term) </a:documentation>
            <rng:value>emph</rng:value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(rhetorically emphasized) </a:documentation>
            <rng:value>mentioned</rng:value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">refering to itself, not its normal referant</a:documentation>
            <data type="Name"/>
          </rng:choice>
        </rng:attribute>
      </rng:optional>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="cit">
    <element name="cit">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(cited quotation) contains a quotation from some other document, together with a
        bibliographic reference to its source.  In a dictionary it may
        contain an example text with at least one occurrence of the word
        form, used in the sense being described, or a translation of the
        headword, or an example. </a:documentation>
      <oneOrMore>
        <choice>
          <ref name="model.qLike"/>
          <ref name="model.biblLike"/>
          <ref name="model.ptrLike"/>
          <ref name="model.global"/>
          <ref name="model.entryPart"/>
        </choice>
      </oneOrMore>
      <ref name="att.global.attributes"/>
      <ref name="att.typed.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="mentioned">
    <element name="mentioned">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">marks words or phrases mentioned, not used.</a:documentation>
      <rng:ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="soCalled">
    <element name="soCalled">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a word or phrase for which the author or narrator
        indicates a disclaiming of responsibility, for example by the use
        of scare quotes or italics.</a:documentation>
      <rng:ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="desc">
    <element name="desc">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(description) contains a brief description of the object documented by its
    parent element, including its intended usage, purpose,
    or application where this is appropriate.</a:documentation>
      <rng:ref name="macro.limitedContent"/>
      <ref name="att.global.attributes"/>
      <ref name="att.translatable.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="gloss">
    <element name="gloss">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">identifies a phrase or word used to provide a gloss or
        definition for some other word or phrase.</a:documentation>
      <rng:ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <ref name="att.declaring.attributes"/>
      <ref name="att.translatable.attributes"/>
      <ref name="att.typed.attributes"/>
      <rng:choice>
        <rng:optional>
          <rng:attribute name="target">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">identifies the associated term element by an
                absolute or relative URI reference</a:documentation>
            <data type="anyURI"/>
          </rng:attribute>
        </rng:optional>
        <rng:optional>
          <rng:attribute name="cRef">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(canonical reference) identifies the associated term element using a canonical
                reference from a scheme defined in a refsDecl element
                in the TEI header</a:documentation>
            <data type="anyURI"/>
          </rng:attribute>
        </rng:optional>
      </rng:choice>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="term">
    <element name="term">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a single-word, multi-word, or symbolic designation which is regarded as a
        technical term.</a:documentation>
      <rng:ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <ref name="att.declaring.attributes"/>
      <ref name="att.typed.attributes"/>
      <ref name="att.canonical.attributes"/>
      <rng:optional>
        <rng:attribute name="sortKey">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">supplies the sort key for this term in an index.</a:documentation>
          <data type="token">
            <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
          </data>
        </rng:attribute>
      </rng:optional>
      <rng:choice>
        <rng:optional>
          <rng:attribute name="target">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">identifies the associated gloss element by an absolute or relative
                    URI reference</a:documentation>
            <data type="anyURI"/>
          </rng:attribute>
        </rng:optional>
        <rng:optional>
          <rng:attribute name="cRef">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">identifies the associated gloss element using a canonical reference
                    from a scheme defined in a refsDecl element in the TEI header</a:documentation>
            <data type="anyURI"/>
          </rng:attribute>
        </rng:optional>
      </rng:choice>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="sic">
    <element name="sic">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(latin for thus or so) contains text reproduced although apparently incorrect or inaccurate.</a:documentation>
      <rng:ref name="macro.paraContent"/>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="corr">
    <element name="corr">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(correction) contains the correct form of a passage apparently erroneous in the copy text.</a:documentation>
      <rng:ref name="macro.paraContent"/>
      <ref name="att.global.attributes"/>
      <ref name="att.editLike.attributes"/>
      <ref name="att.typed.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="choice">
    <element name="choice">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">groups a number of alternative encodings for the same point in
        a text.</a:documentation>
      <zeroOrMore>
        <choice>
          <ref name="model.choicePart"/>
          <ref name="choice"/>
        </choice>
      </zeroOrMore>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="reg">
    <element name="reg">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(regularization) contains a reading which has been regularized or normalized in some sense.</a:documentation>
      <rng:ref name="macro.paraContent"/>
      <ref name="att.global.attributes"/>
      <ref name="att.editLike.attributes"/>
      <ref name="att.typed.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="orig">
    <element name="orig">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(original form) contains a reading which is marked as following the original, rather than being normalized
        or corrected.</a:documentation>
      <rng:ref name="macro.paraContent"/>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="gap">
    <element name="gap">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(gap) indicates a point where material has been omitted in a
    transcription, whether for editorial reasons described in the TEI
    header, as part of sampling practice, or because the material is
    illegible, invisible, or inaudible.</a:documentation>
      <zeroOrMore>
        <ref name="model.glossLike"/>
      </zeroOrMore>
      <ref name="att.global.attributes"/>
      <ref name="att.editLike.attributes"/>
      <rng:optional>
        <rng:attribute name="reason">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">gives the reason for omission. Sample values include
        sampling, inaudible,
        irrelevant, cancelled.</a:documentation>
          <rng:list>
            <rng:oneOrMore>
              <data type="token">
                <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
              </data>
            </rng:oneOrMore>
          </rng:list>
        </rng:attribute>
      </rng:optional>
      <rng:optional>
        <rng:attribute name="hand">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">in the case of text omitted from the transcription because of
        deliberate deletion by an identifiable hand, signifies the hand which
        made the deletion.</a:documentation>
          <data type="anyURI"/>
        </rng:attribute>
      </rng:optional>
      <rng:optional>
        <rng:attribute name="agent">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">In the case of text omitted because of damage, categorizes the cause of the damage, if it can be identified.
Sample values include: 1] rubbing; 2] mildew; 3] smoke</a:documentation>
          <data type="Name"/>
        </rng:attribute>
      </rng:optional>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="add">
    <element name="add">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(addition) contains letters, words, or phrases inserted in the text by an
        author, scribe, annotator, or corrector.</a:documentation>
      <rng:ref name="macro.paraContent"/>
      <ref name="att.global.attributes"/>
      <ref name="att.transcriptional.attributes"/>
      <ref name="att.placement.attributes"/>
      <ref name="att.typed.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="del">
    <element name="del">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(deletion) contains a letter, word, or passage deleted, marked as deleted, or otherwise indicated as
    superfluous or spurious in the copy text by an author, scribe, annotator, or corrector.</a:documentation>
      <rng:ref name="macro.paraContent"/>
      <ref name="att.global.attributes"/>
      <ref name="att.transcriptional.attributes"/>
      <ref name="att.typed.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="unclear">
    <element name="unclear">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a word, phrase, or passage which cannot be transcribed with certainty because it
        is illegible or inaudible in the source.</a:documentation>
      <rng:ref name="macro.paraContent"/>
      <ref name="att.global.attributes"/>
      <ref name="att.editLike.attributes"/>
      <rng:optional>
        <rng:attribute name="reason">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates why the material is hard to transcribe.</a:documentation>
          <rng:list>
            <rng:oneOrMore>
              <data type="token">
                <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
              </data>
            </rng:oneOrMore>
          </rng:list>
        </rng:attribute>
      </rng:optional>
      <rng:optional>
        <rng:attribute name="hand">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Where the difficulty in transcription arises from action (partial deletion, etc.)
                assignable to an identifiable hand, signifies the hand responsible for the action.</a:documentation>
          <data type="anyURI"/>
        </rng:attribute>
      </rng:optional>
      <rng:optional>
        <rng:attribute name="agent">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Where the difficulty in transcription arises from damage, categorizes the cause of
                the damage, if it can be identified.
Sample values include: 1] rubbing; 2] mildew; 3] smoke</a:documentation>
          <data type="Name"/>
        </rng:attribute>
      </rng:optional>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="name">
    <element name="name">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(name, proper noun) contains a proper noun or noun phrase.</a:documentation>
      <rng:ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <ref name="att.naming.attributes"/>
      <ref name="att.typed.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="rs">
    <element name="rs">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(referencing string) contains a general purpose name or referring string.</a:documentation>
      <rng:ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <ref name="att.naming.attributes"/>
      <rng:optional>
        <rng:attribute name="type">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates more specifically the object referred to by the referencing string.
                Values might include person, place, ship,
                    element etc.</a:documentation>
          <data type="Name"/>
        </rng:attribute>
      </rng:optional>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="email">
    <element name="email">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(electronic mail address) contains an e-mail address identifying a location to which
        e-mail messages can be delivered.
    </a:documentation>
      <rng:ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="address">
    <element name="address">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a postal  address, for example of a
        publisher, an organization, or an individual.</a:documentation>
      <group>
        <zeroOrMore>
          <ref name="model.global"/>
        </zeroOrMore>
        <oneOrMore>
          <group>
            <ref name="model.addrPart"/>
          </group>
          <zeroOrMore>
            <ref name="model.global"/>
          </zeroOrMore>
        </oneOrMore>
      </group>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="addrLine">
    <element name="addrLine">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(address line) contains one line of a postal address.</a:documentation>
      <rng:ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="street">
    <element name="street">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">a full street address including any name or number identifying a
        building as well as the name of the street or route on which it is
        located.</a:documentation>
      <rng:ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="postCode">
    <element name="postCode">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(postal code) contains a numerical or alphanumeric code used as part of a postal address to simplify
        sorting or delivery of mail. </a:documentation>
      <rng:text/>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="postBox">
    <element name="postBox">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(postal box or post office box) contains a number or other identifier for some postal delivery
        point other than a street address. </a:documentation>
      <rng:text/>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="num">
    <element name="num">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(number) contains a number, written in any form.</a:documentation>
      <rng:ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <rng:optional>
        <rng:attribute name="type">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the type of numeric value.
Suggested values include: 1] cardinal; 2] ordinal; 3] fraction; 4] percentage</a:documentation>
          <rng:choice>
            <rng:value>cardinal</rng:value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">absolute number, e.g. 21, 21.5</a:documentation>
            <rng:value>ordinal</rng:value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">ordinal number, e.g. 21st</a:documentation>
            <rng:value>fraction</rng:value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">fraction, e.g. one half or three-quarters</a:documentation>
            <rng:value>percentage</rng:value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">a percentage</a:documentation>
            <data type="Name"/>
          </rng:choice>
        </rng:attribute>
      </rng:optional>
      <rng:optional>
        <rng:attribute name="value">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">supplies the value of the number in standard form.</a:documentation>
          <choice>
            <data type="double"/>
            <data type="decimal"/>
          </choice>
        </rng:attribute>
      </rng:optional>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="measure">
    <element name="measure">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a word or phrase referring to some quantity of an object or commodity, usually
        comprising a number, a unit, and a commodity name.</a:documentation>
      <rng:ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <ref name="att.measurement.attributes"/>
      <rng:optional>
        <rng:attribute name="type">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the type of measurement in any convenient typology.</a:documentation>
          <data type="Name"/>
        </rng:attribute>
      </rng:optional>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="measureGrp">
    <element name="measureGrp">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(measure group) contains a group of dimensional specifications which relate to the same object, for example
    the height and width of a manuscript page.</a:documentation>
      <zeroOrMore>
        <choice>
          <text/>
          <ref name="model.gLike"/>
          <ref name="model.measureLike"/>
        </choice>
      </zeroOrMore>
      <ref name="att.global.attributes"/>
      <ref name="att.measurement.attributes"/>
      <ref name="att.typed.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="date">
    <element name="date">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a date in any format.</a:documentation>
      <zeroOrMore>
        <choice>
          <text/>
          <ref name="model.gLike"/>
          <ref name="model.phrase"/>
          <ref name="model.global"/>
        </choice>
      </zeroOrMore>
      <ref name="att.global.attributes"/>
      <ref name="att.datable.attributes"/>
      <ref name="att.editLike.attributes"/>
      <ref name="att.typed.attributes"/>
      <rng:optional>
        <rng:attribute name="calendar">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the system or calendar to which the date
                represented by the content of this element belongs.
Suggested values include: 1] Gregorian; 2] Julian; 3] Islamic; 4] Hebrew; 5] Revolutionary; 6] Iranian; 7] Coptic; 8] Chinese</a:documentation>
          <rng:choice>
            <rng:value>Gregorian</rng:value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Gregorian calendar</a:documentation>
            <rng:value>Julian</rng:value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Julian calendar</a:documentation>
            <rng:value>Islamic</rng:value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Islamic or Muslim (hijri) lunar calendar</a:documentation>
            <rng:value>Hebrew</rng:value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Hebrew or Jewish lunisolar calendar</a:documentation>
            <rng:value>Revolutionary</rng:value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">French Revolutionary calendar</a:documentation>
            <rng:value>Iranian</rng:value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Iranian or Persian (Jalaali) solar calendar</a:documentation>
            <rng:value>Coptic</rng:value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Coptic or Alexandrian calendar</a:documentation>
            <rng:value>Chinese</rng:value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Chinese lunisolar calendar</a:documentation>
            <data type="Name"/>
          </rng:choice>
        </rng:attribute>
      </rng:optional>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="time">
    <element name="time">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a phrase defining a time of day in any format.</a:documentation>
      <zeroOrMore>
        <choice>
          <text/>
          <ref name="model.gLike"/>
          <ref name="model.phrase"/>
          <ref name="model.global"/>
        </choice>
      </zeroOrMore>
      <ref name="att.global.attributes"/>
      <ref name="att.datable.attributes"/>
      <ref name="att.editLike.attributes"/>
      <ref name="att.typed.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="abbr">
    <element name="abbr">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(abbreviation) contains an abbreviation of any sort.</a:documentation>
      <rng:ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <rng:optional>
        <rng:attribute name="type">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">allows the encoder to classify the abbreviation according to some convenient
                typology.
Sample values include: 1] suspension; 2] contraction; 3] brevigraph; 4] superscription; 5] acronym; 6] title; 7] organization; 8] geographic</a:documentation>
          <data type="Name"/>
        </rng:attribute>
      </rng:optional>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="expan">
    <element name="expan">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(expansion) contains the expansion of an abbreviation.</a:documentation>
      <rng:ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <ref name="att.editLike.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="ptr">
    <element name="ptr">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(pointer) defines a pointer to another location.</a:documentation>
      <rng:empty/>
      <ref name="att.global.attributes"/>
      <ref name="att.declaring.attributes"/>
      <rng:choice>
        <rng:attribute name="target">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the destination of the pointer by supplying one or more URI References</a:documentation>
          <rng:list>
            <rng:oneOrMore>
              <data type="anyURI"/>
            </rng:oneOrMore>
          </rng:list>
        </rng:attribute>
        <rng:attribute name="cRef">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(canonical reference) specifies the destination of the pointer by supplying a canonical reference from a
                scheme defined in a refsDecl element in the TEI header</a:documentation>
          <rng:list>
            <rng:oneOrMore>
              <data type="token">
                <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
              </data>
            </rng:oneOrMore>
          </rng:list>
        </rng:attribute>
      </rng:choice>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="ref">
    <element name="ref">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(reference) defines a reference to another location, possibly modified by additional text or comment.</a:documentation>
      <rng:ref name="macro.paraContent"/>
      <ref name="att.global.attributes"/>
      <ref name="att.declaring.attributes"/>
      <rng:choice>
        <rng:optional>
          <rng:attribute name="target">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the destination of the reference by supplying one or more URI References</a:documentation>
            <rng:list>
              <rng:oneOrMore>
                <data type="anyURI"/>
              </rng:oneOrMore>
            </rng:list>
          </rng:attribute>
        </rng:optional>
        <rng:optional>
          <rng:attribute name="cRef">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(canonical reference) specifies the destination of the reference by supplying a canonical reference from
                a scheme defined in a refsDecl element in the TEI header</a:documentation>
            <rng:list>
              <rng:oneOrMore>
                <data type="token">
                  <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
                </data>
              </rng:oneOrMore>
            </rng:list>
          </rng:attribute>
        </rng:optional>
      </rng:choice>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="list">
    <element name="list">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(list) contains any sequence of items organized as a list.</a:documentation>
      <group>
        <zeroOrMore>
          <choice>
            <group>
              <ref name="model.divTop"/>
            </group>
            <group>
              <ref name="model.global"/>
            </group>
          </choice>
        </zeroOrMore>
        <choice>
          <oneOrMore>
            <ref name="item"/>
            <zeroOrMore>
              <ref name="model.global"/>
            </zeroOrMore>
          </oneOrMore>
          <group>
            <optional>
              <ref name="headLabel"/>
            </optional>
            <optional>
              <ref name="headItem"/>
            </optional>
            <oneOrMore>
              <ref name="label"/>
              <zeroOrMore>
                <ref name="model.global"/>
              </zeroOrMore>
              <ref name="item"/>
              <zeroOrMore>
                <ref name="model.global"/>
              </zeroOrMore>
            </oneOrMore>
          </group>
        </choice>
        <zeroOrMore>
          <group>
            <group>
              <ref name="model.divBottom"/>
            </group>
            <zeroOrMore>
              <ref name="model.global"/>
            </zeroOrMore>
          </group>
        </zeroOrMore>
      </group>
      <ref name="att.global.attributes"/>
      <rng:optional>
        <rng:attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="type" a:defaultValue="simple">
          <a:documentation>describes the form of the list.
Suggested values include: 1] ordered; 2] bulleted; 3] simple; 4] gloss</a:documentation>
          <rng:choice>
            <rng:value>ordered</rng:value>
            <a:documentation>list items are numbered or lettered. </a:documentation>
            <rng:value>bulleted</rng:value>
            <a:documentation>list items are marked with a bullet or other typographic device. </a:documentation>
            <rng:value>simple</rng:value>
            <a:documentation>list items are not numbered or bulleted. </a:documentation>
            <rng:value>gloss</rng:value>
            <a:documentation>each list item glosses some term or concept, which is given by a label element
            preceding the list item.</a:documentation>
            <data type="Name"/>
          </rng:choice>
        </rng:attribute>
      </rng:optional>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="item">
    <element name="item">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains one
        component of a list.</a:documentation>
      <rng:ref name="macro.specialPara"/>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="label">
    <element name="label">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains the label associated with an item in a list; in glossaries, marks the term being
        defined.</a:documentation>
      <rng:ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="head">
    <element name="head">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(heading) contains any type of heading, for example the title of a section,
        or the heading of a list, glossary, manuscript description, etc.</a:documentation>
      <rng:ref name="macro.paraContent"/>
      <ref name="att.global.attributes"/>
      <ref name="att.typed.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="headLabel">
    <element name="headLabel">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(heading for list labels) contains the heading for the label or term column in a
        glossary list or similar structured list.</a:documentation>
      <rng:ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="headItem">
    <element name="headItem">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(heading for list items) contains the heading for the item or gloss column in a glossary list or similar structured
        list.</a:documentation>
      <rng:ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="note">
    <element name="note">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a note or annotation.</a:documentation>
      <rng:ref name="macro.specialPara"/>
      <ref name="att.global.attributes"/>
      <ref name="att.placement.attributes"/>
      <rng:optional>
        <rng:attribute name="type">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">describes the type of note.</a:documentation>
          <data type="Name"/>
        </rng:attribute>
      </rng:optional>
      <rng:optional>
        <rng:attribute name="resp">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> (responsible party) indicates who is responsible for the annotation: author, editor, translator, etc.</a:documentation>
          <data type="anyURI"/>
        </rng:attribute>
      </rng:optional>
      <rng:optional>
        <rng:attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="anchored" a:defaultValue="true">
          <a:documentation>indicates whether the copy text shows the exact place of reference for the note.</a:documentation>
          <choice>
            <data type="boolean"/>
          </choice>
        </rng:attribute>
      </rng:optional>
      <rng:optional>
        <rng:attribute name="target">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the point (or points) of attachment for a note, or the beginning of the
                span to which the note is attached.</a:documentation>
          <rng:list>
            <rng:oneOrMore>
              <data type="anyURI"/>
            </rng:oneOrMore>
          </rng:list>
        </rng:attribute>
      </rng:optional>
      <rng:optional>
        <rng:attribute name="targetEnd">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">points to the end of the span to which the note is attached, if the note is not
                embedded in the text at that point.</a:documentation>
          <rng:list>
            <rng:oneOrMore>
              <data type="anyURI"/>
            </rng:oneOrMore>
          </rng:list>
        </rng:attribute>
      </rng:optional>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="index">
    <element name="index">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(index entry) marks a location to be indexed for whatever purpose.</a:documentation>
      <zeroOrMore>
        <group>
          <ref name="term"/>
          <optional>
            <ref name="index"/>
          </optional>
        </group>
      </zeroOrMore>
      <ref name="att.global.attributes"/>
      <ref name="att.spanning.attributes"/>
      <rng:optional>
        <rng:attribute name="indexName">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">supplies a name to specify which index (of several) the index entry belongs to.</a:documentation>
          <data type="Name"/>
        </rng:attribute>
      </rng:optional>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="graphic">
    <element name="graphic">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the location of an inline graphic, illustration, or figure.</a:documentation>
      <rng:empty/>
      <ref name="att.global.attributes"/>
      <ref name="att.internetMedia.attributes"/>
      <ref name="att.declaring.attributes"/>
      <rng:optional>
        <rng:attribute name="width">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">The display width of the image</a:documentation>
          <data type="token">
            <param name="pattern">[\-+]?\d+(\.\d+)?(%|cm|mm|in|pt|pc|px|em|ex|gd|rem|vw|vh|vm)</param>
          </data>
        </rng:attribute>
      </rng:optional>
      <rng:optional>
        <rng:attribute name="height">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">The display height of the image</a:documentation>
          <data type="token">
            <param name="pattern">[\-+]?\d+(\.\d+)?(%|cm|mm|in|pt|pc|px|em|ex|gd|rem|vw|vh|vm)</param>
          </data>
        </rng:attribute>
      </rng:optional>
      <rng:optional>
        <rng:attribute name="scale">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">A scale factor to be applied to the image to make it the desired display size</a:documentation>
          <choice>
            <data type="double"/>
            <data type="decimal"/>
          </choice>
        </rng:attribute>
      </rng:optional>
      <rng:optional>
        <rng:attribute name="url">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(uniform resource locator) A URL which refers to the image itself.</a:documentation>
          <data type="anyURI"/>
        </rng:attribute>
      </rng:optional>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="binaryObject">
    <element name="binaryObject">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">provides encoded binary data representing an inline graphic or other object.</a:documentation>
      <rng:text/>
      <ref name="att.global.attributes"/>
      <ref name="att.internetMedia.attributes"/>
      <rng:optional>
        <rng:attribute name="width">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">The display width of the object</a:documentation>
          <data type="token">
            <param name="pattern">[\-+]?\d+(\.\d+)?(%|cm|mm|in|pt|pc|px|em|ex|gd|rem|vw|vh|vm)</param>
          </data>
        </rng:attribute>
      </rng:optional>
      <rng:optional>
        <rng:attribute name="height">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">The display height of the object</a:documentation>
          <data type="token">
            <param name="pattern">[\-+]?\d+(\.\d+)?(%|cm|mm|in|pt|pc|px|em|ex|gd|rem|vw|vh|vm)</param>
          </data>
        </rng:attribute>
      </rng:optional>
      <rng:optional>
        <rng:attribute name="scale">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">A scale factor to be applied to the object to make it the desired display size</a:documentation>
          <choice>
            <data type="double"/>
            <data type="decimal"/>
          </choice>
        </rng:attribute>
      </rng:optional>
      <rng:optional>
        <rng:attribute name="encoding">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">The encoding used to encode the binary data. If not
                specified, this is assumed to be Base64.</a:documentation>
          <rng:list>
            <rng:oneOrMore>
              <data type="token">
                <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
              </data>
            </rng:oneOrMore>
          </rng:list>
        </rng:attribute>
      </rng:optional>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="milestone">
    <element name="milestone">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">marks a boundary point separating any kind of section of a text, typically but not
                    necessarily indicating a point at which some part of a standard reference system
                    changes, where the change is not represented by a structural element.</a:documentation>
      <rng:empty/>
      <ref name="att.global.attributes"/>
      <ref name="att.typed.attributes"/>
      <ref name="att.sourced.attributes"/>
      <rng:attribute name="unit">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">provides a conventional name for the kind of section changing at
                                        this milestone.
Suggested values include: 1] page; 2] column; 3] line; 4] book; 5] poem; 6] canto; 7] speaker; 8] stanza; 9] act; 10] scene; 11] section; 12] absent; 13] unnumbered</a:documentation>
        <rng:choice>
          <rng:value>page</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">physical page breaks (synonymous with the
                                                  pb element).</a:documentation>
          <rng:value>column</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">column breaks.</a:documentation>
          <rng:value>line</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">line breaks (synonymous with the lb
                                                  element).</a:documentation>
          <rng:value>book</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">any units termed book, liber, etc.</a:documentation>
          <rng:value>poem</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">individual poems in a collection.</a:documentation>
          <rng:value>canto</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">cantos or other major sections of a poem.</a:documentation>
          <rng:value>speaker</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">changes of speaker or narrator.</a:documentation>
          <rng:value>stanza</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">stanzas within a poem, book, or canto.</a:documentation>
          <rng:value>act</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">acts within a play.</a:documentation>
          <rng:value>scene</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">scenes within a play or act.</a:documentation>
          <rng:value>section</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">sections of any kind.</a:documentation>
          <rng:value>absent</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">passages not present in the reference
                                                  edition.</a:documentation>
          <rng:value>unnumbered</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">passages present in the text, but not to be
                                                  included as part of the
                                                  reference.</a:documentation>
          <data type="Name"/>
        </rng:choice>
      </rng:attribute>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="pb">
    <element name="pb">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(page break) marks the boundary between one page of a text and the next in a standard reference system.</a:documentation>
      <rng:empty/>
      <ref name="att.global.attributes"/>
      <ref name="att.typed.attributes"/>
      <ref name="att.sourced.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="lb">
    <element name="lb">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(line break) marks the start of a new (typographic) line in some edition or version of a text.</a:documentation>
      <rng:empty/>
      <ref name="att.global.attributes"/>
      <ref name="att.typed.attributes"/>
      <ref name="att.sourced.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="cb">
    <element name="cb">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(column break) marks the boundary between one column of a text and the next
        in a standard reference system.</a:documentation>
      <rng:empty/>
      <ref name="att.global.attributes"/>
      <ref name="att.typed.attributes"/>
      <ref name="att.sourced.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="analytic">
    <element name="analytic">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(analytic level) contains bibliographic elements describing an item (e.g. an article or poem) published
    within a monograph or journal and not as an independent publication.</a:documentation>
      <zeroOrMore>
        <choice>
          <ref name="author"/>
          <ref name="editor"/>
          <ref name="respStmt"/>
          <ref name="title"/>
        </choice>
      </zeroOrMore>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="monogr">
    <element name="monogr">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(monographic level) contains bibliographic elements describing an item (e.g. a book or journal) published as
        an independent item (i.e. as a separate physical object).</a:documentation>
      <group>
        <optional>
          <choice>
            <group>
              <choice>
                <ref name="author"/>
                <ref name="editor"/>
                <ref name="respStmt"/>
              </choice>
              <zeroOrMore>
                <choice>
                  <ref name="author"/>
                  <ref name="editor"/>
                  <ref name="respStmt"/>
                </choice>
              </zeroOrMore>
              <oneOrMore>
                <ref name="title"/>
              </oneOrMore>
              <zeroOrMore>
                <choice>
                  <ref name="idno"/>
                  <ref name="editor"/>
                  <ref name="respStmt"/>
                </choice>
              </zeroOrMore>
            </group>
            <group>
              <oneOrMore>
                <ref name="title"/>
              </oneOrMore>
              <zeroOrMore>
                <choice>
                  <ref name="idno"/>
                  <ref name="author"/>
                  <ref name="editor"/>
                  <ref name="respStmt"/>
                </choice>
              </zeroOrMore>
            </group>
          </choice>
        </optional>
        <zeroOrMore>
          <choice>
            <ref name="model.noteLike"/>
            <ref name="meeting"/>
          </choice>
        </zeroOrMore>
        <zeroOrMore>
          <ref name="edition"/>
          <zeroOrMore>
            <choice>
              <ref name="idno"/>
              <ref name="editor"/>
              <ref name="respStmt"/>
            </choice>
          </zeroOrMore>
        </zeroOrMore>
        <ref name="imprint"/>
        <zeroOrMore>
          <choice>
            <ref name="imprint"/>
            <ref name="extent"/>
            <ref name="biblScope"/>
          </choice>
        </zeroOrMore>
      </group>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="series">
    <element name="series">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(series information) contains information about the series in which a book or other bibliographic item has
        appeared.</a:documentation>
      <zeroOrMore>
        <choice>
          <text/>
          <ref name="model.gLike"/>
          <ref name="title"/>
          <ref name="editor"/>
          <ref name="respStmt"/>
          <ref name="biblScope"/>
          <ref name="model.global"/>
        </choice>
      </zeroOrMore>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="author">
    <element name="author">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">in a bibliographic reference, contains the name of the author(s), personal or corporate, of
    a work; the primary statement of responsibility for any bibliographic item. </a:documentation>
      <rng:ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <ref name="att.canonical.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="editor">
    <element name="editor">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">secondary statement of responsibility for a
        bibliographic item, for example the name of an individual, institution
        or organization, (or of several such) acting as editor, compiler,
        translator, etc. </a:documentation>
      <rng:ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <rng:optional>
        <rng:attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="role" a:defaultValue="editor">
          <a:documentation>specifies the nature of the intellectual responsibility</a:documentation>
          <data type="Name"/>
        </rng:attribute>
      </rng:optional>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="respStmt">
    <element name="respStmt">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(statement of responsibility) supplies a statement of responsibility for the intellectual content of a text, edition,
    recording, or series, where the specialized elements for authors, editors, etc. do not suffice
    or do not apply.</a:documentation>
      <choice>
        <group>
          <oneOrMore>
            <ref name="resp"/>
          </oneOrMore>
          <oneOrMore>
            <ref name="model.nameLike.agent"/>
          </oneOrMore>
        </group>
        <group>
          <oneOrMore>
            <ref name="model.nameLike.agent"/>
          </oneOrMore>
          <oneOrMore>
            <ref name="resp"/>
          </oneOrMore>
        </group>
      </choice>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="resp">
    <element name="resp">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(responsibility) contains a phrase describing the nature of a person's intellectual responsibility.</a:documentation>
      <rng:ref name="macro.phraseSeq.limited"/>
      <ref name="att.global.attributes"/>
      <ref name="att.canonical.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="title">
    <element name="title">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a title for any kind of work.</a:documentation>
      <rng:ref name="macro.paraContent"/>
      <ref name="att.global.attributes"/>
      <ref name="att.canonical.attributes"/>
      <rng:optional>
        <rng:attribute name="level">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the bibliographic level for a title, that is, whether
                                        it identifies an article, book, journal, series, or
                                        unpublished material.</a:documentation>
          <rng:choice>
            <rng:value>a</rng:value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(analytic) analytic title (article, poem, or other item
                                                  published as part of a larger item) </a:documentation>
            <rng:value>m</rng:value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(monographic) monographic title (book, collection, or
                                                  other item published as a distinct item,
                                                  including single volumes of multi-volume
                                                  works) </a:documentation>
            <rng:value>j</rng:value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(journal) journal title </a:documentation>
            <rng:value>s</rng:value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(series) series title </a:documentation>
            <rng:value>u</rng:value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(unpublished) title of unpublished material (including
                                                  theses and dissertations unless
                                                  published by a commercial press)</a:documentation>
          </rng:choice>
        </rng:attribute>
      </rng:optional>
      <rng:optional>
        <rng:attribute name="type">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">classifies the title according to some convenient typology.
Sample values include: 1] main; 2] sub (subordinate); 3] alt (alternate); 4] short; 5] desc (descriptive)</a:documentation>
          <data type="Name"/>
        </rng:attribute>
      </rng:optional>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="meeting">
    <element name="meeting">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains the formalized descriptive title for a meeting or conference, for use in a
        bibliographic description for an item derived from such a meeting, or as a heading or
        preamble to publications emanating from it.</a:documentation>
      <rng:ref name="macro.limitedContent"/>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="imprint">
    <element name="imprint">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">groups information relating to the publication or distribution
        of a bibliographic item.</a:documentation>
      <oneOrMore>
        <choice>
          <group>
            <ref name="model.imprintPart"/>
          </group>
          <group>
            <ref name="model.dateLike"/>
          </group>
        </choice>
        <zeroOrMore>
          <ref name="model.global"/>
        </zeroOrMore>
      </oneOrMore>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="publisher">
    <element name="publisher">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">provides the name of the organization responsible for the publication or distribution of a
        bibliographic item.</a:documentation>
      <rng:ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="biblScope">
    <element name="biblScope">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(scope of citation) defines the scope of a bibliographic reference, for example as a
        list of page numbers, or a named subdivision of a larger work.</a:documentation>
      <rng:ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <rng:optional>
        <rng:attribute name="type">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">identifies the type of information conveyed by the element, e.g.
                columns, pages, volume.
Suggested values include: 1] vol (volume); 2] issue; 3] pp (pages); 4] chap (chapter); 5] part</a:documentation>
          <rng:choice>
            <rng:value>vol</rng:value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(volume) the element contains a volume number.</a:documentation>
            <rng:value>issue</rng:value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">the element contains an issue number, or volume and
                        issue numbers.</a:documentation>
            <rng:value>pp</rng:value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(pages) the element contains a page number or page range.</a:documentation>
            <rng:value>chap</rng:value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(chapter) the element contains a chapter indication (number
                        and/or title)</a:documentation>
            <rng:value>part</rng:value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">the element identifies a part of a book or collection.</a:documentation>
            <data type="Name"/>
          </rng:choice>
        </rng:attribute>
      </rng:optional>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="pubPlace">
    <element name="pubPlace">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(publication place) contains the name of the place where a bibliographic item was published.</a:documentation>
      <rng:ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <ref name="att.naming.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="bibl">
    <element name="bibl">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(bibliographic citation) contains a loosely-structured bibliographic citation of which the sub-components may or may
    not be explicitly tagged. </a:documentation>
      <zeroOrMore>
        <choice>
          <text/>
          <ref name="model.gLike"/>
          <ref name="model.highlighted"/>
          <ref name="model.pPart.data"/>
          <ref name="model.pPart.edit"/>
          <ref name="model.segLike"/>
          <ref name="model.ptrLike"/>
          <ref name="model.biblPart"/>
          <ref name="model.global"/>
        </choice>
      </zeroOrMore>
      <ref name="att.global.attributes"/>
      <ref name="att.declarable.attributes"/>
      <ref name="att.typed.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="biblStruct">
    <element name="biblStruct">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(structured bibliographic citation) contains a structured bibliographic citation, in which only bibliographic sub-elements
    appear and in a specified order. </a:documentation>
      <group>
        <zeroOrMore>
          <ref name="analytic"/>
        </zeroOrMore>
        <oneOrMore>
          <ref name="monogr"/>
          <zeroOrMore>
            <ref name="series"/>
          </zeroOrMore>
        </oneOrMore>
        <zeroOrMore>
          <choice>
            <ref name="model.noteLike"/>
            <ref name="idno"/>
            <ref name="relatedItem"/>
          </choice>
        </zeroOrMore>
      </group>
      <ref name="att.global.attributes"/>
      <ref name="att.declarable.attributes"/>
      <ref name="att.typed.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="listBibl">
    <element name="listBibl">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(citation list) contains a list of bibliographic citations of any kind. </a:documentation>
      <group>
        <zeroOrMore>
          <ref name="model.headLike"/>
        </zeroOrMore>
        <oneOrMore>
          <choice>
            <ref name="model.biblLike"/>
            <ref name="model.milestoneLike"/>
            <ref name="listBibl"/>
          </choice>
        </oneOrMore>
      </group>
      <ref name="att.global.attributes"/>
      <ref name="att.declarable.attributes"/>
      <ref name="att.typed.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="relatedItem">
    <element name="relatedItem">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains or references some other bibliographic item which is related to the present one
        in some specified manner, for example as a constituent or alternative version of it.</a:documentation>
      <choice>
        <ref name="model.biblLike"/>
        <ref name="model.ptrLike"/>
      </choice>
      <ref name="att.global.attributes"/>
      <ref name="att.typed.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="l">
    <element name="l">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(verse line) contains a single, possibly incomplete, line of verse.</a:documentation>
      <rng:ref name="macro.paraContent"/>
      <ref name="att.global.attributes"/>
      <rng:optional>
        <rng:attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="part" a:defaultValue="N">
          <a:documentation>specifies whether or not the line is metrically complete. </a:documentation>
          <rng:choice>
            <rng:value>Y</rng:value>
            <a:documentation>(yes) the line is metrically incomplete</a:documentation>
            <rng:value>N</rng:value>
            <a:documentation>(no) either the line is complete, or no claim is made as to its completeness</a:documentation>
            <rng:value>I</rng:value>
            <a:documentation>(initial) the initial part of an incomplete line</a:documentation>
            <rng:value>M</rng:value>
            <a:documentation>(medial) a medial part of an incomplete line</a:documentation>
            <rng:value>F</rng:value>
            <a:documentation>(final) the final part of an incomplete line</a:documentation>
          </rng:choice>
        </rng:attribute>
      </rng:optional>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="lg">
    <element name="lg">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(line group) contains a group of verse lines functioning as a formal unit, e.g. a stanza, refrain,
        verse paragraph, etc.</a:documentation>
      <group>
        <zeroOrMore>
          <choice>
            <ref name="model.divTop"/>
            <ref name="model.global"/>
          </choice>
        </zeroOrMore>
        <choice>
          <ref name="model.lLike"/>
          <ref name="lg"/>
        </choice>
        <zeroOrMore>
          <choice>
            <ref name="model.lLike"/>
            <ref name="lg"/>
            <ref name="model.global"/>
          </choice>
        </zeroOrMore>
        <zeroOrMore>
          <group>
            <ref name="model.divBottom"/>
          </group>
          <zeroOrMore>
            <ref name="model.global"/>
          </zeroOrMore>
        </zeroOrMore>
      </group>
      <ref name="att.global.attributes"/>
      <ref name="att.divLike.attributes"/>
      <ref name="att.typed.attributes"/>
      <ref name="att.declaring.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="sp">
    <element name="sp">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(speech) An individual speech in a performance text, or a passage presented as such in a prose or
        verse text.</a:documentation>
      <group>
        <zeroOrMore>
          <ref name="model.global"/>
        </zeroOrMore>
        <optional>
          <ref name="speaker"/>
          <zeroOrMore>
            <ref name="model.global"/>
          </zeroOrMore>
        </optional>
        <oneOrMore>
          <choice>
            <ref name="model.lLike"/>
            <ref name="lg"/>
            <ref name="model.pLike"/>
            <ref name="model.stageLike"/>
            <ref name="model.qLike"/>
          </choice>
          <zeroOrMore>
            <ref name="model.global"/>
          </zeroOrMore>
        </oneOrMore>
      </group>
      <ref name="att.global.attributes"/>
      <ref name="att.ascribed.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="speaker">
    <element name="speaker">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">A specialized form of heading or label, giving the name of one or more speakers in a
        dramatic text or fragment.</a:documentation>
      <rng:ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="stage">
    <element name="stage">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(stage direction) contains any kind of stage direction within a dramatic text or fragment.</a:documentation>
      <rng:ref name="macro.specialPara"/>
      <ref name="att.global.attributes"/>
      <rng:optional>
        <rng:attribute name="type">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the kind of stage direction.
Suggested values include: 1] setting; 2] entrance; 3] exit; 4] business; 5] novelistic; 6] delivery; 7] modifier; 8] location; 9] mixed</a:documentation>
          <rng:choice>
            <rng:value>setting</rng:value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">describes a setting.</a:documentation>
            <rng:value>entrance</rng:value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">describes an entrance.</a:documentation>
            <rng:value>exit</rng:value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">describes an exit.</a:documentation>
            <rng:value>business</rng:value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">describes stage business.</a:documentation>
            <rng:value>novelistic</rng:value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">is a narrative, motivating stage direction.</a:documentation>
            <rng:value>delivery</rng:value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">describes how a character speaks.</a:documentation>
            <rng:value>modifier</rng:value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">gives some detail about a character.</a:documentation>
            <rng:value>location</rng:value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">describes a location.</a:documentation>
            <rng:value>mixed</rng:value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">more than one of the above</a:documentation>
            <data type="Name"/>
          </rng:choice>
        </rng:attribute>
      </rng:optional>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="divGen">
    <element name="divGen">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(automatically generated text division) indicates the location at which a textual division generated
        automatically by a text-processing application is to appear.</a:documentation>
      <zeroOrMore>
        <ref name="model.headLike"/>
      </zeroOrMore>
      <ref name="att.global.attributes"/>
      <rng:optional>
        <rng:attribute name="type">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies what type of generated text division (e.g. index,
                table of contents, etc.) is to appear.
Sample values include: 1] index; 2] toc; 3] figlist; 4] tablist</a:documentation>
          <data type="Name"/>
        </rng:attribute>
      </rng:optional>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.headerPart">
    <rng:choice>
      <ref name="encodingDesc"/>
      <ref name="profileDesc"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="teiHeader">
    <element name="teiHeader">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(TEI Header) supplies the descriptive and declarative information making
	up an electronic title page prefixed to every TEI-conformant
	text.</a:documentation>
      <group>
        <ref name="fileDesc"/>
        <zeroOrMore>
          <ref name="model.headerPart"/>
        </zeroOrMore>
        <optional>
          <ref name="revisionDesc"/>
        </optional>
      </group>
      <ref name="att.global.attributes"/>
      <rng:optional>
        <rng:attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="type" a:defaultValue="text">
          <a:documentation>specifies the kind of document to which the header is
      attached, for example whether it is a corpus or individual text.
Sample values include: 1] text; 2] corpus</a:documentation>
          <data type="Name"/>
        </rng:attribute>
      </rng:optional>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="fileDesc">
    <element name="fileDesc">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(file description) contains a full bibliographic description of an electronic
file.</a:documentation>
      <group>
        <group>
          <ref name="titleStmt"/>
          <optional>
            <ref name="editionStmt"/>
          </optional>
          <optional>
            <ref name="extent"/>
          </optional>
          <ref name="publicationStmt"/>
          <optional>
            <ref name="seriesStmt"/>
          </optional>
          <optional>
            <ref name="notesStmt"/>
          </optional>
        </group>
        <oneOrMore>
          <ref name="sourceDesc"/>
        </oneOrMore>
      </group>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="titleStmt">
    <element name="titleStmt">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(title statement) groups information about the title of a work and those
responsible for its intellectual content.</a:documentation>
      <group>
        <oneOrMore>
          <ref name="title"/>
        </oneOrMore>
        <zeroOrMore>
          <ref name="model.respLike"/>
        </zeroOrMore>
      </group>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="sponsor">
    <element name="sponsor">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the name of a sponsoring organization or
institution.</a:documentation>
      <rng:ref name="macro.phraseSeq.limited"/>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="funder">
    <element name="funder">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(funding body) specifies the name of an individual, institution, or organization
responsible for the funding of a project or text.</a:documentation>
      <rng:ref name="macro.phraseSeq.limited"/>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="principal">
    <element name="principal">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(principal researcher) supplies the name of the principal researcher responsible for the
creation of an electronic text.</a:documentation>
      <rng:ref name="macro.phraseSeq.limited"/>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="editionStmt">
    <element name="editionStmt">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(edition statement) groups information relating to one edition of a text.</a:documentation>
      <choice>
        <oneOrMore>
          <ref name="model.pLike"/>
        </oneOrMore>
        <group>
          <ref name="edition"/>
          <zeroOrMore>
            <ref name="respStmt"/>
          </zeroOrMore>
        </group>
      </choice>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="edition">
    <element name="edition">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(edition) describes the particularities of one edition of a text.</a:documentation>
      <rng:ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="extent">
    <element name="extent">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">describes the approximate size of a text as stored on
some carrier medium, whether digital or non-digital, specified in any convenient units.</a:documentation>
      <rng:ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="publicationStmt">
    <element name="publicationStmt">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(publication statement) groups information concerning the publication or distribution
of an electronic or other text. </a:documentation>
      <choice>
        <oneOrMore>
          <ref name="model.pLike"/>
        </oneOrMore>
        <oneOrMore>
          <ref name="model.publicationStmtPart"/>
        </oneOrMore>
      </choice>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="distributor">
    <element name="distributor">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">supplies the name of a person or other agency responsible for the
distribution of a text.</a:documentation>
      <rng:ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="authority">
    <element name="authority">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(release authority) supplies the name of a person or other agency responsible for
  making an electronic file available, other than a publisher or
  distributor.</a:documentation>
      <rng:ref name="macro.phraseSeq.limited"/>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="idno">
    <element name="idno">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(identifying number) supplies any standard or non-standard number used to identify a
bibliographic item.</a:documentation>
      <rng:text/>
      <ref name="att.global.attributes"/>
      <rng:optional>
        <rng:attribute name="type">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">categorizes the number, for example as an ISBN or other
         standard series.
   </a:documentation>
          <data type="Name"/>
        </rng:attribute>
      </rng:optional>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="availability">
    <element name="availability">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">supplies information about the availability of a text, for
  example any restrictions on its use or distribution, its copyright
  status, etc.</a:documentation>
      <oneOrMore>
        <ref name="model.pLike"/>
      </oneOrMore>
      <ref name="att.global.attributes"/>
      <ref name="att.declarable.attributes"/>
      <rng:optional>
        <rng:attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="status" a:defaultValue="unknown">
          <a:documentation>supplies a code identifying the current availability of the
text.
   </a:documentation>
          <rng:choice>
            <rng:value>free</rng:value>
            <a:documentation>the text is freely available.
    </a:documentation>
            <rng:value>unknown</rng:value>
            <a:documentation>the status of the text is unknown.
    </a:documentation>
            <rng:value>restricted</rng:value>
            <a:documentation>the text is not freely available.
   </a:documentation>
          </rng:choice>
        </rng:attribute>
      </rng:optional>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="seriesStmt">
    <element name="seriesStmt">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(series statement) groups information about the series, if any, to which
a publication belongs.</a:documentation>
      <choice>
        <oneOrMore>
          <ref name="model.pLike"/>
        </oneOrMore>
        <group>
          <oneOrMore>
            <ref name="title"/>
          </oneOrMore>
          <zeroOrMore>
            <choice>
              <ref name="idno"/>
              <ref name="respStmt"/>
            </choice>
          </zeroOrMore>
        </group>
      </choice>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="notesStmt">
    <element name="notesStmt">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(notes statement) collects together any notes providing information about a text
additional to that recorded in other parts of the bibliographic
description.</a:documentation>
      <oneOrMore>
        <ref name="model.noteLike"/>
      </oneOrMore>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.sourceDescPart">
    <notAllowed/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="sourceDesc">
    <element name="sourceDesc">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(source description) describes the source from
which an electronic text was derived or generated, typically a bibliographic description in the case of a digitized text, or a phrase such as "born digital" for a text which has no previous existence.</a:documentation>
      <choice>
        <oneOrMore>
          <ref name="model.pLike"/>
        </oneOrMore>
        <oneOrMore>
          <choice>
            <ref name="model.biblLike"/>
            <ref name="model.sourceDescPart"/>
            <ref name="model.listLike"/>
          </choice>
        </oneOrMore>
      </choice>
      <ref name="att.global.attributes"/>
      <ref name="att.declarable.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="biblFull">
    <element name="biblFull">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(fully-structured bibliographic citation) contains a fully-structured bibliographic citation, in which all
components of the TEI file description
are present.</a:documentation>
      <group>
        <group>
          <ref name="titleStmt"/>
          <optional>
            <ref name="editionStmt"/>
          </optional>
          <optional>
            <ref name="extent"/>
          </optional>
          <ref name="publicationStmt"/>
          <optional>
            <ref name="seriesStmt"/>
          </optional>
          <optional>
            <ref name="notesStmt"/>
          </optional>
        </group>
        <zeroOrMore>
          <ref name="sourceDesc"/>
        </zeroOrMore>
      </group>
      <ref name="att.global.attributes"/>
      <ref name="att.declarable.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.encodingPart">
    <rng:choice>
      <ref name="projectDesc"/>
      <ref name="samplingDecl"/>
      <ref name="editorialDecl"/>
      <ref name="tagsDecl"/>
      <ref name="refsDecl"/>
      <ref name="classDecl"/>
      <ref name="appInfo"/>
      <ref name="geoDecl"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="encodingDesc">
    <element name="encodingDesc">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(encoding description) documents the relationship between an electronic text and the
source or sources from which it was derived.</a:documentation>
      <group>
        <oneOrMore>
          <choice>
            <ref name="model.encodingPart"/>
            <ref name="model.pLike"/>
          </choice>
        </oneOrMore>
      </group>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="projectDesc">
    <element name="projectDesc">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(project description) describes in detail the aim or purpose for which an electronic
file was encoded, together with any other relevant information
concerning the process by which it was assembled or collected.</a:documentation>
      <oneOrMore>
        <ref name="model.pLike"/>
      </oneOrMore>
      <ref name="att.global.attributes"/>
      <ref name="att.declarable.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="samplingDecl">
    <element name="samplingDecl">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(sampling declaration) contains a prose description of the rationale and methods used
in sampling texts in the creation of a corpus or collection.</a:documentation>
      <oneOrMore>
        <ref name="model.pLike"/>
      </oneOrMore>
      <ref name="att.global.attributes"/>
      <ref name="att.declarable.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.editorialDeclPart">
    <rng:choice>
      <ref name="correction"/>
      <ref name="normalization"/>
      <ref name="quotation"/>
      <ref name="hyphenation"/>
      <ref name="segmentation"/>
      <ref name="stdVals"/>
      <ref name="interpretation"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="editorialDecl">
    <element name="editorialDecl">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(editorial practice declaration) provides details of editorial principles and practices applied
during the encoding of a text.</a:documentation>
      <choice>
        <oneOrMore>
          <ref name="model.pLike"/>
        </oneOrMore>
        <oneOrMore>
          <ref name="model.editorialDeclPart"/>
        </oneOrMore>
      </choice>
      <ref name="att.global.attributes"/>
      <ref name="att.declarable.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="correction">
    <element name="correction">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(correction principles) states how and under what circumstances corrections have been
made in the text.</a:documentation>
      <oneOrMore>
        <ref name="model.pLike"/>
      </oneOrMore>
      <ref name="att.global.attributes"/>
      <ref name="att.declarable.attributes"/>
      <rng:optional>
        <rng:attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="status" a:defaultValue="unknown">
          <a:documentation>indicates the degree of correction applied to the text.
   </a:documentation>
          <rng:choice>
            <rng:value>high</rng:value>
            <a:documentation>the text has been thoroughly checked and
                       proofread.
    </a:documentation>
            <rng:value>medium</rng:value>
            <a:documentation>the text has been checked at least once.
    </a:documentation>
            <rng:value>low</rng:value>
            <a:documentation>the text has not been checked.
    </a:documentation>
            <rng:value>unknown</rng:value>
            <a:documentation>the correction status of the text is unknown.
   </a:documentation>
          </rng:choice>
        </rng:attribute>
      </rng:optional>
      <rng:optional>
        <rng:attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="method" a:defaultValue="silent">
          <a:documentation>indicates the method adopted to indicate corrections within the
         text.
   </a:documentation>
          <rng:choice>
            <rng:value>silent</rng:value>
            <a:documentation>corrections have been made silently
    </a:documentation>
            <rng:value>markup</rng:value>
            <a:documentation>corrections have been represented using markup</a:documentation>
          </rng:choice>
        </rng:attribute>
      </rng:optional>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="normalization">
    <element name="normalization">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the extent of normalization or regularization of the
original source carried out in converting it to electronic form.</a:documentation>
      <oneOrMore>
        <ref name="model.pLike"/>
      </oneOrMore>
      <ref name="att.global.attributes"/>
      <ref name="att.declarable.attributes"/>
      <rng:optional>
        <rng:attribute name="source">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the authority for any normalization carried out.
    </a:documentation>
          <data type="anyURI"/>
        </rng:attribute>
      </rng:optional>
      <rng:optional>
        <rng:attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="method" a:defaultValue="silent">
          <a:documentation>indicates the method adopted to indicate normalizations within
         the text.
   </a:documentation>
          <rng:choice>
            <rng:value>silent</rng:value>
            <a:documentation>normalization made silently
  </a:documentation>
            <rng:value>markup</rng:value>
            <a:documentation>normalization represented using markup
   </a:documentation>
          </rng:choice>
        </rng:attribute>
      </rng:optional>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="quotation">
    <element name="quotation">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies editorial practice adopted with respect to quotation
  marks in the original. </a:documentation>
      <oneOrMore>
        <ref name="model.pLike"/>
      </oneOrMore>
      <ref name="att.global.attributes"/>
      <ref name="att.declarable.attributes"/>
      <rng:optional>
        <rng:attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="marks" a:defaultValue="all">
          <a:documentation>(quotation marks) indicates whether or not quotation marks have been retained as
      content within the text. </a:documentation>
          <rng:choice>
            <rng:value>none</rng:value>
            <a:documentation>no quotation marks have been retained </a:documentation>
            <rng:value>some</rng:value>
            <a:documentation>some quotation marks have been retained </a:documentation>
            <rng:value>all</rng:value>
            <a:documentation>all quotation marks have been retained </a:documentation>
          </rng:choice>
        </rng:attribute>
      </rng:optional>
      <rng:optional>
        <rng:attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="form" a:defaultValue="unknown">
          <a:documentation>specifies how quotation marks are indicated within the
      text.</a:documentation>
          <text/>
        </rng:attribute>
      </rng:optional>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="hyphenation">
    <element name="hyphenation">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">summarizes the way in which hyphenation in a source text has been
treated in an encoded version of it.</a:documentation>
      <oneOrMore>
        <ref name="model.pLike"/>
      </oneOrMore>
      <ref name="att.global.attributes"/>
      <ref name="att.declarable.attributes"/>
      <rng:optional>
        <rng:attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="eol" a:defaultValue="some">
          <a:documentation>(end-of-line) indicates whether or not end-of-line hyphenation has been
	retained in a text.</a:documentation>
          <rng:choice>
            <rng:value>all</rng:value>
            <a:documentation>all end-of-line hyphenation has been retained,
                   even though the lineation of the original
                   may not have been.
   </a:documentation>
            <rng:value>some</rng:value>
            <a:documentation>end-of-line hyphenation has been retained in some
                   cases.
   </a:documentation>
            <rng:value>hard</rng:value>
            <a:documentation>all soft end-of-line hyphenation has been removed:
                   any remaining end-od-line hyphenation should be retained.
  </a:documentation>
            <rng:value>none</rng:value>
            <a:documentation>all end-of-line hyphenation has been removed:
                  any remaining hyphenation occurred within the line.
   </a:documentation>
          </rng:choice>
        </rng:attribute>
      </rng:optional>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="segmentation">
    <element name="segmentation">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">describes the principles according to which the text has been
segmented, for example into sentences, tone-units, graphemic strata,
etc.</a:documentation>
      <oneOrMore>
        <ref name="model.pLike"/>
      </oneOrMore>
      <ref name="att.global.attributes"/>
      <ref name="att.declarable.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="stdVals">
    <element name="stdVals">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(standard values) specifies the format used when standardized date or number
values are supplied.</a:documentation>
      <oneOrMore>
        <ref name="model.pLike"/>
      </oneOrMore>
      <ref name="att.global.attributes"/>
      <ref name="att.declarable.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="interpretation">
    <element name="interpretation">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">describes the scope of any analytic or interpretive information
added to the text in addition to the transcription. </a:documentation>
      <oneOrMore>
        <ref name="model.pLike"/>
      </oneOrMore>
      <ref name="att.global.attributes"/>
      <ref name="att.declarable.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="tagsDecl">
    <element name="tagsDecl">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(tagging declaration) provides detailed information about the tagging applied to a document.</a:documentation>
      <group>
        <zeroOrMore>
          <ref name="rendition"/>
        </zeroOrMore>
        <zeroOrMore>
          <ref name="namespace"/>
        </zeroOrMore>
      </group>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="tagUsage">
    <element name="tagUsage">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">supplies information about the usage of a specific element
within a text. </a:documentation>
      <rng:ref name="macro.limitedContent"/>
      <ref name="att.global.attributes"/>
      <rng:attribute name="gi">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(element name) the name (generic identifier) of the element indicated by
      the tag.</a:documentation>
        <data type="Name"/>
      </rng:attribute>
      <rng:optional>
        <rng:attribute name="occurs">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the number of occurrences of this element within the text.</a:documentation>
          <data type="nonNegativeInteger"/>
        </rng:attribute>
      </rng:optional>
      <rng:optional>
        <rng:attribute name="withId">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(with unique identifier) specifies the number of occurrences of this element within
      the text which bear a distinct value for the global
      xml:id attribute. </a:documentation>
          <data type="nonNegativeInteger"/>
        </rng:attribute>
      </rng:optional>
      <rng:optional>
        <rng:attribute name="render">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the identifier of a rendition element
      which defines how this element is to be rendered.</a:documentation>
          <data type="anyURI"/>
        </rng:attribute>
      </rng:optional>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="namespace">
    <element name="namespace">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">supplies the formal name of the namespace to which the elements
documented by its children belong. </a:documentation>
      <oneOrMore>
        <ref name="tagUsage"/>
      </oneOrMore>
      <ref name="att.global.attributes"/>
      <rng:attribute name="name">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">the full formal name of the namespace concerned.</a:documentation>
        <data type="anyURI"/>
      </rng:attribute>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="rendition">
    <element name="rendition">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">supplies information about the rendition or appearance of one or more
elements in the source text.</a:documentation>
      <rng:ref name="macro.limitedContent"/>
      <ref name="att.global.attributes"/>
      <rng:optional>
        <rng:attribute name="scheme">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">identifies the language used to describe the rendition.</a:documentation>
          <rng:choice>
            <rng:value>css</rng:value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Cascading Stylesheet Language</a:documentation>
            <rng:value>xslfo</rng:value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Extensible  Stylesheet Language
Formatting Objects</a:documentation>
            <rng:value>free</rng:value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Informal free text description</a:documentation>
            <rng:value>other</rng:value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">A user-defined rendition description language</a:documentation>
          </rng:choice>
        </rng:attribute>
      </rng:optional>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="refsDecl">
    <element name="refsDecl">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(references declaration) specifies how canonical references are constructed for this
  text.</a:documentation>
      <choice>
        <oneOrMore>
          <ref name="model.pLike"/>
        </oneOrMore>
        <oneOrMore>
          <ref name="cRefPattern"/>
        </oneOrMore>
        <oneOrMore>
          <ref name="refState"/>
        </oneOrMore>
      </choice>
      <ref name="att.global.attributes"/>
      <ref name="att.declarable.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="cRefPattern">
    <element name="cRefPattern">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(canonical reference pattern) specifies an expression and replacement pattern for
  transforming a canonical reference into a URI. </a:documentation>
      <zeroOrMore>
        <ref name="model.pLike"/>
      </zeroOrMore>
      <ref name="att.global.attributes"/>
      <rng:attribute name="matchPattern">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies a regular expression against which the values of
      cRef attributes can be matched.</a:documentation>
        <data type="token"/>
      </rng:attribute>
      <rng:attribute name="replacementPattern">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies a replacement pattern
      which, once subpattern substitution has been performed, provides
      a URI.</a:documentation>
        <text/>
      </rng:attribute>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="refState">
    <element name="refState">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(reference state) specifies one component of a canonical reference defined by
the milestone method.</a:documentation>
      <rng:empty/>
      <ref name="att.global.attributes"/>
      <ref name="att.sourced.attributes"/>
      <rng:attribute name="unit">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates what kind of state is changing at this milestone.
Suggested values include: 1] page; 2] column; 3] line; 4] book; 5] poem; 6] canto; 7] stanza; 8] act; 9] scene; 10] section; 11] absent</a:documentation>
        <rng:choice>
          <rng:value>page</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">page breaks in the reference edition.
    </a:documentation>
          <rng:value>column</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">column breaks.
    </a:documentation>
          <rng:value>line</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">line breaks.
    </a:documentation>
          <rng:value>book</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">any units termed book, liber, etc.
    </a:documentation>
          <rng:value>poem</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">individual poems in a collection.
    </a:documentation>
          <rng:value>canto</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">cantos or other major sections of a poem.
    </a:documentation>
          <rng:value>stanza</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">stanzas within a poem, book, or canto.
    </a:documentation>
          <rng:value>act</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">acts within a play.
    </a:documentation>
          <rng:value>scene</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">scenes within a play or act.
    </a:documentation>
          <rng:value>section</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">sections of any kind.
    </a:documentation>
          <rng:value>absent</rng:value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">passages not present in the reference edition.</a:documentation>
          <data type="Name"/>
        </rng:choice>
      </rng:attribute>
      <rng:optional>
        <rng:attribute name="length">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the fixed length of the reference component.</a:documentation>
          <data type="nonNegativeInteger"/>
        </rng:attribute>
      </rng:optional>
      <rng:optional>
        <rng:attribute name="delim">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(delimiter) supplies a delimiting string following the reference
          component.</a:documentation>
          <text/>
        </rng:attribute>
      </rng:optional>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="classDecl">
    <element name="classDecl">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(classification declarations) contains one or more taxonomies defining any classificatory
codes used elsewhere in the text.</a:documentation>
      <oneOrMore>
        <ref name="taxonomy"/>
      </oneOrMore>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="taxonomy">
    <element name="taxonomy">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">defines a typology used to classify texts either implicitly, by
means of a bibliographic citation, or explicitly by a structured
taxonomy.</a:documentation>
      <choice>
        <zeroOrMore>
          <ref name="model.glossLike"/>
        </zeroOrMore>
        <oneOrMore>
          <ref name="category"/>
        </oneOrMore>
        <group>
          <group>
            <ref name="model.biblLike"/>
          </group>
          <zeroOrMore>
            <ref name="category"/>
          </zeroOrMore>
        </group>
      </choice>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="category">
    <element name="category">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains an individual descriptive category, possibly nested
within a superordinate category, within a user-defined taxonomy.</a:documentation>
      <group>
        <choice>
          <ref name="catDesc"/>
          <zeroOrMore>
            <ref name="model.glossLike"/>
          </zeroOrMore>
        </choice>
        <zeroOrMore>
          <ref name="category"/>
        </zeroOrMore>
      </group>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="catDesc">
    <element name="catDesc">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(category description) describes some category within a taxonomy
or text typology, either in the form of a brief prose description
or in terms of the situational parameters used by the TEI
formal textDesc.</a:documentation>
      <zeroOrMore>
        <choice>
          <text/>
          <ref name="model.limitedPhrase"/>
          <ref name="model.catDescPart"/>
        </choice>
      </zeroOrMore>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="appInfo">
    <element name="appInfo">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(application information) records information about an application which has
  edited the TEI file. </a:documentation>
      <oneOrMore>
        <ref name="model.applicationLike"/>
      </oneOrMore>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="application">
    <element name="application">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">provides information about an application which has acted upon the document.</a:documentation>
      <group>
        <oneOrMore>
          <ref name="model.labelLike"/>
        </oneOrMore>
        <choice>
          <zeroOrMore>
            <ref name="model.ptrLike"/>
          </zeroOrMore>
          <zeroOrMore>
            <ref name="model.pLike"/>
          </zeroOrMore>
        </choice>
      </group>
      <ref name="att.global.attributes"/>
      <ref name="att.typed.attributes"/>
      <ref name="att.datable.attributes"/>
      <rng:attribute name="ident">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Supplies an identifier for the application, independent of its version number or display
        name.</a:documentation>
        <data type="Name"/>
      </rng:attribute>
      <rng:attribute name="version">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Supplies a version number for the application, independent of its identifier or display
        name.</a:documentation>
        <data type="token">
          <param name="pattern">[\d]+[a-z]*[\d]*(\.[\d]+[a-z]*[\d]*){0,3}</param>
        </data>
      </rng:attribute>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.applicationLike">
    <rng:choice>
      <ref name="application"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.profileDescPart">
    <rng:choice>
      <ref name="langUsage"/>
      <ref name="textClass"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="profileDesc">
    <element name="profileDesc">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(text-profile description) provides a detailed description of non-bibliographic aspects of a
text, specifically the languages and sublanguages used, the situation in
which it was produced, the participants and their setting.</a:documentation>
      <group>
        <optional>
          <ref name="creation"/>
        </optional>
        <zeroOrMore>
          <ref name="model.profileDescPart"/>
        </zeroOrMore>
      </group>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="creation">
    <element name="creation">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains information about the creation of a text.</a:documentation>
      <rng:ref name="macro.phraseSeq.limited"/>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="langUsage">
    <element name="langUsage">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(language usage) describes the languages, sublanguages, registers, dialects, etc.
represented within a text.</a:documentation>
      <oneOrMore>
        <ref name="language"/>
      </oneOrMore>
      <ref name="att.global.attributes"/>
      <ref name="att.declarable.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="language">
    <element name="language">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">characterizes a single language or sublanguage used within a
  text.</a:documentation>
      <rng:ref name="macro.phraseSeq.limited"/>
      <ref name="att.global.attributes"/>
      <rng:attribute name="ident">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(identifier) Supplies a language code constructed as defined in BCP 47 which is used to identify the language documented
      by this element, and which is referenced by the global xml:lang attribute.</a:documentation>
        <data type="language"/>
      </rng:attribute>
      <rng:optional>
        <rng:attribute name="usage">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the approximate percentage (by volume) of the
      text which uses this language.
      </a:documentation>
          <data type="nonNegativeInteger">
            <param name="maxInclusive">100</param>
          </data>
        </rng:attribute>
      </rng:optional>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="textClass">
    <element name="textClass">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(text classification) groups information which describes the nature or topic of a text
in terms of a standard classification scheme, thesaurus, etc.</a:documentation>
      <zeroOrMore>
        <choice>
          <ref name="classCode"/>
          <ref name="catRef"/>
          <ref name="keywords"/>
        </choice>
      </zeroOrMore>
      <ref name="att.global.attributes"/>
      <ref name="att.declarable.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="keywords">
    <element name="keywords">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a list of keywords or phrases identifying the topic or
nature of a text.</a:documentation>
      <choice>
        <oneOrMore>
          <ref name="term"/>
        </oneOrMore>
        <ref name="list"/>
      </choice>
      <ref name="att.global.attributes"/>
      <rng:attribute name="scheme">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">identifies the controlled vocabulary within which the set of
  keywords concerned is defined.
   </a:documentation>
        <data type="anyURI"/>
      </rng:attribute>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="classCode">
    <element name="classCode">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(classification code) contains the classification code used for this text in some
standard classification system.</a:documentation>
      <rng:ref name="macro.phraseSeq.limited"/>
      <ref name="att.global.attributes"/>
      <rng:attribute name="scheme">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">identifies the classification system or taxonomy in use.</a:documentation>
        <data type="anyURI"/>
      </rng:attribute>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="catRef">
    <element name="catRef">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(category reference) specifies one or more defined categories
within some taxonomy or text typology.</a:documentation>
      <rng:empty/>
      <ref name="att.global.attributes"/>
      <rng:attribute name="target">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">identifies the categories concerned
   </a:documentation>
        <rng:list>
          <rng:oneOrMore>
            <data type="anyURI"/>
          </rng:oneOrMore>
        </rng:list>
      </rng:attribute>
      <rng:optional>
        <rng:attribute name="scheme">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">identifies the classification scheme within which the set of
    categories concerned is defined
   </a:documentation>
          <data type="anyURI"/>
        </rng:attribute>
      </rng:optional>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="revisionDesc">
    <element name="revisionDesc">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(revision description) summarizes the revision history for a file.</a:documentation>
      <choice>
        <ref name="list"/>
        <oneOrMore>
          <ref name="change"/>
        </oneOrMore>
      </choice>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="change">
    <element name="change">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">summarizes a particular change or correction made
to a particular version of an electronic text which is
shared between several researchers.</a:documentation>
      <zeroOrMore>
        <choice>
          <text/>
          <ref name="model.limitedPhrase"/>
          <ref name="model.inter"/>
          <ref name="model.global"/>
        </choice>
      </zeroOrMore>
      <ref name="att.global.attributes"/>
      <ref name="att.ascribed.attributes"/>
      <rng:optional>
        <rng:attribute name="when">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">supplies the date of the change in standard form, i.e. YYYY-MM-DD.</a:documentation>
          <choice>
            <data type="date"/>
            <data type="gYear"/>
            <data type="gMonth"/>
            <data type="gDay"/>
            <data type="gYearMonth"/>
            <data type="gMonthDay"/>
            <data type="time"/>
            <data type="dateTime"/>
          </choice>
        </rng:attribute>
      </rng:optional>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="typeNote">
    <element name="typeNote">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">describes a particular font or other significant typographic
  feature distinguished within the description of a printed resource.</a:documentation>
      <rng:ref name="macro.specialPara"/>
      <ref name="att.global.attributes"/>
      <ref name="att.handFeatures.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="geoDecl">
    <element name="geoDecl">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(geographic coordinates declaration) documents the notation and the datum used for geographic
  coordinates expressed as content of the geo element
  elsewhere within the document.</a:documentation>
      <rng:ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <ref name="att.declarable.attributes"/>
      <rng:optional>
        <rng:attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="datum" a:defaultValue="WGS84">
          <a:documentation>supplies a commonly used code name for the datum employed.
Suggested values include: 1] WGS84 (World Geodetic System); 2] MGRS (Military Grid Reference System); 3] OSGB36 (ordnance survey great britain); 4] ED50 (European Datum coordinate system)</a:documentation>
          <rng:choice>
            <rng:value>WGS84</rng:value>
            <a:documentation>(World Geodetic System) a pair of numbers to be interpreted as latitude followed by longitude
	  according to the World Geodetic System.</a:documentation>
            <rng:value>MGRS</rng:value>
            <a:documentation>(Military Grid Reference System) the values supplied are geospatial entity object codes,
	based on  Universal Transverse Mercator coordinates</a:documentation>
            <rng:value>OSGB36</rng:value>
            <a:documentation>(ordnance survey great britain) the value supplied is to be interpreted as a British National Grid
	  Reference.</a:documentation>
            <rng:value>ED50</rng:value>
            <a:documentation>(European Datum coordinate system) the value supplied is to be interpreted as latitude followed by
	  longitude according to the European Datum coordinate system.</a:documentation>
            <data type="Name"/>
          </rng:choice>
        </rng:attribute>
      </rng:optional>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="TEI">
    <element name="TEI">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(TEI document) contains a single TEI-conformant document,
comprising a TEI header and a text, either in isolation or as part of a
teiCorpus element.</a:documentation>
      <group>
        <ref name="teiHeader"/>
        <choice>
          <group>
            <oneOrMore>
              <ref name="model.resourceLike"/>
            </oneOrMore>
            <optional>
              <ref name="text"/>
            </optional>
          </group>
          <ref name="text"/>
        </choice>
      </group>
      <s:ns xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tei="http://www.tei-c.org/ns/1.0" xmlns="http://www.tei-c.org/ns/1.0" prefix="tei" uri="http://www.tei-c.org/ns/1.0"/>
      <s:ns xmlns:s="http://www.ascc.net/xml/schematron" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tei="http://www.tei-c.org/ns/1.0" xmlns="http://www.tei-c.org/ns/1.0" prefix="rng" uri="http://relaxng.org/ns/structure/1.0"/>
      <ref name="att.global.attributes"/>
      <rng:optional>
        <rng:attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="version" a:defaultValue="5.0">
          <a:documentation>The version of the TEI scheme</a:documentation>
          <data type="decimal"/>
        </rng:attribute>
      </rng:optional>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="text">
    <element name="text">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a single text of any kind, whether unitary or composite, for example a poem or
    drama, a collection of essays, a novel, a dictionary, or a corpus sample.</a:documentation>
      <group>
        <zeroOrMore>
          <ref name="model.global"/>
        </zeroOrMore>
        <optional>
          <ref name="front"/>
          <zeroOrMore>
            <ref name="model.global"/>
          </zeroOrMore>
        </optional>
        <choice>
          <ref name="body"/>
          <ref name="group"/>
        </choice>
        <zeroOrMore>
          <ref name="model.global"/>
        </zeroOrMore>
        <optional>
          <ref name="back"/>
          <zeroOrMore>
            <ref name="model.global"/>
          </zeroOrMore>
        </optional>
      </group>
      <ref name="att.global.attributes"/>
      <ref name="att.declaring.attributes"/>
      <ref name="att.typed.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="body">
    <element name="body">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(text body) contains the whole body of a single unitary text, excluding any front or back matter.</a:documentation>
      <group>
        <zeroOrMore>
          <ref name="model.global"/>
        </zeroOrMore>
        <optional>
          <group>
            <group>
              <ref name="model.divTop"/>
            </group>
            <zeroOrMore>
              <choice>
                <ref name="model.global"/>
                <ref name="model.divTop"/>
              </choice>
            </zeroOrMore>
          </group>
        </optional>
        <optional>
          <group>
            <group>
              <ref name="model.divGenLike"/>
            </group>
            <zeroOrMore>
              <choice>
                <ref name="model.global"/>
                <ref name="model.divGenLike"/>
              </choice>
            </zeroOrMore>
          </group>
        </optional>
        <group>
          <choice>
            <oneOrMore>
              <group>
                <group>
                  <ref name="model.divLike"/>
                </group>
                <zeroOrMore>
                  <choice>
                    <ref name="model.global"/>
                    <ref name="model.divGenLike"/>
                  </choice>
                </zeroOrMore>
              </group>
            </oneOrMore>
            <oneOrMore>
              <group>
                <group>
                  <ref name="model.div1Like"/>
                </group>
                <zeroOrMore>
                  <choice>
                    <ref name="model.global"/>
                    <ref name="model.divGenLike"/>
                  </choice>
                </zeroOrMore>
              </group>
            </oneOrMore>
            <group>
              <oneOrMore>
                <group>
                  <ref name="model.common"/>
                </group>
                <zeroOrMore>
                  <ref name="model.global"/>
                </zeroOrMore>
              </oneOrMore>
              <optional>
                <choice>
                  <oneOrMore>
                    <group>
                      <group>
                        <ref name="model.divLike"/>
                      </group>
                      <zeroOrMore>
                        <choice>
                          <ref name="model.global"/>
                          <ref name="model.divGenLike"/>
                        </choice>
                      </zeroOrMore>
                    </group>
                  </oneOrMore>
                  <oneOrMore>
                    <group>
                      <group>
                        <ref name="model.div1Like"/>
                      </group>
                      <zeroOrMore>
                        <choice>
                          <ref name="model.global"/>
                          <ref name="model.divGenLike"/>
                        </choice>
                      </zeroOrMore>
                    </group>
                  </oneOrMore>
                </choice>
              </optional>
            </group>
          </choice>
        </group>
        <zeroOrMore>
          <group>
            <group>
              <ref name="model.divBottom"/>
            </group>
            <zeroOrMore>
              <ref name="model.global"/>
            </zeroOrMore>
          </group>
        </zeroOrMore>
      </group>
      <ref name="att.global.attributes"/>
      <ref name="att.declaring.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="group">
    <element name="group">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains the body of a composite text, grouping together a sequence of distinct texts (or
    groups of such texts) which are regarded as a unit for some purpose, for example the collected
    works of an author, a sequence of prose essays, etc.</a:documentation>
      <group>
        <zeroOrMore>
          <choice>
            <ref name="model.divTop"/>
            <ref name="model.global"/>
          </choice>
        </zeroOrMore>
        <group>
          <choice>
            <ref name="text"/>
            <ref name="group"/>
          </choice>
          <zeroOrMore>
            <choice>
              <ref name="text"/>
              <ref name="group"/>
              <ref name="model.global"/>
            </choice>
          </zeroOrMore>
        </group>
        <zeroOrMore>
          <ref name="model.divBottom"/>
        </zeroOrMore>
      </group>
      <ref name="att.global.attributes"/>
      <ref name="att.declaring.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="floatingText">
    <element name="floatingText">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a single text of any kind, whether unitary or composite, which interrupts the text
    containing it at any point and after which the surrounding text resumes.</a:documentation>
      <group>
        <zeroOrMore>
          <ref name="model.global"/>
        </zeroOrMore>
        <optional>
          <ref name="front"/>
          <zeroOrMore>
            <ref name="model.global"/>
          </zeroOrMore>
        </optional>
        <choice>
          <ref name="body"/>
          <ref name="group"/>
        </choice>
        <zeroOrMore>
          <ref name="model.global"/>
        </zeroOrMore>
        <optional>
          <ref name="back"/>
          <zeroOrMore>
            <ref name="model.global"/>
          </zeroOrMore>
        </optional>
      </group>
      <ref name="att.global.attributes"/>
      <ref name="att.declaring.attributes"/>
      <ref name="att.typed.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="div">
    <element name="div">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(text division) contains a subdivision of the front, body, or back of a text.</a:documentation>
      <group>
        <zeroOrMore>
          <choice>
            <ref name="model.divTop"/>
            <ref name="model.global"/>
          </choice>
        </zeroOrMore>
        <optional>
          <choice>
            <group>
              <oneOrMore>
                <choice>
                  <ref name="model.divLike"/>
                  <ref name="model.divGenLike"/>
                </choice>
                <zeroOrMore>
                  <ref name="model.global"/>
                </zeroOrMore>
              </oneOrMore>
            </group>
            <group>
              <oneOrMore>
                <group>
                  <ref name="model.common"/>
                </group>
                <zeroOrMore>
                  <ref name="model.global"/>
                </zeroOrMore>
              </oneOrMore>
              <zeroOrMore>
                <choice>
                  <ref name="model.divLike"/>
                  <ref name="model.divGenLike"/>
                </choice>
                <zeroOrMore>
                  <ref name="model.global"/>
                </zeroOrMore>
              </zeroOrMore>
            </group>
          </choice>
          <zeroOrMore>
            <group>
              <ref name="model.divBottom"/>
            </group>
            <zeroOrMore>
              <ref name="model.global"/>
            </zeroOrMore>
          </zeroOrMore>
        </optional>
      </group>
      <ref name="att.global.attributes"/>
      <ref name="att.divLike.attributes"/>
      <ref name="att.typed.attributes"/>
      <ref name="att.declaring.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="div1">
    <element name="div1">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(level-1 text division) contains a first-level subdivision of the front, body, or back of a text.</a:documentation>
      <group>
        <zeroOrMore>
          <choice>
            <ref name="model.divTop"/>
            <ref name="model.global"/>
          </choice>
        </zeroOrMore>
        <optional>
          <choice>
            <oneOrMore>
              <choice>
                <ref name="model.div2Like"/>
                <ref name="model.divGenLike"/>
              </choice>
              <zeroOrMore>
                <ref name="model.global"/>
              </zeroOrMore>
            </oneOrMore>
            <group>
              <oneOrMore>
                <group>
                  <ref name="model.common"/>
                </group>
                <zeroOrMore>
                  <ref name="model.global"/>
                </zeroOrMore>
              </oneOrMore>
              <zeroOrMore>
                <choice>
                  <ref name="model.div2Like"/>
                  <ref name="model.divGenLike"/>
                </choice>
                <zeroOrMore>
                  <ref name="model.global"/>
                </zeroOrMore>
              </zeroOrMore>
            </group>
          </choice>
          <zeroOrMore>
            <group>
              <ref name="model.divBottom"/>
            </group>
            <zeroOrMore>
              <ref name="model.global"/>
            </zeroOrMore>
          </zeroOrMore>
        </optional>
      </group>
      <ref name="att.global.attributes"/>
      <ref name="att.divLike.attributes"/>
      <ref name="att.typed.attributes"/>
      <ref name="att.declaring.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="div2">
    <element name="div2">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(level-2 text division) contains a second-level subdivision of the front, body, or back of a
 text.</a:documentation>
      <group>
        <zeroOrMore>
          <choice>
            <ref name="model.divTop"/>
            <ref name="model.global"/>
          </choice>
        </zeroOrMore>
        <optional>
          <choice>
            <oneOrMore>
              <choice>
                <ref name="model.div3Like"/>
                <ref name="model.divGenLike"/>
              </choice>
              <zeroOrMore>
                <ref name="model.global"/>
              </zeroOrMore>
            </oneOrMore>
            <group>
              <oneOrMore>
                <group>
                  <ref name="model.common"/>
                </group>
                <zeroOrMore>
                  <ref name="model.global"/>
                </zeroOrMore>
              </oneOrMore>
              <zeroOrMore>
                <choice>
                  <ref name="model.div3Like"/>
                  <ref name="model.divGenLike"/>
                </choice>
                <zeroOrMore>
                  <ref name="model.global"/>
                </zeroOrMore>
              </zeroOrMore>
            </group>
          </choice>
          <zeroOrMore>
            <group>
              <ref name="model.divBottom"/>
            </group>
            <zeroOrMore>
              <ref name="model.global"/>
            </zeroOrMore>
          </zeroOrMore>
        </optional>
      </group>
      <ref name="att.global.attributes"/>
      <ref name="att.divLike.attributes"/>
      <ref name="att.typed.attributes"/>
      <ref name="att.declaring.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="div3">
    <element name="div3">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(level-3 text division) contains a third-level subdivision of the front, body, or back of a text.</a:documentation>
      <group>
        <zeroOrMore>
          <choice>
            <ref name="model.divTop"/>
            <ref name="model.global"/>
          </choice>
        </zeroOrMore>
        <optional>
          <choice>
            <oneOrMore>
              <choice>
                <ref name="model.div4Like"/>
                <ref name="model.divGenLike"/>
              </choice>
              <zeroOrMore>
                <ref name="model.global"/>
              </zeroOrMore>
            </oneOrMore>
            <group>
              <oneOrMore>
                <group>
                  <ref name="model.common"/>
                </group>
                <zeroOrMore>
                  <ref name="model.global"/>
                </zeroOrMore>
              </oneOrMore>
              <zeroOrMore>
                <choice>
                  <ref name="model.div4Like"/>
                  <ref name="model.divGenLike"/>
                </choice>
                <zeroOrMore>
                  <ref name="model.global"/>
                </zeroOrMore>
              </zeroOrMore>
            </group>
          </choice>
          <zeroOrMore>
            <group>
              <ref name="model.divBottom"/>
            </group>
            <zeroOrMore>
              <ref name="model.global"/>
            </zeroOrMore>
          </zeroOrMore>
        </optional>
      </group>
      <ref name="att.global.attributes"/>
      <ref name="att.divLike.attributes"/>
      <ref name="att.typed.attributes"/>
      <ref name="att.declaring.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="div4">
    <element name="div4">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(level-4 text division) contains a fourth-level subdivision of the front, body, or back of a text.</a:documentation>
      <group>
        <zeroOrMore>
          <choice>
            <ref name="model.divTop"/>
            <ref name="model.global"/>
          </choice>
        </zeroOrMore>
        <optional>
          <choice>
            <oneOrMore>
              <choice>
                <ref name="model.div5Like"/>
                <ref name="model.divGenLike"/>
              </choice>
              <zeroOrMore>
                <ref name="model.global"/>
              </zeroOrMore>
            </oneOrMore>
            <group>
              <oneOrMore>
                <group>
                  <ref name="model.common"/>
                </group>
                <zeroOrMore>
                  <ref name="model.global"/>
                </zeroOrMore>
              </oneOrMore>
              <zeroOrMore>
                <choice>
                  <ref name="model.div5Like"/>
                  <ref name="model.divGenLike"/>
                </choice>
                <zeroOrMore>
                  <ref name="model.global"/>
                </zeroOrMore>
              </zeroOrMore>
            </group>
          </choice>
          <zeroOrMore>
            <group>
              <ref name="model.divBottom"/>
            </group>
            <zeroOrMore>
              <ref name="model.global"/>
            </zeroOrMore>
          </zeroOrMore>
        </optional>
      </group>
      <ref name="att.global.attributes"/>
      <ref name="att.divLike.attributes"/>
      <ref name="att.typed.attributes"/>
      <ref name="att.declaring.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="div5">
    <element name="div5">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(level-5 text division) contains a fifth-level subdivision of the front, body, or back of a text.</a:documentation>
      <group>
        <zeroOrMore>
          <choice>
            <ref name="model.divTop"/>
            <ref name="model.global"/>
          </choice>
        </zeroOrMore>
        <optional>
          <choice>
            <oneOrMore>
              <choice>
                <ref name="model.div6Like"/>
                <ref name="model.divGenLike"/>
              </choice>
              <zeroOrMore>
                <ref name="model.global"/>
              </zeroOrMore>
            </oneOrMore>
            <group>
              <oneOrMore>
                <group>
                  <ref name="model.common"/>
                </group>
                <zeroOrMore>
                  <ref name="model.global"/>
                </zeroOrMore>
              </oneOrMore>
              <zeroOrMore>
                <choice>
                  <ref name="model.div6Like"/>
                  <ref name="model.divGenLike"/>
                </choice>
                <zeroOrMore>
                  <ref name="model.global"/>
                </zeroOrMore>
              </zeroOrMore>
            </group>
          </choice>
          <zeroOrMore>
            <group>
              <ref name="model.divBottom"/>
            </group>
            <zeroOrMore>
              <ref name="model.global"/>
            </zeroOrMore>
          </zeroOrMore>
        </optional>
      </group>
      <ref name="att.global.attributes"/>
      <ref name="att.divLike.attributes"/>
      <ref name="att.typed.attributes"/>
      <ref name="att.declaring.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="div6">
    <element name="div6">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(level-6 text division) contains a sixth-level subdivision of the front, body, or back of a text.</a:documentation>
      <group>
        <zeroOrMore>
          <choice>
            <ref name="model.divTop"/>
            <ref name="model.global"/>
          </choice>
        </zeroOrMore>
        <optional>
          <choice>
            <oneOrMore>
              <choice>
                <ref name="model.div7Like"/>
                <ref name="model.divGenLike"/>
              </choice>
              <zeroOrMore>
                <ref name="model.global"/>
              </zeroOrMore>
            </oneOrMore>
            <group>
              <oneOrMore>
                <group>
                  <ref name="model.common"/>
                </group>
                <zeroOrMore>
                  <ref name="model.global"/>
                </zeroOrMore>
              </oneOrMore>
              <zeroOrMore>
                <choice>
                  <ref name="model.div7Like"/>
                  <ref name="model.divGenLike"/>
                </choice>
                <zeroOrMore>
                  <ref name="model.global"/>
                </zeroOrMore>
              </zeroOrMore>
            </group>
          </choice>
          <zeroOrMore>
            <group>
              <ref name="model.divBottom"/>
            </group>
            <zeroOrMore>
              <ref name="model.global"/>
            </zeroOrMore>
          </zeroOrMore>
        </optional>
      </group>
      <ref name="att.global.attributes"/>
      <ref name="att.divLike.attributes"/>
      <ref name="att.typed.attributes"/>
      <ref name="att.declaring.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="div7">
    <element name="div7">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(level-7 text division) contains the smallest possible subdivision of the front, body or back of a text, larger than
    a paragraph.</a:documentation>
      <group>
        <zeroOrMore>
          <choice>
            <ref name="model.divTop"/>
            <ref name="model.global"/>
          </choice>
        </zeroOrMore>
        <optional>
          <oneOrMore>
            <group>
              <ref name="model.common"/>
            </group>
            <zeroOrMore>
              <ref name="model.global"/>
            </zeroOrMore>
          </oneOrMore>
          <zeroOrMore>
            <group>
              <ref name="model.divBottom"/>
            </group>
            <zeroOrMore>
              <ref name="model.global"/>
            </zeroOrMore>
          </zeroOrMore>
        </optional>
      </group>
      <ref name="att.global.attributes"/>
      <ref name="att.divLike.attributes"/>
      <ref name="att.typed.attributes"/>
      <ref name="att.declaring.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="trailer">
    <element name="trailer">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a closing title or footer appearing at the end of a division of a text. </a:documentation>
      <rng:ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="byline">
    <element name="byline">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains the primary statement of responsibility given for a work
on its title page or at the head or end of the work.</a:documentation>
      <zeroOrMore>
        <choice>
          <text/>
          <ref name="model.gLike"/>
          <ref name="model.phrase"/>
          <ref name="docAuthor"/>
          <ref name="model.global"/>
        </choice>
      </zeroOrMore>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="dateline">
    <element name="dateline">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a brief description of the place, date, time, etc. of production of a letter,
    newspaper story, or other work, prefixed or suffixed to it as a kind of heading or trailer. </a:documentation>
      <rng:ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="argument">
    <element name="argument">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">A formal list or prose description of the topics addressed by
	a subdivision of a text.</a:documentation>
      <group>
        <zeroOrMore>
          <choice>
            <ref name="model.global"/>
            <ref name="model.headLike"/>
          </choice>
        </zeroOrMore>
        <oneOrMore>
          <group>
            <ref name="model.common"/>
          </group>
          <zeroOrMore>
            <ref name="model.global"/>
          </zeroOrMore>
        </oneOrMore>
      </group>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="epigraph">
    <element name="epigraph">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a quotation, anonymous or attributed, appearing at the start of a section or
    chapter, or on a title page. </a:documentation>
      <zeroOrMore>
        <choice>
          <ref name="model.common"/>
          <ref name="model.global"/>
        </choice>
      </zeroOrMore>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="opener">
    <element name="opener">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">groups together dateline, byline, salutation, and similar phrases appearing as a preliminary
    group at the start of a division, especially of a letter.</a:documentation>
      <zeroOrMore>
        <choice>
          <text/>
          <ref name="model.gLike"/>
          <ref name="model.phrase"/>
          <ref name="argument"/>
          <ref name="byline"/>
          <ref name="dateline"/>
          <ref name="epigraph"/>
          <ref name="salute"/>
          <ref name="signed"/>
          <ref name="model.global"/>
        </choice>
      </zeroOrMore>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="closer">
    <element name="closer">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">groups together salutations, datelines, and similar phrases appearing as a final group at
    the end of a division, especially of a letter.</a:documentation>
      <zeroOrMore>
        <choice>
          <text/>
          <ref name="model.gLike"/>
          <ref name="signed"/>
          <ref name="dateline"/>
          <ref name="salute"/>
          <ref name="model.phrase"/>
          <ref name="model.global"/>
        </choice>
      </zeroOrMore>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="salute">
    <element name="salute">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(salutation) contains a salutation or greeting prefixed to a foreword, dedicatory epistle, or other
    division of a text, or the salutation in the closing of a letter, preface, etc.</a:documentation>
      <rng:ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="signed">
    <element name="signed">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(signature) contains the closing salutation, etc., appended to a foreword,
dedicatory epistle, or other division of a text. </a:documentation>
      <rng:ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="postscript">
    <element name="postscript">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a postscript, e.g. to a letter.</a:documentation>
      <zeroOrMore>
        <choice>
          <group>
            <ref name="model.common"/>
          </group>
          <group>
            <ref name="model.global"/>
          </group>
        </choice>
      </zeroOrMore>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="titlePage">
    <element name="titlePage">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(title page) contains the title page of a text, appearing within the front or back matter. </a:documentation>
      <group>
        <zeroOrMore>
          <ref name="model.global"/>
        </zeroOrMore>
        <group>
          <ref name="model.titlepagePart"/>
        </group>
        <zeroOrMore>
          <choice>
            <ref name="model.titlepagePart"/>
            <ref name="model.global"/>
          </choice>
        </zeroOrMore>
      </group>
      <ref name="att.global.attributes"/>
      <rng:optional>
        <rng:attribute name="type">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">classifies the title page according to any convenient typology.</a:documentation>
          <data type="Name"/>
        </rng:attribute>
      </rng:optional>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="docTitle">
    <element name="docTitle">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(document title) contains the title of a document, including all its
constituents, as given on a title page.</a:documentation>
      <group>
        <zeroOrMore>
          <ref name="model.global"/>
        </zeroOrMore>
        <oneOrMore>
          <ref name="titlePart"/>
          <zeroOrMore>
            <ref name="model.global"/>
          </zeroOrMore>
        </oneOrMore>
      </group>
      <ref name="att.global.attributes"/>
      <ref name="att.canonical.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="titlePart">
    <element name="titlePart">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a subsection or division of the title of a work, as
indicated on a title page.</a:documentation>
      <rng:ref name="macro.paraContent"/>
      <ref name="att.global.attributes"/>
      <rng:optional>
        <rng:attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="type" a:defaultValue="main">
          <a:documentation>specifies the role of this subdivision of the title.
Suggested values include: 1] main; 2] sub (subordinate); 3] alt (alternate); 4] short; 5] desc (descriptive)</a:documentation>
          <rng:choice>
            <rng:value>main</rng:value>
            <a:documentation>main title of the work
        </a:documentation>
            <rng:value>sub</rng:value>
            <a:documentation>(subordinate) subtitle  of the work
        </a:documentation>
            <rng:value>alt</rng:value>
            <a:documentation>(alternate) alternative title  of the work
        </a:documentation>
            <rng:value>short</rng:value>
            <a:documentation>abbreviated form of title</a:documentation>
            <rng:value>desc</rng:value>
            <a:documentation>(descriptive) descriptive paraphrase of the work 
   </a:documentation>
            <data type="Name"/>
          </rng:choice>
        </rng:attribute>
      </rng:optional>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="docAuthor">
    <element name="docAuthor">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(document author) contains the name of the author of the document, as given on the
title page (often but not always contained in a byline).</a:documentation>
      <rng:ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <ref name="att.canonical.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="imprimatur">
    <element name="imprimatur">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a formal statement authorizing the publication of a work, sometimes required to
    appear on a title page or its verso.</a:documentation>
      <rng:ref name="macro.paraContent"/>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="docEdition">
    <element name="docEdition">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(document edition) contains an edition statement as presented on a title page of a
document.</a:documentation>
      <rng:ref name="macro.paraContent"/>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="docImprint">
    <element name="docImprint">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(document imprint) contains the imprint statement (place and date of publication,
publisher name), as given
(usually) at the foot of a title page.</a:documentation>
      <zeroOrMore>
        <choice>
          <text/>
          <ref name="model.gLike"/>
          <ref name="model.phrase"/>
          <ref name="pubPlace"/>
          <ref name="docDate"/>
          <ref name="publisher"/>
          <ref name="model.global"/>
        </choice>
      </zeroOrMore>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="docDate">
    <element name="docDate">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(document date) contains the date of a document, as given
(usually) on a title page.</a:documentation>
      <rng:ref name="macro.phraseSeq"/>
      <ref name="att.global.attributes"/>
      <rng:optional>
        <rng:attribute name="when">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">gives the value of the date in standard form, i.e. YYYY-MM-DD.</a:documentation>
          <choice>
            <data type="date"/>
            <data type="gYear"/>
            <data type="gMonth"/>
            <data type="gDay"/>
            <data type="gYearMonth"/>
            <data type="gMonthDay"/>
            <data type="time"/>
            <data type="dateTime"/>
          </choice>
        </rng:attribute>
      </rng:optional>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="front">
    <element name="front">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(front matter) contains any prefatory matter (headers,
title page, prefaces, dedications, etc.)
found  at the start of a document, before the main body.</a:documentation>
      <group>
        <zeroOrMore>
          <choice>
            <ref name="model.frontPart"/>
            <ref name="model.pLike.front"/>
            <ref name="model.global"/>
          </choice>
        </zeroOrMore>
        <group>
          <optional>
            <choice>
              <group>
                <group>
                  <ref name="model.div1Like"/>
                </group>
                <zeroOrMore>
                  <choice>
                    <ref name="model.frontPart"/>
                    <ref name="model.div1Like"/>
                    <ref name="model.global"/>
                  </choice>
                </zeroOrMore>
              </group>
              <group>
                <group>
                  <ref name="model.divLike"/>
                </group>
                <zeroOrMore>
                  <choice>
                    <ref name="model.frontPart"/>
                    <ref name="model.divLike"/>
                    <ref name="model.global"/>
                  </choice>
                </zeroOrMore>
              </group>
            </choice>
          </optional>
        </group>
        <group>
          <optional>
            <group>
              <ref name="model.divBottomPart"/>
            </group>
            <zeroOrMore>
              <choice>
                <ref name="model.divBottomPart"/>
                <ref name="model.global"/>
              </choice>
            </zeroOrMore>
          </optional>
        </group>
      </group>
      <ref name="att.global.attributes"/>
      <ref name="att.declaring.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="back">
    <element name="back">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(back matter) contains any appendixes, etc. following the main part of a text.</a:documentation>
      <group>
        <zeroOrMore>
          <choice>
            <ref name="model.frontPart"/>
            <ref name="model.pLike.front"/>
            <ref name="model.global"/>
          </choice>
        </zeroOrMore>
        <group>
          <optional>
            <choice>
              <group>
                <group>
                  <ref name="model.div1Like"/>
                </group>
                <zeroOrMore>
                  <choice>
                    <ref name="model.frontPart"/>
                    <ref name="model.div1Like"/>
                    <ref name="model.global"/>
                  </choice>
                </zeroOrMore>
              </group>
              <group>
                <group>
                  <ref name="model.divLike"/>
                </group>
                <zeroOrMore>
                  <choice>
                    <ref name="model.frontPart"/>
                    <ref name="model.divLike"/>
                    <ref name="model.global"/>
                  </choice>
                </zeroOrMore>
              </group>
            </choice>
          </optional>
        </group>
        <group>
          <optional>
            <group>
              <ref name="model.divBottomPart"/>
            </group>
            <zeroOrMore>
              <choice>
                <ref name="model.divBottomPart"/>
                <ref name="model.global"/>
              </choice>
            </zeroOrMore>
          </optional>
        </group>
      </group>
      <ref name="att.global.attributes"/>
      <ref name="att.declaring.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.entryLike">
    <rng:choice>
      <ref name="superEntry"/>
      <ref name="entry"/>
      <ref name="entryFree"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.entryLike.attributes">
    <ref name="att.entryLike.attribute.type"/>
    <ref name="att.entryLike.attribute.sortKey"/>
    <empty/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.entryLike.attribute.type">
    <rng:optional>
      <rng:attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="type" a:defaultValue="main">
        <a:documentation>indicates type of entry, in dictionaries with multiple types.
Suggested values include: 1] main; 2] hom (homograph); 3] xref (cross reference); 4] affix; 5] abbr (abbreviation); 6] supplemental; 7] foreign</a:documentation>
        <rng:choice>
          <rng:value>main</rng:value>
          <a:documentation>a main entry (default).</a:documentation>
          <rng:value>hom</rng:value>
          <a:documentation>(homograph) groups information relating to one homograph within an entry.</a:documentation>
          <rng:value>xref</rng:value>
          <a:documentation>(cross reference) a reduced entry whose only function is to
point to another main entry (e.g. for forms of an irregular verb or
for variant spellings: was pointing to
be, or esthete to
aesthete).</a:documentation>
          <rng:value>affix</rng:value>
          <a:documentation>an entry for a prefix, infix, or suffix.</a:documentation>
          <rng:value>abbr</rng:value>
          <a:documentation>(abbreviation) an entry for an abbreviation.</a:documentation>
          <rng:value>supplemental</rng:value>
          <a:documentation>a supplemental entry (for use in dictionaries which
          issue supplements to their main work in which they include
          updated information about entries).</a:documentation>
          <rng:value>foreign</rng:value>
          <a:documentation>an entry for a foreign word in a monolingual dictionary.</a:documentation>
          <data type="Name"/>
        </rng:choice>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.entryLike.attribute.sortKey">
    <rng:optional>
      <rng:attribute name="sortKey">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a (sortable) character sequence reflecting the
      entry's alphabetical position in the printed dictionary.</a:documentation>
        <data type="token">
          <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
        </data>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.lexicographic.attributes">
    <ref name="att.lexicographic.attribute.expand"/>
    <ref name="att.lexicographic.attribute.norm"/>
    <ref name="att.lexicographic.attribute.split"/>
    <ref name="att.lexicographic.attribute.value"/>
    <ref name="att.lexicographic.attribute.orig"/>
    <ref name="att.lexicographic.attribute.location"/>
    <ref name="att.lexicographic.attribute.mergedIn"/>
    <ref name="att.lexicographic.attribute.opt"/>
    <empty/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.lexicographic.attribute.expand">
    <rng:optional>
      <rng:attribute name="expand">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">gives an expanded form of information presented more concisely in the dictionary</a:documentation>
        <text/>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.lexicographic.attribute.norm">
    <rng:optional>
      <rng:attribute name="norm">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(normalized) gives a normalized form of information given by the source text in a
                non-normalized form</a:documentation>
        <text/>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.lexicographic.attribute.split">
    <rng:optional>
      <rng:attribute name="split">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">gives the list of split values for a merged form</a:documentation>
        <text/>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.lexicographic.attribute.value">
    <rng:optional>
      <rng:attribute name="value">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">gives a value which lacks any realization in the printed source text.</a:documentation>
        <text/>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.lexicographic.attribute.orig">
    <rng:optional>
      <rng:attribute name="orig">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(original) gives the original string or is the empty string when the element does not appear
                in the source text.</a:documentation>
        <text/>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.lexicographic.attribute.location">
    <rng:optional>
      <rng:attribute name="location">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">provides a reference to an anchor element elsewhere in the document
                indicating the original location of this component.</a:documentation>
        <data type="anyURI"/>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.lexicographic.attribute.mergedIn">
    <rng:optional>
      <rng:attribute name="mergedIn">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">gives a reference to another element, where the original appears as a merged form.</a:documentation>
        <data type="anyURI"/>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.lexicographic.attribute.opt">
    <rng:optional>
      <rng:attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="opt" a:defaultValue="false">
        <a:documentation>(optional) indicates whether the element is optional or not</a:documentation>
        <data type="boolean"/>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="superEntry">
    <element name="superEntry">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">groups successive entries for a set of homographs.</a:documentation>
      <choice>
        <group>
          <optional>
            <ref name="form"/>
          </optional>
          <oneOrMore>
            <ref name="entry"/>
          </oneOrMore>
        </group>
        <ref name="dictScrap"/>
      </choice>
      <ref name="att.global.attributes"/>
      <ref name="att.entryLike.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="entry">
    <element name="entry">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a reasonably well-structured dictionary entry.</a:documentation>
      <oneOrMore>
        <choice>
          <ref name="hom"/>
          <ref name="sense"/>
          <ref name="model.entryPart.top"/>
          <ref name="model.global"/>
        </choice>
      </oneOrMore>
      <ref name="att.global.attributes"/>
      <ref name="att.entryLike.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="entryFree">
    <element name="entryFree">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(unstructured entry) contains a dictionary entry which does not necessarily conform to the constraints imposed
        by the entry element.</a:documentation>
      <zeroOrMore>
        <choice>
          <text/>
          <ref name="model.gLike"/>
          <ref name="model.entryPart"/>
          <ref name="model.phrase"/>
          <ref name="model.inter"/>
          <ref name="model.global"/>
        </choice>
      </zeroOrMore>
      <ref name="att.global.attributes"/>
      <ref name="att.entryLike.attributes"/>
      <ref name="att.lexicographic.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="hom">
    <element name="hom">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(homograph) groups information relating to one homograph within an entry.</a:documentation>
      <zeroOrMore>
        <choice>
          <ref name="sense"/>
          <ref name="model.entryPart.top"/>
          <ref name="model.global"/>
        </choice>
      </zeroOrMore>
      <ref name="att.global.attributes"/>
      <ref name="att.lexicographic.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="sense">
    <element name="sense">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">groups together all information relating to one word sense in
  a dictionary entry, for example 
    definitions, examples, and translation equivalents.</a:documentation>
      <zeroOrMore>
        <choice>
          <text/>
          <ref name="model.gLike"/>
          <ref name="sense"/>
          <ref name="model.entryPart.top"/>
          <ref name="model.phrase"/>
          <ref name="model.global"/>
        </choice>
      </zeroOrMore>
      <ref name="att.global.attributes"/>
      <ref name="att.lexicographic.attributes"/>
      <rng:optional>
        <rng:attribute name="level">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">gives the nesting depth of this sense.</a:documentation>
          <choice>
            <data type="double"/>
            <data type="decimal"/>
          </choice>
        </rng:attribute>
      </rng:optional>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="dictScrap">
    <element name="dictScrap">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(dictionary scrap) encloses a part of a dictionary entry in which other phrase-level dictionary elements are
        freely combined.</a:documentation>
      <zeroOrMore>
        <choice>
          <text/>
          <ref name="model.gLike"/>
          <ref name="model.entryPart"/>
          <ref name="model.phrase"/>
          <ref name="model.inter"/>
          <ref name="model.global"/>
        </choice>
      </zeroOrMore>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="form">
    <element name="form">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(form information group) groups all the information on the written and spoken forms of one headword.</a:documentation>
      <zeroOrMore>
        <choice>
          <text/>
          <ref name="model.gLike"/>
          <ref name="model.phrase"/>
          <ref name="model.inter"/>
          <ref name="model.formPart"/>
          <ref name="model.global"/>
        </choice>
      </zeroOrMore>
      <ref name="att.global.attributes"/>
      <ref name="att.lexicographic.attributes"/>
      <rng:optional>
        <rng:attribute name="type">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">classifies form as simple, compound, etc.
Suggested values include: 1] simple; 2] lemma; 3] variant; 4] compound; 5] derivative; 6] inflected; 7] phrase</a:documentation>
          <rng:choice>
            <rng:value>simple</rng:value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">single free lexical item</a:documentation>
            <rng:value>lemma</rng:value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">the headword itself</a:documentation>
            <rng:value>variant</rng:value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">a variant form</a:documentation>
            <rng:value>compound</rng:value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">word formed from simple lexical items</a:documentation>
            <rng:value>derivative</rng:value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">word derived from headword</a:documentation>
            <rng:value>inflected</rng:value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">word in other than usual dictionary form</a:documentation>
            <rng:value>phrase</rng:value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">multiple-word lexical item</a:documentation>
            <data type="Name"/>
          </rng:choice>
        </rng:attribute>
      </rng:optional>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="orth">
    <element name="orth">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(orthographic form) gives the orthographic form of a dictionary headword.</a:documentation>
      <rng:ref name="macro.paraContent"/>
      <ref name="att.global.attributes"/>
      <ref name="att.lexicographic.attributes"/>
      <rng:optional>
        <rng:attribute name="type">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">gives the type of spelling.</a:documentation>
          <data type="Name"/>
        </rng:attribute>
      </rng:optional>
      <rng:optional>
        <rng:attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="extent" a:defaultValue="full">
          <a:documentation>gives the extent of the orthographic information provided.
Sample values include: 1] full (full form); 2] pref (prefix); 3] suff (suffix); 4] part (partial)</a:documentation>
          <data type="Name"/>
        </rng:attribute>
      </rng:optional>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="pron">
    <element name="pron">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(pronunciation) contains the pronunciation(s) of the word.</a:documentation>
      <rng:ref name="macro.paraContent"/>
      <ref name="att.global.attributes"/>
      <ref name="att.lexicographic.attributes"/>
      <rng:optional>
        <rng:attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" name="extent" a:defaultValue="full">
          <a:documentation>indicates whether the pronunciation is for whole word or part. 
Sample values include: 1] full (full form); 2] pref (prefix); 3] suff (suffix); 4] part (partial)</a:documentation>
          <data type="Name"/>
        </rng:attribute>
      </rng:optional>
      <rng:optional>
        <rng:attribute name="notation">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates what notation is used for the pronunciation, if more than one occurs in
                the machine-readable dictionary. </a:documentation>
          <data type="Name"/>
        </rng:attribute>
      </rng:optional>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="hyph">
    <element name="hyph">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(hyphenation) contains a hyphenated form of a dictionary headword, or hyphenation information in some
        other form.</a:documentation>
      <rng:ref name="macro.paraContent"/>
      <ref name="att.global.attributes"/>
      <ref name="att.lexicographic.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="syll">
    <element name="syll">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(syllabification) contains the syllabification of the headword.</a:documentation>
      <rng:ref name="macro.paraContent"/>
      <ref name="att.global.attributes"/>
      <ref name="att.lexicographic.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="stress">
    <element name="stress">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains the stress pattern for a dictionary headword, if given separately.</a:documentation>
      <rng:ref name="macro.paraContent"/>
      <ref name="att.global.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="gram">
    <element name="gram">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(grammatical information) within an entry in a dictionary or a terminological data file, contains grammatical
        information relating to a term, word, or form.</a:documentation>
      <rng:ref name="macro.paraContent"/>
      <ref name="att.global.attributes"/>
      <ref name="att.lexicographic.attributes"/>
      <rng:optional>
        <rng:attribute name="type">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">classifies the grammatical information given according to
      some convenient typology   &#x2014; in the case of terminological information, preferably the dictionary of      data element types specified in ISO WD 12 620.
Sample values include: 1] pos (part of speech); 2] gen (gender); 3] num (number); 4] animate; 5] proper</a:documentation>
          <data type="Name"/>
        </rng:attribute>
      </rng:optional>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="gen">
    <element name="gen">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(gender) identifies the morphological gender of a lexical item, as given in the dictionary.</a:documentation>
      <rng:ref name="macro.paraContent"/>
      <ref name="att.global.attributes"/>
      <ref name="att.lexicographic.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="number">
    <element name="number">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates grammatical number associated with a form, as given in a dictionary.</a:documentation>
      <rng:ref name="macro.paraContent"/>
      <ref name="att.global.attributes"/>
      <ref name="att.lexicographic.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="case">
    <element name="case">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains grammatical case information given by a dictionary for a given form.</a:documentation>
      <rng:ref name="macro.paraContent"/>
      <ref name="att.global.attributes"/>
      <ref name="att.lexicographic.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="per">
    <element name="per">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(person) contains an indication of the grammatical person (1st, 2nd, 3rd, etc.) associated with a
    given inflected form in a dictionary.</a:documentation>
      <rng:ref name="macro.paraContent"/>
      <ref name="att.global.attributes"/>
      <ref name="att.lexicographic.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="tns">
    <element name="tns">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(tense) indicates the grammatical tense associated with a given inflected form in a dictionary.</a:documentation>
      <rng:ref name="macro.paraContent"/>
      <ref name="att.global.attributes"/>
      <ref name="att.lexicographic.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="mood">
    <element name="mood">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains information about the grammatical mood of verbs (e.g. indicative, subjunctive,
    imperative).</a:documentation>
      <rng:ref name="macro.paraContent"/>
      <ref name="att.global.attributes"/>
      <ref name="att.lexicographic.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="iType">
    <element name="iType">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(inflectional class) indicates the inflectional class associated with a lexical item.</a:documentation>
      <rng:ref name="macro.paraContent"/>
      <ref name="att.global.attributes"/>
      <ref name="att.lexicographic.attributes"/>
      <rng:optional>
        <rng:attribute name="type">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the type of indicator used to specify the inflection class, when it is
                necessary to distinguish between the usual abbreviated indications (e.g.
                    inv) and other kinds of indicators, such as special codes
                referring to conjugation patterns, etc.
Sample values include: 1] abbrev; 2] verbTable</a:documentation>
          <data type="Name"/>
        </rng:attribute>
      </rng:optional>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.morphLike">
    <rng:choice>
      <ref name="gram"/>
      <ref name="gen"/>
      <ref name="number"/>
      <ref name="case"/>
      <ref name="per"/>
      <ref name="tns"/>
      <ref name="mood"/>
      <ref name="iType"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.gramPart">
    <rng:choice>
      <ref name="model.morphLike"/>
      <ref name="gramGrp"/>
      <ref name="pos"/>
      <ref name="subc"/>
      <ref name="colloc"/>
      <ref name="usg"/>
      <ref name="lbl"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.formPart">
    <rng:choice>
      <ref name="form"/>
      <ref name="orth"/>
      <ref name="pron"/>
      <ref name="hyph"/>
      <ref name="syll"/>
      <ref name="model.gramPart"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="gramGrp">
    <element name="gramGrp">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(grammatical information group) groups morpho-syntactic information about a lexical item, e.g. pos, gen, number, case, or
        iType (inflectional class).</a:documentation>
      <zeroOrMore>
        <choice>
          <text/>
          <ref name="model.gLike"/>
          <ref name="model.phrase"/>
          <ref name="model.inter"/>
          <ref name="model.gramPart"/>
          <ref name="model.global"/>
        </choice>
      </zeroOrMore>
      <ref name="att.global.attributes"/>
      <ref name="att.lexicographic.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="pos">
    <element name="pos">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(part of speech) indicates the part of speech assigned to a dictionary 
headword  such as noun, verb, or adjective.
    </a:documentation>
      <rng:ref name="macro.paraContent"/>
      <ref name="att.global.attributes"/>
      <ref name="att.lexicographic.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="subc">
    <element name="subc">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(subcategorization) contains subcategorization information (transitive/intransitive, countable/non-countable,
        etc.)</a:documentation>
      <rng:ref name="macro.paraContent"/>
      <ref name="att.global.attributes"/>
      <ref name="att.lexicographic.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="colloc">
    <element name="colloc">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(collocate) contains a collocate of the headword.</a:documentation>
      <rng:ref name="macro.paraContent"/>
      <ref name="att.global.attributes"/>
      <ref name="att.lexicographic.attributes"/>
      <ref name="att.typed.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="def">
    <element name="def">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(definition) contains definition text in a dictionary entry.</a:documentation>
      <rng:ref name="macro.paraContent"/>
      <ref name="att.global.attributes"/>
      <ref name="att.lexicographic.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="etym">
    <element name="etym">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(etymology) encloses the etymological information in a dictionary entry.</a:documentation>
      <zeroOrMore>
        <choice>
          <text/>
          <ref name="model.gLike"/>
          <ref name="model.phrase"/>
          <ref name="model.inter"/>
          <ref name="usg"/>
          <ref name="lbl"/>
          <ref name="def"/>
          <ref name="model.morphLike"/>
          <ref name="xr"/>
          <ref name="model.global"/>
        </choice>
      </zeroOrMore>
      <ref name="att.global.attributes"/>
      <ref name="att.lexicographic.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="lang">
    <element name="lang">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(language name) name of a language mentioned in etymological or other linguistic discussion.</a:documentation>
      <rng:ref name="macro.paraContent"/>
      <ref name="att.global.attributes"/>
      <ref name="att.lexicographic.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="usg">
    <element name="usg">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(usage) contains usage information in a dictionary entry.</a:documentation>
      <rng:ref name="macro.paraContent"/>
      <ref name="att.global.attributes"/>
      <ref name="att.lexicographic.attributes"/>
      <rng:optional>
        <rng:attribute name="type">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">classifies the usage information using any convenient typology.
Sample values include: 1] geo (geographic); 2] time; 3] dom (domain); 4] reg (register); 5] style; 6] plev (preference level); 7] lang (language); 8] gram (grammatical); 9] syn (synonym); 10] hyper (hypernym); 11] colloc (collocation); 12] comp (complement); 13] obj (object); 14] subj (subject); 15] verb; 16] hint</a:documentation>
          <data type="Name"/>
        </rng:attribute>
      </rng:optional>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="lbl">
    <element name="lbl">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(label) contains a label for a form, example, translation, or other piece of
        information, e.g. abbreviation for, contraction of, literally, approximately, synonyms:,
        etc.</a:documentation>
      <rng:ref name="macro.paraContent"/>
      <ref name="att.global.attributes"/>
      <ref name="att.lexicographic.attributes"/>
      <rng:optional>
        <rng:attribute name="type">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">classifies the label using any convenient typology.</a:documentation>
          <data type="Name"/>
        </rng:attribute>
      </rng:optional>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="xr">
    <element name="xr">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(cross-reference phrase) contains a phrase, sentence, or icon referring the reader to
some other location in this or another text.</a:documentation>
      <zeroOrMore>
        <choice>
          <text/>
          <ref name="model.gLike"/>
          <ref name="model.phrase"/>
          <ref name="model.inter"/>
          <ref name="usg"/>
          <ref name="lbl"/>
          <ref name="model.global"/>
        </choice>
      </zeroOrMore>
      <ref name="att.global.attributes"/>
      <ref name="att.lexicographic.attributes"/>
      <rng:optional>
        <rng:attribute name="type">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the type of cross reference, using any convenient
typology.
Sample values include: 1] syn (synonym); 2] etym (etymological); 3] cf (compare or consult); 4] illus (illustration)</a:documentation>
          <data type="Name"/>
        </rng:attribute>
      </rng:optional>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="re">
    <element name="re">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(related entry) contains a dictionary entry for a lexical item related to the headword, such as a compound
        phrase or derived form, embedded inside a larger entry.</a:documentation>
      <zeroOrMore>
        <choice>
          <text/>
          <ref name="model.gLike"/>
          <ref name="sense"/>
          <ref name="model.entryPart.top"/>
          <ref name="model.phrase"/>
          <ref name="model.global"/>
        </choice>
      </zeroOrMore>
      <ref name="att.global.attributes"/>
      <ref name="att.lexicographic.attributes"/>
      <ref name="att.typed.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.ptrLike.form">
    <rng:choice>
      <ref name="oRef"/>
      <ref name="oVar"/>
      <ref name="pRef"/>
      <ref name="pVar"/>
    </rng:choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.ptrLike.form.attributes">
    <ref name="att.ptrLike.form.attribute.target"/>
    <empty/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="att.ptrLike.form.attribute.target">
    <rng:optional>
      <rng:attribute name="target">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">identifies the orthographic form or pronunciation referred to.</a:documentation>
        <data type="anyURI"/>
      </rng:attribute>
    </rng:optional>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="oRef">
    <element name="oRef">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(orthographic-form reference) in a dictionary example, indicates a reference to the orthographic form(s) of the headword.</a:documentation>
      <rng:empty/>
      <ref name="att.global.attributes"/>
      <ref name="att.ptrLike.form.attributes"/>
      <ref name="att.lexicographic.attributes"/>
      <rng:optional>
        <rng:attribute name="type">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the kind of typographic modification made to the headword in the reference.
Sample values include: 1] cap (capital); 2] noHyph (no hyphen)</a:documentation>
          <data type="Name"/>
        </rng:attribute>
      </rng:optional>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="oVar">
    <element name="oVar">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(orthographic-variant reference) in a dictionary example, indicates a reference to variant orthographic form(s) of the
    headword.</a:documentation>
      <zeroOrMore>
        <choice>
          <text/>
          <ref name="model.gLike"/>
          <ref name="oRef"/>
        </choice>
      </zeroOrMore>
      <ref name="att.global.attributes"/>
      <ref name="att.ptrLike.form.attributes"/>
      <ref name="att.lexicographic.attributes"/>
      <rng:optional>
        <rng:attribute name="type">
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the kind of variant involved.
Sample values include: 1] pt (past tense); 2] pp (past participle); 3] prp (present participle); 4] f (feminine); 5] pl (plural)</a:documentation>
          <data type="Name"/>
        </rng:attribute>
      </rng:optional>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="pRef">
    <element name="pRef">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(pronunciation reference) in a dictionary example, indicates a reference to the pronunciation(s) of the headword.</a:documentation>
      <rng:empty/>
      <ref name="att.global.attributes"/>
      <ref name="att.ptrLike.form.attributes"/>
      <ref name="att.lexicographic.attributes"/>
      <empty/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="pVar">
    <element name="pVar">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(pronunciation-variant reference) in a dictionary example, indicates a reference to variant pronunciation(s) of the headword.</a:documentation>
      <zeroOrMore>
        <choice>
          <text/>
          <ref name="model.gLike"/>
          <ref name="pRef"/>
        </choice>
      </zeroOrMore>
      <ref name="att.global.attributes"/>
      <ref name="att.ptrLike.form.attributes"/>
      <ref name="att.lexicographic.attributes"/>
      <empty/>
    </element>
  </define>
  <rng:start>
    <rng:ref name="TEI"/>
  </rng:start>
</rng:grammar>
