<?xml version="1.0" encoding="utf-8"?>
<grammar xmlns="http://relaxng.org/ns/structure/1.0"
         xmlns:xlink="http://www.w3.org/1999/xlink"
         datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"
         ns="http://www.tei-c.org/ns/1.0"><!--
Schema generated from ODD source 2013-01-17T20:32:52Z. 
Edition: 2.3.0. Last updated on 17th January 2013.
Edition Location: http://www.tei-c.org/Vault/P5/2.3.0/

--><!--
          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 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 name="macro.phraseSeq">
      <zeroOrMore>
         <choice>
            <text/>
            <ref name="model.gLike"/>
            <ref name="model.phrase"/>
            <ref name="model.global"/>
         </choice>
      </zeroOrMore>
   </define>
   <define 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 name="data.language">
      <data type="language"/>
   </define>
   <define name="data.pointer">
      <data type="anyURI"/>
   </define>
   <define name="data.word">
      <data type="token">
         <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
      </data>
   </define>
   <define name="data.text">
      <data type="string"/>
   </define>
   <define name="data.name">
      <data type="Name"/>
   </define>
   <define name="data.enumerated">
      <ref name="data.name"/>
   </define>
   <define name="att.canonical.attributes">
      <ref name="att.canonical.attribute.key"/>
      <ref name="att.canonical.attribute.ref"/>
   </define>
   <define name="att.canonical.attribute.key">
      <optional>
         <attribute name="key">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">provides an externally-defined means of identifying the entity (or entities) being
        named, using a coded value of some kind.</a:documentation>
            <ref name="data.text"/>
         </attribute>
      </optional>
   </define>
   <define name="att.canonical.attribute.ref">
      <optional>
         <attribute name="ref">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(reference) provides an explicit means of locating a full definition for the entity being named by
        means of one or more URIs.</a:documentation>
            <list>
               <oneOrMore>
                  <ref name="data.pointer"/>
               </oneOrMore>
            </list>
         </attribute>
      </optional>
   </define>
   <define name="att.divLike.attributes">
      <empty/>
   </define>
   <define 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.style"/>
      <ref name="att.global.attribute.rendition"/>
   </define>
   <define name="att.global.attribute.xmlid">
      <optional>
         <attribute name="xml:id">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(identifier) provides a unique identifier for the element bearing the attribute.</a:documentation>
            <data type="ID"/>
         </attribute>
      </optional>
   </define>
   <define name="att.global.attribute.n">
      <optional>
         <attribute name="n">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(number) gives a number (or other label) for an element, which is not necessarily unique within
        the document.</a:documentation>
            <ref name="data.text"/>
         </attribute>
      </optional>
   </define>
   <define name="att.global.attribute.xmllang">
      <optional>
         <attribute name="xml:lang">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(language) indicates the language of the element content using a tag generated
        according to BCP 47. 
         </a:documentation>
            <ref name="data.language"/>
         </attribute>
      </optional>
   </define>
   <define name="att.global.attribute.style">
      <optional>
         <attribute name="style">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains an expression in some formal style definition language
which defines the rendering or presentation
used for this element in the source text </a:documentation>
            <ref name="data.text"/>
         </attribute>
      </optional>
   </define>
   <define name="att.global.attribute.rendition">
      <optional>
         <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>
            <list>
               <oneOrMore>
                  <ref name="data.pointer"/>
               </oneOrMore>
            </list>
         </attribute>
      </optional>
   </define>
   <define name="att.naming.attributes">
      <ref name="att.canonical.attributes"/>
      <ref name="att.naming.attribute.role"/>
      <ref name="att.naming.attribute.nymRef"/>
   </define>
   <define name="att.naming.attribute.role">
      <optional>
         <attribute name="role">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">may be used to specify further information about the entity referenced by
this name, for example the occupation of a person, or the status of a place. </a:documentation>
            <ref name="data.enumerated"/>
         </attribute>
      </optional>
   </define>
   <define name="att.naming.attribute.nymRef">
      <optional>
         <attribute name="nymRef">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(reference to the canonical name) provides a means of locating the canonical form
      (nym) of the names associated with the object
       named by
      the element bearing it.</a:documentation>
            <list>
               <oneOrMore>
                  <ref name="data.pointer"/>
               </oneOrMore>
            </list>
         </attribute>
      </optional>
   </define>
   <define name="att.placement.attributes">
      <ref name="att.placement.attribute.place"/>
   </define>
   <define name="att.placement.attribute.place">
      <optional>
         <attribute name="place">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies where this item is placed
Suggested values include: 1] below; 2] bottom; 3] margin; 4] top; 5] opposite; 6] overleaf; 7] above; 8] end; 9] inline; 10] inspace</a:documentation>
            <list>
               <oneOrMore>
                  <choice>
                     <value>below</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">below the line</a:documentation>
                     <value>bottom</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">at the foot of the page</a:documentation>
                     <value>margin</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">in the margin (left, right, or both)</a:documentation>
                     <value>top</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">at the top of the page</a:documentation>
                     <value>opposite</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">on the opposite, i.e. facing, page</a:documentation>
                     <value>overleaf</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">on the other side of the leaf</a:documentation>
                     <value>above</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">above the line</a:documentation>
                     <value>end</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">at the end of e.g. chapter or volume.</a:documentation>
                     <value>inline</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">within the body of the text.</a:documentation>
                     <value>inspace</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"> in a predefined space, for example left by an earlier scribe.</a:documentation>
                     <data type="Name"/>
                  </choice>
               </oneOrMore>
            </list>
         </attribute>
      </optional>
   </define>
   <define name="att.typed.attributes">
      <ref name="att.typed.attribute.type"/>
      <ref name="att.typed.attribute.subtype"/>
   </define>
   <define name="att.typed.attribute.type">
      <optional>
         <attribute name="type">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">characterizes the element in some sense, using any convenient
 classification scheme or typology.</a:documentation>
            <ref name="data.enumerated"/>
         </attribute>
      </optional>
   </define>
   <define name="att.typed.attribute.subtype">
      <optional>
         <attribute name="subtype">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">provides a sub-categorization of the element, if needed</a:documentation>
            <ref name="data.enumerated"/>
         </attribute>
      </optional>
   </define>
   <define name="att.sortable.attributes">
      <ref name="att.sortable.attribute.sortKey"/>
   </define>
   <define name="att.sortable.attribute.sortKey">
      <optional>
         <attribute name="sortKey">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">supplies the sort key for this element in an index, list or group which contains it.</a:documentation>
            <ref name="data.word"/>
         </attribute>
      </optional>
   </define>
   <define name="model.emphLike">
      <choice>
         <ref name="title"/>
      </choice>
   </define>
   <define name="model.emphLike_alternation">
      <choice>
         <ref name="title"/>
      </choice>
   </define>
   <define name="model.emphLike_sequence">
      <ref name="title"/>
   </define>
   <define name="model.emphLike_sequenceOptional">
      <optional>
         <ref name="title"/>
      </optional>
   </define>
   <define name="model.emphLike_sequenceOptionalRepeatable">
      <zeroOrMore>
         <ref name="title"/>
      </zeroOrMore>
   </define>
   <define name="model.emphLike_sequenceRepeatable">
      <oneOrMore>
         <ref name="title"/>
      </oneOrMore>
   </define>
   <define name="model.highlighted">
      <choice>
         <ref name="model.emphLike"/>
      </choice>
   </define>
   <define name="model.gLike">
      <notAllowed/>
   </define>
   <define name="model.biblLike">
      <notAllowed/>
   </define>
   <define name="model.biblLike_alternation">
      <notAllowed/>
   </define>
   <define name="model.biblLike_sequence">
      <empty/>
   </define>
   <define name="model.biblLike_sequenceOptional">
      <empty/>
   </define>
   <define name="model.biblLike_sequenceOptionalRepeatable">
      <empty/>
   </define>
   <define name="model.biblLike_sequenceRepeatable">
      <notAllowed/>
   </define>
   <define name="model.headLike">
      <choice>
         <ref name="head"/>
      </choice>
   </define>
   <define name="model.headLike_alternation">
      <choice>
         <ref name="head"/>
      </choice>
   </define>
   <define name="model.headLike_sequence">
      <ref name="head"/>
   </define>
   <define name="model.headLike_sequenceOptional">
      <optional>
         <ref name="head"/>
      </optional>
   </define>
   <define name="model.headLike_sequenceOptionalRepeatable">
      <zeroOrMore>
         <ref name="head"/>
      </zeroOrMore>
   </define>
   <define name="model.headLike_sequenceRepeatable">
      <oneOrMore>
         <ref name="head"/>
      </oneOrMore>
   </define>
   <define name="model.labelLike">
      <choice>
         <ref name="label"/>
      </choice>
   </define>
   <define name="model.labelLike_alternation">
      <choice>
         <ref name="label"/>
      </choice>
   </define>
   <define name="model.labelLike_sequence">
      <ref name="label"/>
   </define>
   <define name="model.labelLike_sequenceOptional">
      <optional>
         <ref name="label"/>
      </optional>
   </define>
   <define name="model.labelLike_sequenceOptionalRepeatable">
      <zeroOrMore>
         <ref name="label"/>
      </zeroOrMore>
   </define>
   <define name="model.labelLike_sequenceRepeatable">
      <oneOrMore>
         <ref name="label"/>
      </oneOrMore>
   </define>
   <define name="model.listLike">
      <choice>
         <ref name="list"/>
      </choice>
   </define>
   <define name="model.listLike_alternation">
      <choice>
         <ref name="list"/>
      </choice>
   </define>
   <define name="model.listLike_sequence">
      <ref name="list"/>
   </define>
   <define name="model.listLike_sequenceOptional">
      <optional>
         <ref name="list"/>
      </optional>
   </define>
   <define name="model.listLike_sequenceOptionalRepeatable">
      <zeroOrMore>
         <ref name="list"/>
      </zeroOrMore>
   </define>
   <define name="model.listLike_sequenceRepeatable">
      <oneOrMore>
         <ref name="list"/>
      </oneOrMore>
   </define>
   <define name="model.lLike">
      <notAllowed/>
   </define>
   <define name="model.lLike_alternation">
      <notAllowed/>
   </define>
   <define name="model.lLike_sequence">
      <empty/>
   </define>
   <define name="model.lLike_sequenceOptional">
      <empty/>
   </define>
   <define name="model.lLike_sequenceOptionalRepeatable">
      <empty/>
   </define>
   <define name="model.lLike_sequenceRepeatable">
      <notAllowed/>
   </define>
   <define name="model.pLike">
      <choice>
         <ref name="p"/>
      </choice>
   </define>
   <define name="model.pLike_alternation">
      <choice>
         <ref name="p"/>
      </choice>
   </define>
   <define name="model.pLike_sequence">
      <ref name="p"/>
   </define>
   <define name="model.pLike_sequenceOptional">
      <optional>
         <ref name="p"/>
      </optional>
   </define>
   <define name="model.pLike_sequenceOptionalRepeatable">
      <zeroOrMore>
         <ref name="p"/>
      </zeroOrMore>
   </define>
   <define name="model.pLike_sequenceRepeatable">
      <oneOrMore>
         <ref name="p"/>
      </oneOrMore>
   </define>
   <define name="model.divPart">
      <choice>
         <ref name="model.lLike"/>
         <ref name="model.pLike"/>
      </choice>
   </define>
   <define name="model.publicationStmtPart">
      <notAllowed/>
   </define>
   <define name="model.respLike">
      <choice>
         <ref name="author"/>
      </choice>
   </define>
   <define name="model.divTopPart">
      <choice>
         <ref name="model.headLike"/>
      </choice>
   </define>
   <define name="model.divTop">
      <choice>
         <ref name="model.divTopPart"/>
      </choice>
   </define>
   <define name="model.pLike.front">
      <choice>
         <ref name="head"/>
      </choice>
   </define>
   <define name="model.divBottomPart">
      <notAllowed/>
   </define>
   <define name="model.divBottom">
      <choice>
         <ref name="model.divBottomPart"/>
      </choice>
   </define>
   <define name="model.global">
      <notAllowed/>
   </define>
   <define name="model.frontPart">
      <notAllowed/>
   </define>
   <define name="model.inter">
      <choice>
         <ref name="model.biblLike"/>
         <ref name="model.labelLike"/>
         <ref name="model.listLike"/>
      </choice>
   </define>
   <define name="model.common">
      <choice>
         <ref name="model.divPart"/>
         <ref name="model.inter"/>
      </choice>
   </define>
   <define name="model.phrase">
      <choice>
         <ref name="model.highlighted"/>
      </choice>
   </define>
   <define name="model.divLike">
      <choice>
         <ref name="div"/>
      </choice>
   </define>
   <define name="model.divGenLike">
      <notAllowed/>
   </define>
   <define name="model.div1Like">
      <notAllowed/>
   </define>
   <define name="model.teiHeaderPart">
      <notAllowed/>
   </define>
   <define name="model.sourceDescPart">
      <notAllowed/>
   </define>
   <define name="model.resourceLike">
      <notAllowed/>
   </define>
   <define name="p">
      <element name="p">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(paragraph) marks paragraphs in prose. [3.1.  7.2.5. ]</a:documentation>
         <ref name="macro.paraContent"/>
         <ref name="att.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="list">
      <element name="list">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(list) contains any sequence of items organized as a list. [3.7. ]</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>
                  <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"/>
         <ref name="att.sortable.attributes"/>
         <optional>
            <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>
               <choice>
                  <value>ordered</value>
                  <a:documentation>list items are numbered or lettered. </a:documentation>
                  <value>bulleted</value>
                  <a:documentation>list items are marked with a bullet or other typographic device. </a:documentation>
                  <value>simple</value>
                  <a:documentation>list items are not numbered or bulleted. </a:documentation>
                  <value>gloss</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"/>
               </choice>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="item">
      <element name="item">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains one component of a list. [3.7.  2.5. ]</a:documentation>
         <ref name="macro.specialPara"/>
         <ref name="att.global.attributes"/>
         <ref name="att.sortable.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="label">
      <element name="label">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains any label or heading used to identify part of a text,
  typically but not exclusively in a list or glossary. [3.7. ]</a:documentation>
         <ref name="macro.phraseSeq"/>
         <ref name="att.global.attributes"/>
         <ref name="att.typed.attributes"/>
         <ref name="att.placement.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="head">
      <element name="head">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(heading) contains any type of heading, for example the title of a section, or the heading of a list,
    glossary, manuscript description, etc. [4.2.1. ]</a:documentation>
         <zeroOrMore>
            <choice>
               <text/>
               <ref name="model.gLike"/>
               <ref name="model.phrase"/>
               <ref name="model.inter"/>
               <ref name="model.lLike"/>
               <ref name="model.global"/>
            </choice>
         </zeroOrMore>
         <ref name="att.global.attributes"/>
         <ref name="att.typed.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="author">
      <element name="author">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">in a bibliographic reference, contains the name(s) of an
  author, personal or corporate, of a work; for example in the same
  form as that provided by a recognized bibliographic name authority.  [3.11.2.2.  2.2.1. ]</a:documentation>
         <ref name="macro.phraseSeq"/>
         <ref name="att.global.attributes"/>
         <ref name="att.naming.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="title">
      <element name="title">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a title for any kind of work. [3.11.2.2.  2.2.1.  2.2.5. ]</a:documentation>
         <ref name="macro.paraContent"/>
         <ref name="att.global.attributes"/>
         <ref name="att.canonical.attributes"/>
         <ref name="att.typed.attribute.subtype"/>
         <optional>
            <attribute name="type">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">classifies the title according to some convenient typology.
Sample values include: 1] main; 2] sub(subordinate) ; 3] alt(alternate) ; 4] short; 5] desc(descriptive) </a:documentation>
               <ref name="data.enumerated"/>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="teiHeader">
      <element name="teiHeader">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(TEI Header) supplies the descriptive and declarative information making up an electronic title page
    prefixed to every TEI-conformant text. [2.1.1.  15.1. ]</a:documentation>
         <group>
            <ref name="fileDesc"/>
            <zeroOrMore>
               <ref name="model.teiHeaderPart"/>
            </zeroOrMore>
         </group>
         <ref name="att.global.attributes"/>
         <optional>
            <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                       name="type"
                       a:defaultValue="text">
               <a:documentation>specifies the kind of document to which the header is attached, for example whether it
        is a corpus or individual text.
Sample values include: 1] text; 2] corpus</a:documentation>
               <ref name="data.enumerated"/>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="fileDesc">
      <element name="fileDesc">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(file description) contains a full bibliographic description of an electronic file. [2.2.  2.1.1. ]</a:documentation>
         <group>
            <group>
               <ref name="titleStmt"/>
               <ref name="publicationStmt"/>
            </group>
            <oneOrMore>
               <ref name="sourceDesc"/>
            </oneOrMore>
         </group>
         <ref name="att.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="titleStmt">
      <element name="titleStmt">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(title statement) groups information about the title of a work and those responsible for its content. [2.2.1.  2.2. ]</a:documentation>
         <group>
            <oneOrMore>
               <ref name="title"/>
            </oneOrMore>
            <zeroOrMore>
               <ref name="model.respLike"/>
            </zeroOrMore>
         </group>
         <ref name="att.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="publicationStmt">
      <element name="publicationStmt">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(publication statement) groups information concerning the publication or distribution of an electronic or other
    text.  [2.2.4.  2.2. ]</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 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. [2.2.7. ]</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"/>
         <empty/>
      </element>
   </define>
   <define name="TEI">
      <element name="TEI">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(TEI document) contains a single TEI-conformant document,
comprising a TEI header and a text, either in isolation or as part of a
teiCorpus element. [4.  15.1. ]</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>
    
         <ns xmlns="http://purl.oclc.org/dsdl/schematron"
             prefix="tei"
             uri="http://www.tei-c.org/ns/1.0"/>
    
  
    
         <ns xmlns="http://purl.oclc.org/dsdl/schematron"
             prefix="rng"
             uri="http://relaxng.org/ns/structure/1.0"/>
    
         <ref name="att.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="text">
      <element name="text">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a single text of any kind, whether unitary or composite, for example a poem or
    drama, a collection of essays, a novel, a dictionary, or a corpus sample. [4.  15.1. ]</a:documentation>
         <group>
            <zeroOrMore>
               <ref name="model.global"/>
            </zeroOrMore>
            <optional>
               <ref name="front"/>
               <zeroOrMore>
                  <ref name="model.global"/>
               </zeroOrMore>
            </optional>
            <choice>
               <ref name="body"/>
            </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.typed.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="body">
      <element name="body">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(text body) contains the whole body of a single unitary text, excluding any front or back matter. [4. ]</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"/>
         <empty/>
      </element>
   </define>
   <define name="div">
      <element name="div">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(text division) contains a subdivision of the front, body, or back of a text. [4.1. ]</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"/>
         <empty/>
      </element>
   </define>
   <define name="front">
      <element name="front">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(front matter) contains any prefatory matter (headers,
title page, prefaces, dedications, etc.)
found  at the start of a document, before the main body. [4.6.  4. ]</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"/>
         <empty/>
      </element>
   </define>
   <define name="back">
      <element name="back">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(back matter) contains any appendixes, etc. following the main part of a text. [4.7.  4. ]</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"/>
         <empty/>
      </element>
   </define>
   <start>
      <ref name="TEI"/>
   </start>
</grammar>
