<grammar xmlns="http://relaxng.org/ns/structure/1.0"
         xmlns:xlink="http://www.w3.org/1999/xlink"
         xmlns:tei="http://www.tei-c.org/ns/1.0"
         xmlns:teix="http://www.tei-c.org/ns/Examples"
         datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"
         ns="http://www.tei-c.org/ns/1.0"><!--
Schema generated from ODD source 2018-10-09T14:26:23Z. .
TEI Edition: Version 3.4.0. Last updated on
	23rd July 2018, revision 1fa0b54
TEI Edition Location: http://www.tei-c.org/Vault/P5/Version 3.4.0/
  
--><!---->
   <div ns="http://www.w3.org/2000/svg"
        datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
      <define name="Boolean.datatype">
         <choice>
            <value>false</value>
            <value>true</value>
         </choice>
      </define>
      <define name="ClipFillRule.datatype">
         <choice>
            <value>nonzero</value>
            <value>evenodd</value>
            <value>inherit</value>
         </choice>
      </define>
      <define name="ContentType.datatype">
         <data type="string" datatypeLibrary=""/>
      </define>
      <define name="Coordinate.datatype">
         <data type="string" datatypeLibrary=""/>
      </define>
      <define name="Coordinates.datatype">
         <data type="string" datatypeLibrary=""/>
      </define>
      <define name="Color.datatype">
         <data type="string" datatypeLibrary=""/>
      </define>
      <define name="Integer.datatype">
         <data type="string" datatypeLibrary=""/>
      </define>
      <define name="LanguageCode.datatype">
         <data type="NMTOKEN"/>
      </define>
      <define name="LanguageCodes.datatype">
         <data type="string" datatypeLibrary=""/>
      </define>
      <define name="Length.datatype">
         <data type="string" datatypeLibrary=""/>
      </define>
      <define name="Lengths.datatype">
         <data type="string" datatypeLibrary=""/>
      </define>
      <define name="Number.datatype">
         <data type="string" datatypeLibrary=""/>
      </define>
      <define name="Numbers.datatype">
         <data type="string" datatypeLibrary=""/>
      </define>
      <define name="OpacityValue.datatype">
         <data type="string" datatypeLibrary=""/>
      </define>
      <define name="PathData.datatype">
         <data type="string" datatypeLibrary=""/>
      </define>
      <define name="PreserveAspectRatioSpec.datatype">
         <data type="string" datatypeLibrary=""/>
      </define>
      <define name="Script.datatype">
         <data type="string" datatypeLibrary=""/>
      </define>
      <define name="SVGColor.datatype">
         <data type="string" datatypeLibrary=""/>
      </define>
      <define name="Text.datatype">
         <data type="string" datatypeLibrary=""/>
      </define>
      <define name="TransformList.datatype">
         <data type="string" datatypeLibrary=""/>
      </define>
      <define name="URI.datatype">
         <data type="string" datatypeLibrary=""/>
      </define>
      <define name="ViewBoxSpec.datatype">
         <data type="string" datatypeLibrary=""/>
      </define>
      <define name="XLINK.xmlns.attrib">
         <empty/>
      </define>
      <define name="SVG.xmlns.attrib">
         <ref name="XLINK.xmlns.attrib"/>
      </define>
      <define name="SVG.Description.extra.class">
         <notAllowed/>
      </define>
      <define name="SVG.Description.class">
         <choice>
            <ref name="desc"/>
            <ref name="title"/>
            <ref name="metadata"/>
            <ref name="SVG.Description.extra.class"/>
         </choice>
      </define>
      <define name="SVG.Use.extra.class">
         <notAllowed/>
      </define>
      <define name="SVG.Use.class">
         <choice>
            <ref name="use"/>
            <ref name="SVG.Use.extra.class"/>
         </choice>
      </define>
      <define name="SVG.Structure.extra.class">
         <notAllowed/>
      </define>
      <define name="SVG.Structure.class">
         <choice>
            <ref name="svg"/>
            <ref name="g"/>
            <ref name="defs"/>
            <ref name="symbol"/>
            <ref name="SVG.Use.class"/>
            <ref name="SVG.Structure.extra.class"/>
         </choice>
      </define>
      <define name="SVG.Conditional.extra.class">
         <notAllowed/>
      </define>
      <define name="SVG.Conditional.class">
         <choice>
            <ref name="switch"/>
            <ref name="SVG.Conditional.extra.class"/>
         </choice>
      </define>
      <define name="SVG.Image.extra.class">
         <notAllowed/>
      </define>
      <define name="SVG.Image.class">
         <choice>
            <ref name="image"/>
            <ref name="SVG.Image.extra.class"/>
         </choice>
      </define>
      <define name="SVG.Style.extra.class">
         <notAllowed/>
      </define>
      <define name="SVG.Style.class">
         <choice>
            <ref name="style"/>
            <ref name="SVG.Style.extra.class"/>
         </choice>
      </define>
      <define name="SVG.Shape.extra.class">
         <notAllowed/>
      </define>
      <define name="SVG.Shape.class">
         <choice>
            <ref name="path"/>
            <ref name="rect"/>
            <ref name="circle"/>
            <ref name="line"/>
            <ref name="ellipse"/>
            <ref name="polyline"/>
            <ref name="polygon"/>
            <ref name="SVG.Shape.extra.class"/>
         </choice>
      </define>
      <define name="SVG.Text.extra.class">
         <notAllowed/>
      </define>
      <define name="SVG.Text.class">
         <choice>
            <ref name="text"/>
            <ref name="altGlyphDef"/>
            <ref name="SVG.Text.extra.class"/>
         </choice>
      </define>
      <define name="SVG.TextContent.extra.class">
         <notAllowed/>
      </define>
      <define name="SVG.TextContent.class">
         <choice>
            <ref name="tspan"/>
            <ref name="tref"/>
            <ref name="textPath"/>
            <ref name="altGlyph"/>
            <ref name="SVG.TextContent.extra.class"/>
         </choice>
      </define>
      <define name="SVG.Marker.extra.class">
         <notAllowed/>
      </define>
      <define name="SVG.Marker.class">
         <choice>
            <ref name="marker"/>
            <ref name="SVG.Marker.extra.class"/>
         </choice>
      </define>
      <define name="SVG.ColorProfile.extra.class">
         <notAllowed/>
      </define>
      <define name="SVG.ColorProfile.class">
         <choice>
            <ref name="color-profile"/>
            <ref name="SVG.ColorProfile.extra.class"/>
         </choice>
      </define>
      <define name="SVG.Gradient.extra.class">
         <notAllowed/>
      </define>
      <define name="SVG.Gradient.class">
         <choice>
            <ref name="linearGradient"/>
            <ref name="radialGradient"/>
            <ref name="SVG.Gradient.extra.class"/>
         </choice>
      </define>
      <define name="SVG.Pattern.extra.class">
         <notAllowed/>
      </define>
      <define name="SVG.Pattern.class">
         <choice>
            <ref name="svgpattern"/>
            <ref name="SVG.Pattern.extra.class"/>
         </choice>
      </define>
      <define name="SVG.Clip.extra.class">
         <notAllowed/>
      </define>
      <define name="SVG.Clip.class">
         <choice>
            <ref name="clipPath"/>
            <ref name="SVG.Clip.extra.class"/>
         </choice>
      </define>
      <define name="SVG.Mask.extra.class">
         <notAllowed/>
      </define>
      <define name="SVG.Mask.class">
         <choice>
            <ref name="mask"/>
            <ref name="SVG.Mask.extra.class"/>
         </choice>
      </define>
      <define name="SVG.Filter.extra.class">
         <notAllowed/>
      </define>
      <define name="SVG.Filter.class">
         <choice>
            <ref name="filter"/>
            <ref name="SVG.Filter.extra.class"/>
         </choice>
      </define>
      <define name="SVG.FilterPrimitive.extra.class">
         <notAllowed/>
      </define>
      <define name="SVG.FilterPrimitive.class">
         <choice>
            <ref name="feBlend"/>
            <ref name="feColorMatrix"/>
            <ref name="feComponentTransfer"/>
            <ref name="feComposite"/>
            <ref name="feConvolveMatrix"/>
            <ref name="feDiffuseLighting"/>
            <ref name="feDisplacementMap"/>
            <ref name="feFlood"/>
            <ref name="feGaussianBlur"/>
            <ref name="feImage"/>
            <ref name="feMerge"/>
            <ref name="feMorphology"/>
            <ref name="feOffset"/>
            <ref name="feSpecularLighting"/>
            <ref name="feTile"/>
            <ref name="feTurbulence"/>
            <ref name="SVG.FilterPrimitive.extra.class"/>
         </choice>
      </define>
      <define name="SVG.Cursor.extra.class">
         <notAllowed/>
      </define>
      <define name="SVG.Cursor.class">
         <choice>
            <ref name="cursor"/>
            <ref name="SVG.Cursor.extra.class"/>
         </choice>
      </define>
      <define name="SVG.Hyperlink.extra.class">
         <notAllowed/>
      </define>
      <define name="SVG.Hyperlink.class">
         <choice>
            <ref name="a"/>
            <ref name="SVG.Hyperlink.extra.class"/>
         </choice>
      </define>
      <define name="SVG.View.extra.class">
         <notAllowed/>
      </define>
      <define name="SVG.View.class">
         <choice>
            <ref name="view"/>
            <ref name="SVG.View.extra.class"/>
         </choice>
      </define>
      <define name="SVG.Script.extra.class">
         <notAllowed/>
      </define>
      <define name="SVG.Script.class">
         <choice>
            <ref name="script"/>
            <ref name="SVG.Script.extra.class"/>
         </choice>
      </define>
      <define name="SVG.Animation.extra.class">
         <notAllowed/>
      </define>
      <define name="SVG.Animation.class">
         <choice>
            <ref name="animate"/>
            <ref name="set"/>
            <ref name="animateMotion"/>
            <ref name="animateColor"/>
            <ref name="animateTransform"/>
            <ref name="SVG.Animation.extra.class"/>
         </choice>
      </define>
      <define name="SVG.Font.extra.class">
         <notAllowed/>
      </define>
      <define name="SVG.Font.class">
         <choice>
            <ref name="font"/>
            <ref name="font-face"/>
            <ref name="SVG.Font.extra.class"/>
         </choice>
      </define>
      <define name="SVG.Extensibility.extra.class">
         <notAllowed/>
      </define>
      <define name="SVG.Extensibility.class">
         <choice>
            <ref name="foreignObject"/>
            <ref name="SVG.Extensibility.extra.class"/>
         </choice>
      </define>
      <define name="ExtensionList.datatype">
         <data type="string" datatypeLibrary=""/>
      </define>
      <define name="FeatureList.datatype">
         <data type="string" datatypeLibrary=""/>
      </define>
      <define name="SVG.Conditional.extra.attrib">
         <empty/>
      </define>
      <define name="SVG.Conditional.attrib">
         <optional>
            <attribute name="requiredFeatures">
               <ref name="FeatureList.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="requiredExtensions">
               <ref name="ExtensionList.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="systemLanguage">
               <ref name="LanguageCodes.datatype"/>
            </attribute>
         </optional>
         <ref name="SVG.Conditional.extra.attrib"/>
      </define>
      <define name="ClassList.datatype">
         <data type="string" datatypeLibrary=""/>
      </define>
      <define name="StyleSheet.datatype">
         <data type="string" datatypeLibrary=""/>
      </define>
      <define name="SVG.Style.extra.attrib">
         <empty/>
      </define>
      <define name="SVG.Style.attrib">
         <optional>
            <attribute name="style">
               <ref name="StyleSheet.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="class">
               <ref name="ClassList.datatype"/>
            </attribute>
         </optional>
         <ref name="SVG.Style.extra.attrib"/>
      </define>
      <define name="BaselineShiftValue.datatype">
         <data type="string" datatypeLibrary=""/>
      </define>
      <define name="FontFamilyValue.datatype">
         <data type="string" datatypeLibrary=""/>
      </define>
      <define name="FontSizeValue.datatype">
         <data type="string" datatypeLibrary=""/>
      </define>
      <define name="FontSizeAdjustValue.datatype">
         <data type="string" datatypeLibrary=""/>
      </define>
      <define name="GlyphOrientationHorizontalValue.datatype">
         <data type="string" datatypeLibrary=""/>
      </define>
      <define name="GlyphOrientationVerticalValue.datatype">
         <data type="string" datatypeLibrary=""/>
      </define>
      <define name="KerningValue.datatype">
         <data type="string" datatypeLibrary=""/>
      </define>
      <define name="SpacingValue.datatype">
         <data type="string" datatypeLibrary=""/>
      </define>
      <define name="TextDecorationValue.datatype">
         <data type="string" datatypeLibrary=""/>
      </define>
      <define name="SVG.Text.extra.attrib">
         <empty/>
      </define>
      <define name="SVG.Text.attrib">
         <optional>
            <attribute name="writing-mode">
               <choice>
                  <value>lr-tb</value>
                  <value>rl-tb</value>
                  <value>tb-rl</value>
                  <value>lr</value>
                  <value>rl</value>
                  <value>tb</value>
                  <value>inherit</value>
               </choice>
            </attribute>
         </optional>
         <ref name="SVG.Text.extra.attrib"/>
      </define>
      <define name="SVG.TextContent.extra.attrib">
         <empty/>
      </define>
      <define name="SVG.TextContent.attrib">
         <optional>
            <attribute name="alignment-baseline">
               <choice>
                  <value>auto</value>
                  <value>baseline</value>
                  <value>before-edge</value>
                  <value>text-before-edge</value>
                  <value>middle</value>
                  <value>central</value>
                  <value>after-edge</value>
                  <value>text-after-edge</value>
                  <value>ideographic</value>
                  <value>alphabetic</value>
                  <value>hanging</value>
                  <value>mathematical</value>
                  <value>inherit</value>
               </choice>
            </attribute>
         </optional>
         <optional>
            <attribute name="baseline-shift">
               <ref name="BaselineShiftValue.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="direction">
               <choice>
                  <value>ltr</value>
                  <value>rtl</value>
                  <value>inherit</value>
               </choice>
            </attribute>
         </optional>
         <optional>
            <attribute name="dominant-baseline">
               <choice>
                  <value>auto</value>
                  <value>use-script</value>
                  <value>no-change</value>
                  <value>reset-size</value>
                  <value>ideographic</value>
                  <value>alphabetic</value>
                  <value>hanging</value>
                  <value>mathematical</value>
                  <value>central</value>
                  <value>middle</value>
                  <value>text-after-edge</value>
                  <value>text-before-edge</value>
                  <value>inherit</value>
               </choice>
            </attribute>
         </optional>
         <optional>
            <attribute name="glyph-orientation-horizontal">
               <ref name="GlyphOrientationHorizontalValue.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="glyph-orientation-vertical">
               <ref name="GlyphOrientationVerticalValue.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="kerning">
               <ref name="KerningValue.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="letter-spacing">
               <ref name="SpacingValue.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="text-anchor">
               <choice>
                  <value>start</value>
                  <value>middle</value>
                  <value>end</value>
                  <value>inherit</value>
               </choice>
            </attribute>
         </optional>
         <optional>
            <attribute name="text-decoration">
               <ref name="TextDecorationValue.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="unicode-bidi">
               <choice>
                  <value>normal</value>
                  <value>embed</value>
                  <value>bidi-override</value>
                  <value>inherit</value>
               </choice>
            </attribute>
         </optional>
         <optional>
            <attribute name="word-spacing">
               <ref name="SpacingValue.datatype"/>
            </attribute>
         </optional>
         <ref name="SVG.TextContent.extra.attrib"/>
      </define>
      <define name="SVG.Font.extra.attrib">
         <empty/>
      </define>
      <define name="SVG.Font.attrib">
         <optional>
            <attribute name="font-family">
               <ref name="FontFamilyValue.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="font-size">
               <ref name="FontSizeValue.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="font-size-adjust">
               <ref name="FontSizeAdjustValue.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="font-stretch">
               <choice>
                  <value>normal</value>
                  <value>wider</value>
                  <value>narrower</value>
                  <value>ultra-condensed</value>
                  <value>extra-condensed</value>
                  <value>condensed</value>
                  <value>semi-condensed</value>
                  <value>semi-expanded</value>
                  <value>expanded</value>
                  <value>extra-expanded</value>
                  <value>ultra-expanded</value>
                  <value>inherit</value>
               </choice>
            </attribute>
         </optional>
         <optional>
            <attribute name="font-style">
               <choice>
                  <value>normal</value>
                  <value>italic</value>
                  <value>oblique</value>
                  <value>inherit</value>
               </choice>
            </attribute>
         </optional>
         <optional>
            <attribute name="font-variant">
               <choice>
                  <value>normal</value>
                  <value>small-caps</value>
                  <value>inherit</value>
               </choice>
            </attribute>
         </optional>
         <optional>
            <attribute name="font-weight">
               <choice>
                  <value>normal</value>
                  <value>bold</value>
                  <value>bolder</value>
                  <value>lighter</value>
                  <value>100</value>
                  <value>200</value>
                  <value>300</value>
                  <value>400</value>
                  <value>500</value>
                  <value>600</value>
                  <value>700</value>
                  <value>800</value>
                  <value>900</value>
                  <value>inherit</value>
               </choice>
            </attribute>
         </optional>
         <ref name="SVG.Font.extra.attrib"/>
      </define>
      <define name="MarkerValue.datatype">
         <data type="string" datatypeLibrary=""/>
      </define>
      <define name="SVG.Marker.extra.attrib">
         <empty/>
      </define>
      <define name="SVG.Marker.attrib">
         <optional>
            <attribute name="marker-start">
               <ref name="MarkerValue.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="marker-mid">
               <ref name="MarkerValue.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="marker-end">
               <ref name="MarkerValue.datatype"/>
            </attribute>
         </optional>
         <ref name="SVG.Marker.extra.attrib"/>
      </define>
      <define name="SVG.ColorProfile.extra.attrib">
         <empty/>
      </define>
      <define name="SVG.ColorProfile.attrib">
         <optional>
            <attribute name="color-profile"/>
         </optional>
         <ref name="SVG.ColorProfile.extra.attrib"/>
      </define>
      <define name="NumberOrPercentage.datatype">
         <data type="string" datatypeLibrary=""/>
      </define>
      <define name="SVG.Gradient.extra.attrib">
         <empty/>
      </define>
      <define name="SVG.Gradient.attrib">
         <optional>
            <attribute name="stop-color">
               <ref name="SVGColor.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="stop-opacity">
               <ref name="OpacityValue.datatype"/>
            </attribute>
         </optional>
         <ref name="SVG.Gradient.extra.attrib"/>
      </define>
      <define name="ClipPathValue.datatype">
         <data type="string" datatypeLibrary=""/>
      </define>
      <define name="SVG.Clip.extra.attrib">
         <empty/>
      </define>
      <define name="SVG.Clip.attrib">
         <optional>
            <attribute name="clip-path">
               <ref name="ClipPathValue.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="clip-rule">
               <ref name="ClipFillRule.datatype"/>
            </attribute>
         </optional>
         <ref name="SVG.Clip.extra.attrib"/>
      </define>
      <define name="MaskValue.datatype">
         <data type="string" datatypeLibrary=""/>
      </define>
      <define name="SVG.Mask.extra.attrib">
         <empty/>
      </define>
      <define name="SVG.Mask.attrib">
         <optional>
            <attribute name="mask">
               <ref name="MaskValue.datatype"/>
            </attribute>
         </optional>
         <ref name="SVG.Mask.extra.attrib"/>
      </define>
      <define name="FilterValue.datatype">
         <data type="string" datatypeLibrary=""/>
      </define>
      <define name="NumberOptionalNumber.datatype">
         <data type="string" datatypeLibrary=""/>
      </define>
      <define name="SVG.Filter.extra.attrib">
         <empty/>
      </define>
      <define name="SVG.Filter.attrib">
         <optional>
            <attribute name="filter">
               <ref name="FilterValue.datatype"/>
            </attribute>
         </optional>
         <ref name="SVG.Filter.extra.attrib"/>
      </define>
      <define name="SVG.FilterColor.extra.attrib">
         <empty/>
      </define>
      <define name="SVG.FilterColor.attrib">
         <optional>
            <attribute name="color-interpolation-filters">
               <choice>
                  <value>auto</value>
                  <value>sRGB</value>
                  <value>linearRGB</value>
                  <value>inherit</value>
               </choice>
            </attribute>
         </optional>
         <ref name="SVG.FilterColor.extra.attrib"/>
      </define>
      <define name="CursorValue.datatype">
         <data type="string" datatypeLibrary=""/>
      </define>
      <define name="SVG.Cursor.extra.attrib">
         <empty/>
      </define>
      <define name="SVG.Cursor.attrib">
         <optional>
            <attribute name="cursor">
               <ref name="CursorValue.datatype"/>
            </attribute>
         </optional>
         <ref name="SVG.Cursor.extra.attrib"/>
      </define>
      <define name="SVG.id.attrib">
         <optional>
            <attribute name="id">
               <data type="ID"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.base.attrib">
         <optional>
            <attribute name="xml:base">
               <ref name="URI.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.lang.attrib">
         <optional>
            <attribute name="xml:lang">
               <ref name="LanguageCode.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.space.attrib">
         <optional>
            <attribute name="xml:space">
               <choice>
                  <value>default</value>
                  <value>preserve</value>
               </choice>
            </attribute>
         </optional>
      </define>
      <define name="SVG.Core.extra.attrib">
         <empty/>
      </define>
      <define name="SVG.Core.attrib">
         <ref name="SVG.id.attrib"/>
         <ref name="SVG.base.attrib"/>
         <ref name="SVG.lang.attrib"/>
         <ref name="SVG.space.attrib"/>
         <ref name="SVG.Core.extra.attrib"/>
      </define>
      <define name="EnableBackgroundValue.datatype">
         <data type="string" datatypeLibrary=""/>
      </define>
      <define name="SVG.enable-background.attrib">
         <optional>
            <attribute name="enable-background">
               <ref name="EnableBackgroundValue.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.Container.extra.attrib">
         <empty/>
      </define>
      <define name="SVG.Container.attrib">
         <ref name="SVG.enable-background.attrib"/>
         <ref name="SVG.Container.extra.attrib"/>
      </define>
      <define name="ClipValue.datatype">
         <data type="string" datatypeLibrary=""/>
      </define>
      <define name="SVG.clip.attrib">
         <optional>
            <attribute name="clip">
               <ref name="ClipValue.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.overflow.attrib">
         <optional>
            <attribute name="overflow">
               <choice>
                  <value>visible</value>
                  <value>hidden</value>
                  <value>scroll</value>
                  <value>auto</value>
                  <value>inherit</value>
               </choice>
            </attribute>
         </optional>
      </define>
      <define name="SVG.Viewport.extra.attrib">
         <empty/>
      </define>
      <define name="SVG.Viewport.attrib">
         <ref name="SVG.clip.attrib"/>
         <ref name="SVG.overflow.attrib"/>
         <ref name="SVG.Viewport.extra.attrib"/>
      </define>
      <define name="Paint.datatype">
         <data type="string" datatypeLibrary=""/>
      </define>
      <define name="StrokeDashArrayValue.datatype">
         <data type="string" datatypeLibrary=""/>
      </define>
      <define name="StrokeDashOffsetValue.datatype">
         <data type="string" datatypeLibrary=""/>
      </define>
      <define name="StrokeMiterLimitValue.datatype">
         <data type="string" datatypeLibrary=""/>
      </define>
      <define name="StrokeWidthValue.datatype">
         <data type="string" datatypeLibrary=""/>
      </define>
      <define name="SVG.fill.attrib">
         <optional>
            <attribute name="fill">
               <ref name="Paint.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.fill-rule.attrib">
         <optional>
            <attribute name="fill-rule">
               <ref name="ClipFillRule.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.stroke.attrib">
         <optional>
            <attribute name="stroke">
               <ref name="Paint.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.stroke-dasharray.attrib">
         <optional>
            <attribute name="stroke-dasharray">
               <ref name="StrokeDashArrayValue.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.stroke-dashoffset.attrib">
         <optional>
            <attribute name="stroke-dashoffset">
               <ref name="StrokeDashOffsetValue.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.stroke-linecap.attrib">
         <optional>
            <attribute name="stroke-linecap">
               <choice>
                  <value>butt</value>
                  <value>round</value>
                  <value>square</value>
                  <value>inherit</value>
               </choice>
            </attribute>
         </optional>
      </define>
      <define name="SVG.stroke-linejoin.attrib">
         <optional>
            <attribute name="stroke-linejoin">
               <choice>
                  <value>miter</value>
                  <value>round</value>
                  <value>bevel</value>
                  <value>inherit</value>
               </choice>
            </attribute>
         </optional>
      </define>
      <define name="SVG.stroke-miterlimit.attrib">
         <optional>
            <attribute name="stroke-miterlimit">
               <ref name="StrokeMiterLimitValue.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.stroke-width.attrib">
         <optional>
            <attribute name="stroke-width">
               <ref name="StrokeWidthValue.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.Paint.extra.attrib">
         <empty/>
      </define>
      <define name="SVG.Paint.attrib">
         <ref name="SVG.fill.attrib"/>
         <ref name="SVG.fill-rule.attrib"/>
         <ref name="SVG.stroke.attrib"/>
         <ref name="SVG.stroke-dasharray.attrib"/>
         <ref name="SVG.stroke-dashoffset.attrib"/>
         <ref name="SVG.stroke-linecap.attrib"/>
         <ref name="SVG.stroke-linejoin.attrib"/>
         <ref name="SVG.stroke-miterlimit.attrib"/>
         <ref name="SVG.stroke-width.attrib"/>
         <ref name="SVG.Paint.extra.attrib"/>
      </define>
      <define name="SVG.color.attrib">
         <optional>
            <attribute name="color">
               <ref name="Color.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.color-interpolation.attrib">
         <optional>
            <attribute name="color-interpolation">
               <choice>
                  <value>auto</value>
                  <value>sRGB</value>
                  <value>linearRGB</value>
                  <value>inherit</value>
               </choice>
            </attribute>
         </optional>
      </define>
      <define name="SVG.color-rendering.attrib">
         <optional>
            <attribute name="color-rendering">
               <choice>
                  <value>auto</value>
                  <value>optimizeSpeed</value>
                  <value>optimizeQuality</value>
                  <value>inherit</value>
               </choice>
            </attribute>
         </optional>
      </define>
      <define name="SVG.Color.extra.attrib">
         <empty/>
      </define>
      <define name="SVG.Color.attrib">
         <ref name="SVG.color.attrib"/>
         <ref name="SVG.color-interpolation.attrib"/>
         <ref name="SVG.color-rendering.attrib"/>
         <ref name="SVG.Color.extra.attrib"/>
      </define>
      <define name="SVG.opacity.attrib">
         <optional>
            <attribute name="opacity">
               <ref name="OpacityValue.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.fill-opacity.attrib">
         <optional>
            <attribute name="fill-opacity">
               <ref name="OpacityValue.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.stroke-opacity.attrib">
         <optional>
            <attribute name="stroke-opacity">
               <ref name="OpacityValue.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.Opacity.extra.attrib">
         <empty/>
      </define>
      <define name="SVG.Opacity.attrib">
         <ref name="SVG.opacity.attrib"/>
         <ref name="SVG.fill-opacity.attrib"/>
         <ref name="SVG.stroke-opacity.attrib"/>
         <ref name="SVG.Opacity.extra.attrib"/>
      </define>
      <define name="SVG.display.attrib">
         <optional>
            <attribute name="display">
               <choice>
                  <value>inline</value>
                  <value>block</value>
                  <value>list-item</value>
                  <value>run-in</value>
                  <value>compact</value>
                  <value>marker</value>
                  <value>table</value>
                  <value>inline-table</value>
                  <value>table-row-group</value>
                  <value>table-header-group</value>
                  <value>table-footer-group</value>
                  <value>table-row</value>
                  <value>table-column-group</value>
                  <value>table-column</value>
                  <value>table-cell</value>
                  <value>table-caption</value>
                  <value>none</value>
                  <value>inherit</value>
               </choice>
            </attribute>
         </optional>
      </define>
      <define name="SVG.image-rendering.attrib">
         <optional>
            <attribute name="image-rendering">
               <choice>
                  <value>auto</value>
                  <value>optimizeSpeed</value>
                  <value>optimizeQuality</value>
                  <value>inherit</value>
               </choice>
            </attribute>
         </optional>
      </define>
      <define name="SVG.pointer-events.attrib">
         <optional>
            <attribute name="pointer-events">
               <choice>
                  <value>visiblePainted</value>
                  <value>visibleFill</value>
                  <value>visibleStroke</value>
                  <value>visible</value>
                  <value>painted</value>
                  <value>fill</value>
                  <value>stroke</value>
                  <value>all</value>
                  <value>none</value>
                  <value>inherit</value>
               </choice>
            </attribute>
         </optional>
      </define>
      <define name="SVG.shape-rendering.attrib">
         <optional>
            <attribute name="shape-rendering">
               <choice>
                  <value>auto</value>
                  <value>optimizeSpeed</value>
                  <value>crispEdges</value>
                  <value>geometricPrecision</value>
                  <value>inherit</value>
               </choice>
            </attribute>
         </optional>
      </define>
      <define name="SVG.text-rendering.attrib">
         <optional>
            <attribute name="text-rendering">
               <choice>
                  <value>auto</value>
                  <value>optimizeSpeed</value>
                  <value>optimizeLegibility</value>
                  <value>geometricPrecision</value>
                  <value>inherit</value>
               </choice>
            </attribute>
         </optional>
      </define>
      <define name="SVG.visibility.attrib">
         <optional>
            <attribute name="visibility">
               <choice>
                  <value>visible</value>
                  <value>hidden</value>
                  <value>inherit</value>
               </choice>
            </attribute>
         </optional>
      </define>
      <define name="SVG.Graphics.extra.attrib">
         <empty/>
      </define>
      <define name="SVG.Graphics.attrib">
         <ref name="SVG.display.attrib"/>
         <ref name="SVG.image-rendering.attrib"/>
         <ref name="SVG.pointer-events.attrib"/>
         <ref name="SVG.shape-rendering.attrib"/>
         <ref name="SVG.text-rendering.attrib"/>
         <ref name="SVG.visibility.attrib"/>
         <ref name="SVG.Graphics.extra.attrib"/>
      </define>
      <define name="SVG.onunload.attrib">
         <optional>
            <attribute name="onunload">
               <ref name="Script.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.onabort.attrib">
         <optional>
            <attribute name="onabort">
               <ref name="Script.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.onerror.attrib">
         <optional>
            <attribute name="onerror">
               <ref name="Script.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.onresize.attrib">
         <optional>
            <attribute name="onresize">
               <ref name="Script.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.onscroll.attrib">
         <optional>
            <attribute name="onscroll">
               <ref name="Script.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.onzoom.attrib">
         <optional>
            <attribute name="onzoom">
               <ref name="Script.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.DocumentEvents.extra.attrib">
         <empty/>
      </define>
      <define name="SVG.DocumentEvents.attrib">
         <ref name="SVG.onunload.attrib"/>
         <ref name="SVG.onabort.attrib"/>
         <ref name="SVG.onerror.attrib"/>
         <ref name="SVG.onresize.attrib"/>
         <ref name="SVG.onscroll.attrib"/>
         <ref name="SVG.onzoom.attrib"/>
         <ref name="SVG.DocumentEvents.extra.attrib"/>
      </define>
      <define name="SVG.onfocusin.attrib">
         <optional>
            <attribute name="onfocusin">
               <ref name="Script.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.onfocusout.attrib">
         <optional>
            <attribute name="onfocusout">
               <ref name="Script.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.onactivate.attrib">
         <optional>
            <attribute name="onactivate">
               <ref name="Script.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.onclick.attrib">
         <optional>
            <attribute name="onclick">
               <ref name="Script.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.onmousedown.attrib">
         <optional>
            <attribute name="onmousedown">
               <ref name="Script.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.onmouseup.attrib">
         <optional>
            <attribute name="onmouseup">
               <ref name="Script.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.onmouseover.attrib">
         <optional>
            <attribute name="onmouseover">
               <ref name="Script.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.onmousemove.attrib">
         <optional>
            <attribute name="onmousemove">
               <ref name="Script.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.onmouseout.attrib">
         <optional>
            <attribute name="onmouseout">
               <ref name="Script.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.onload.attrib">
         <optional>
            <attribute name="onload">
               <ref name="Script.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.GraphicalEvents.extra.attrib">
         <empty/>
      </define>
      <define name="SVG.GraphicalEvents.attrib">
         <ref name="SVG.onfocusin.attrib"/>
         <ref name="SVG.onfocusout.attrib"/>
         <ref name="SVG.onactivate.attrib"/>
         <ref name="SVG.onclick.attrib"/>
         <ref name="SVG.onmousedown.attrib"/>
         <ref name="SVG.onmouseup.attrib"/>
         <ref name="SVG.onmouseover.attrib"/>
         <ref name="SVG.onmousemove.attrib"/>
         <ref name="SVG.onmouseout.attrib"/>
         <ref name="SVG.onload.attrib"/>
         <ref name="SVG.GraphicalEvents.extra.attrib"/>
      </define>
      <define name="SVG.onbegin.attrib">
         <optional>
            <attribute name="onbegin">
               <ref name="Script.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.onend.attrib">
         <optional>
            <attribute name="onend">
               <ref name="Script.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.onrepeat.attrib">
         <optional>
            <attribute name="onrepeat">
               <ref name="Script.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.AnimationEvents.extra.attrib">
         <empty/>
      </define>
      <define name="SVG.AnimationEvents.attrib">
         <ref name="SVG.onbegin.attrib"/>
         <ref name="SVG.onend.attrib"/>
         <ref name="SVG.onrepeat.attrib"/>
         <ref name="SVG.onload.attrib"/>
         <ref name="SVG.AnimationEvents.extra.attrib"/>
      </define>
      <define name="SVG.XLink.extra.attrib">
         <empty/>
      </define>
      <define name="SVG.XLink.attrib">
         <ref name="XLINK.xmlns.attrib"/>
         <optional>
            <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                       name="xlink:type"
                       a:defaultValue="simple">
               <value>simple</value>
            </attribute>
         </optional>
         <optional>
            <attribute name="xlink:href">
               <ref name="URI.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="xlink:role">
               <ref name="URI.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="xlink:arcrole">
               <ref name="URI.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="xlink:title"/>
         </optional>
         <optional>
            <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                       name="xlink:show"
                       a:defaultValue="other">
               <choice>
                  <value>other</value>
               </choice>
            </attribute>
         </optional>
         <optional>
            <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                       name="xlink:actuate"
                       a:defaultValue="onLoad">
               <value>onLoad</value>
            </attribute>
         </optional>
         <ref name="SVG.XLink.extra.attrib"/>
      </define>
      <define name="SVG.XLinkRequired.extra.attrib">
         <empty/>
      </define>
      <define name="SVG.XLinkRequired.attrib">
         <ref name="XLINK.xmlns.attrib"/>
         <optional>
            <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                       name="xlink:type"
                       a:defaultValue="simple">
               <value>simple</value>
            </attribute>
         </optional>
         <attribute name="xlink:href">
            <ref name="URI.datatype"/>
         </attribute>
         <optional>
            <attribute name="xlink:role">
               <ref name="URI.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="xlink:arcrole">
               <ref name="URI.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="xlink:title"/>
         </optional>
         <optional>
            <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                       name="xlink:show"
                       a:defaultValue="other">
               <choice>
                  <value>other</value>
               </choice>
            </attribute>
         </optional>
         <optional>
            <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                       name="xlink:actuate"
                       a:defaultValue="onLoad">
               <value>onLoad</value>
            </attribute>
         </optional>
         <ref name="SVG.XLinkRequired.extra.attrib"/>
      </define>
      <define name="SVG.XLinkEmbed.extra.attrib">
         <empty/>
      </define>
      <define name="SVG.XLinkEmbed.attrib">
         <ref name="XLINK.xmlns.attrib"/>
         <optional>
            <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                       name="xlink:type"
                       a:defaultValue="simple">
               <value>simple</value>
            </attribute>
         </optional>
         <attribute name="xlink:href">
            <ref name="URI.datatype"/>
         </attribute>
         <optional>
            <attribute name="xlink:role">
               <ref name="URI.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="xlink:arcrole">
               <ref name="URI.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="xlink:title"/>
         </optional>
         <optional>
            <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                       name="xlink:show"
                       a:defaultValue="embed">
               <choice>
                  <value>embed</value>
               </choice>
            </attribute>
         </optional>
         <optional>
            <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                       name="xlink:actuate"
                       a:defaultValue="onLoad">
               <value>onLoad</value>
            </attribute>
         </optional>
         <ref name="SVG.XLinkEmbed.extra.attrib"/>
      </define>
      <define name="SVG.XLinkReplace.extra.attrib">
         <empty/>
      </define>
      <define name="SVG.XLinkReplace.attrib">
         <ref name="XLINK.xmlns.attrib"/>
         <optional>
            <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                       name="xlink:type"
                       a:defaultValue="simple">
               <value>simple</value>
            </attribute>
         </optional>
         <attribute name="xlink:href">
            <ref name="URI.datatype"/>
         </attribute>
         <optional>
            <attribute name="xlink:role">
               <ref name="URI.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="xlink:arcrole">
               <ref name="URI.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="xlink:title"/>
         </optional>
         <optional>
            <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                       name="xlink:show"
                       a:defaultValue="replace">
               <choice>
                  <value>new</value>
                  <value>replace</value>
               </choice>
            </attribute>
         </optional>
         <optional>
            <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                       name="xlink:actuate"
                       a:defaultValue="onRequest">
               <value>onRequest</value>
            </attribute>
         </optional>
         <ref name="SVG.XLinkReplace.extra.attrib"/>
      </define>
      <define name="SVG.externalResourcesRequired.attrib">
         <optional>
            <attribute name="externalResourcesRequired">
               <ref name="Boolean.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.External.extra.attrib">
         <empty/>
      </define>
      <define name="SVG.External.attrib">
         <ref name="SVG.externalResourcesRequired.attrib"/>
         <ref name="SVG.External.extra.attrib"/>
      </define>
      <define name="SVG.Presentation.extra.attrib">
         <empty/>
      </define>
      <define name="SVG.Presentation.attrib">
         <ref name="SVG.Container.attrib"/>
         <ref name="SVG.Viewport.attrib"/>
         <ref name="SVG.Text.attrib"/>
         <ref name="SVG.TextContent.attrib"/>
         <ref name="SVG.Font.attrib"/>
         <ref name="SVG.Paint.attrib"/>
         <ref name="SVG.Color.attrib"/>
         <ref name="SVG.Opacity.attrib"/>
         <ref name="SVG.Graphics.attrib"/>
         <ref name="SVG.Marker.attrib"/>
         <ref name="SVG.ColorProfile.attrib"/>
         <ref name="SVG.Gradient.attrib"/>
         <ref name="SVG.Clip.attrib"/>
         <ref name="SVG.Mask.attrib"/>
         <ref name="SVG.Filter.attrib"/>
         <ref name="SVG.FilterColor.attrib"/>
         <ref name="SVG.Cursor.attrib"/>
         <optional>
            <attribute name="flood-color">
               <ref name="SVGColor.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="flood-opacity">
               <ref name="OpacityValue.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="lighting-color">
               <ref name="SVGColor.datatype"/>
            </attribute>
         </optional>
         <ref name="SVG.Presentation.extra.attrib"/>
      </define>
      <define name="SVG.svg.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.svg.content">
         <zeroOrMore>
            <choice>
               <ref name="SVG.Description.class"/>
               <ref name="SVG.Animation.class"/>
               <ref name="SVG.Structure.class"/>
               <ref name="SVG.Conditional.class"/>
               <ref name="SVG.Image.class"/>
               <ref name="SVG.Style.class"/>
               <ref name="SVG.Shape.class"/>
               <ref name="SVG.Text.class"/>
               <ref name="SVG.Marker.class"/>
               <ref name="SVG.ColorProfile.class"/>
               <ref name="SVG.Gradient.class"/>
               <ref name="SVG.Pattern.class"/>
               <ref name="SVG.Clip.class"/>
               <ref name="SVG.Mask.class"/>
               <ref name="SVG.Filter.class"/>
               <ref name="SVG.Cursor.class"/>
               <ref name="SVG.Hyperlink.class"/>
               <ref name="SVG.View.class"/>
               <ref name="SVG.Script.class"/>
               <ref name="SVG.Font.class"/>
               <ref name="SVG.svg.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="svg">
         <element name="svg">
            <ref name="attlist.svg"/>
            <ref name="SVG.svg.content"/>
         </element>
      </define>
      <define name="attlist.svg" combine="interleave">
         <ref name="SVG.xmlns.attrib"/>
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.Conditional.attrib"/>
         <ref name="SVG.Style.attrib"/>
         <ref name="SVG.Presentation.attrib"/>
         <ref name="SVG.DocumentEvents.attrib"/>
         <ref name="SVG.GraphicalEvents.attrib"/>
         <ref name="SVG.External.attrib"/>
         <optional>
            <attribute name="x">
               <ref name="Coordinate.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="y">
               <ref name="Coordinate.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="width">
               <ref name="Length.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="height">
               <ref name="Length.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="viewBox">
               <ref name="ViewBoxSpec.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                       name="preserveAspectRatio"
                       a:defaultValue="xMidYMid meet">
               <ref name="PreserveAspectRatioSpec.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                       name="zoomAndPan"
                       a:defaultValue="magnify">
               <choice>
                  <value>disable</value>
                  <value>magnify</value>
               </choice>
            </attribute>
         </optional>
         <optional>
            <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                       name="version"
                       a:defaultValue="1.1">
               <value type="string" datatypeLibrary="">1.1</value>
            </attribute>
         </optional>
         <optional>
            <attribute name="baseProfile">
               <ref name="Text.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                       name="contentScriptType"
                       a:defaultValue="text/ecmascript">
               <ref name="ContentType.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                       name="contentStyleType"
                       a:defaultValue="text/css">
               <ref name="ContentType.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.g.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.g.content">
         <zeroOrMore>
            <choice>
               <ref name="SVG.Description.class"/>
               <ref name="SVG.Animation.class"/>
               <ref name="SVG.Structure.class"/>
               <ref name="SVG.Conditional.class"/>
               <ref name="SVG.Image.class"/>
               <ref name="SVG.Style.class"/>
               <ref name="SVG.Shape.class"/>
               <ref name="SVG.Text.class"/>
               <ref name="SVG.Marker.class"/>
               <ref name="SVG.ColorProfile.class"/>
               <ref name="SVG.Gradient.class"/>
               <ref name="SVG.Pattern.class"/>
               <ref name="SVG.Clip.class"/>
               <ref name="SVG.Mask.class"/>
               <ref name="SVG.Filter.class"/>
               <ref name="SVG.Cursor.class"/>
               <ref name="SVG.Hyperlink.class"/>
               <ref name="SVG.View.class"/>
               <ref name="SVG.Script.class"/>
               <ref name="SVG.Font.class"/>
               <ref name="SVG.g.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="g">
         <element name="g">
            <ref name="attlist.g"/>
            <ref name="SVG.g.content"/>
         </element>
      </define>
      <define name="attlist.g" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.Conditional.attrib"/>
         <ref name="SVG.Style.attrib"/>
         <ref name="SVG.Presentation.attrib"/>
         <ref name="SVG.GraphicalEvents.attrib"/>
         <ref name="SVG.External.attrib"/>
         <optional>
            <attribute name="transform">
               <ref name="TransformList.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.defs.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.defs.content">
         <zeroOrMore>
            <choice>
               <ref name="SVG.Description.class"/>
               <ref name="SVG.Animation.class"/>
               <ref name="SVG.Structure.class"/>
               <ref name="SVG.Conditional.class"/>
               <ref name="SVG.Image.class"/>
               <ref name="SVG.Style.class"/>
               <ref name="SVG.Shape.class"/>
               <ref name="SVG.Text.class"/>
               <ref name="SVG.Marker.class"/>
               <ref name="SVG.ColorProfile.class"/>
               <ref name="SVG.Gradient.class"/>
               <ref name="SVG.Pattern.class"/>
               <ref name="SVG.Clip.class"/>
               <ref name="SVG.Mask.class"/>
               <ref name="SVG.Filter.class"/>
               <ref name="SVG.Cursor.class"/>
               <ref name="SVG.Hyperlink.class"/>
               <ref name="SVG.View.class"/>
               <ref name="SVG.Script.class"/>
               <ref name="SVG.Font.class"/>
               <ref name="SVG.defs.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="defs">
         <element name="defs">
            <ref name="attlist.defs"/>
            <ref name="SVG.defs.content"/>
         </element>
      </define>
      <define name="attlist.defs" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.Conditional.attrib"/>
         <ref name="SVG.Style.attrib"/>
         <ref name="SVG.Presentation.attrib"/>
         <ref name="SVG.GraphicalEvents.attrib"/>
         <ref name="SVG.External.attrib"/>
         <optional>
            <attribute name="transform">
               <ref name="TransformList.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.desc.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.desc.content">
         <zeroOrMore>
            <choice>
               <text/>
               <ref name="SVG.desc.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="desc">
         <element name="desc">
            <ref name="attlist.desc"/>
            <ref name="SVG.desc.content"/>
         </element>
      </define>
      <define name="attlist.desc" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.Style.attrib"/>
      </define>
      <define name="SVG.title.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.title.content">
         <zeroOrMore>
            <choice>
               <text/>
               <ref name="SVG.title.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="title">
         <element name="title">
            <ref name="attlist.title"/>
            <ref name="SVG.title.content"/>
         </element>
      </define>
      <define name="attlist.title" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.Style.attrib"/>
      </define>
      <define name="SVG.metadata.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.metadata.content">
         <zeroOrMore>
            <choice>
               <text/>
               <ref name="SVG.metadata.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="metadata">
         <element name="metadata">
            <ref name="attlist.metadata"/>
            <ref name="SVG.metadata.content"/>
         </element>
      </define>
      <define name="attlist.metadata" combine="interleave">
         <ref name="SVG.Core.attrib"/>
      </define>
      <define name="SVG.symbol.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.symbol.content">
         <zeroOrMore>
            <choice>
               <ref name="SVG.Description.class"/>
               <ref name="SVG.Animation.class"/>
               <ref name="SVG.Structure.class"/>
               <ref name="SVG.Conditional.class"/>
               <ref name="SVG.Image.class"/>
               <ref name="SVG.Style.class"/>
               <ref name="SVG.Shape.class"/>
               <ref name="SVG.Text.class"/>
               <ref name="SVG.Marker.class"/>
               <ref name="SVG.ColorProfile.class"/>
               <ref name="SVG.Gradient.class"/>
               <ref name="SVG.Pattern.class"/>
               <ref name="SVG.Clip.class"/>
               <ref name="SVG.Mask.class"/>
               <ref name="SVG.Filter.class"/>
               <ref name="SVG.Cursor.class"/>
               <ref name="SVG.Hyperlink.class"/>
               <ref name="SVG.View.class"/>
               <ref name="SVG.Script.class"/>
               <ref name="SVG.Font.class"/>
               <ref name="SVG.symbol.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="symbol">
         <element name="symbol">
            <ref name="attlist.symbol"/>
            <ref name="SVG.symbol.content"/>
         </element>
      </define>
      <define name="attlist.symbol" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.Style.attrib"/>
         <ref name="SVG.Presentation.attrib"/>
         <ref name="SVG.GraphicalEvents.attrib"/>
         <ref name="SVG.External.attrib"/>
         <optional>
            <attribute name="viewBox">
               <ref name="ViewBoxSpec.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                       name="preserveAspectRatio"
                       a:defaultValue="xMidYMid meet">
               <ref name="PreserveAspectRatioSpec.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.use.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.use.content">
         <zeroOrMore>
            <ref name="SVG.Description.class"/>
         </zeroOrMore>
         <zeroOrMore>
            <choice>
               <ref name="SVG.Animation.class"/>
               <ref name="SVG.use.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="use">
         <element name="use">
            <ref name="attlist.use"/>
            <ref name="SVG.use.content"/>
         </element>
      </define>
      <define name="attlist.use" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.Conditional.attrib"/>
         <ref name="SVG.Style.attrib"/>
         <ref name="SVG.Presentation.attrib"/>
         <ref name="SVG.GraphicalEvents.attrib"/>
         <ref name="SVG.XLinkEmbed.attrib"/>
         <ref name="SVG.External.attrib"/>
         <optional>
            <attribute name="x">
               <ref name="Coordinate.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="y">
               <ref name="Coordinate.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="width">
               <ref name="Length.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="height">
               <ref name="Length.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="transform">
               <ref name="TransformList.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.switch.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.switch.content">
         <zeroOrMore>
            <ref name="SVG.Description.class"/>
         </zeroOrMore>
         <zeroOrMore>
            <choice>
               <ref name="svg"/>
               <ref name="g"/>
               <ref name="use"/>
               <ref name="text"/>
               <ref name="SVG.Animation.class"/>
               <ref name="SVG.Conditional.class"/>
               <ref name="SVG.Image.class"/>
               <ref name="SVG.Shape.class"/>
               <ref name="SVG.Hyperlink.class"/>
               <ref name="SVG.Extensibility.class"/>
               <ref name="SVG.switch.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="switch">
         <element name="switch">
            <ref name="attlist.switch"/>
            <ref name="SVG.switch.content"/>
         </element>
      </define>
      <define name="attlist.switch" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.Conditional.attrib"/>
         <ref name="SVG.Style.attrib"/>
         <ref name="SVG.Presentation.attrib"/>
         <ref name="SVG.GraphicalEvents.attrib"/>
         <ref name="SVG.External.attrib"/>
         <optional>
            <attribute name="transform">
               <ref name="TransformList.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.image.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.image.content">
         <zeroOrMore>
            <ref name="SVG.Description.class"/>
         </zeroOrMore>
         <zeroOrMore>
            <choice>
               <ref name="SVG.Animation.class"/>
               <ref name="SVG.image.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="image">
         <element name="image">
            <ref name="attlist.image"/>
            <ref name="SVG.image.content"/>
         </element>
      </define>
      <define name="attlist.image" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.Conditional.attrib"/>
         <ref name="SVG.Style.attrib"/>
         <ref name="SVG.Viewport.attrib"/>
         <ref name="SVG.Color.attrib"/>
         <ref name="SVG.Opacity.attrib"/>
         <ref name="SVG.Graphics.attrib"/>
         <ref name="SVG.ColorProfile.attrib"/>
         <ref name="SVG.Clip.attrib"/>
         <ref name="SVG.Mask.attrib"/>
         <ref name="SVG.Filter.attrib"/>
         <ref name="SVG.GraphicalEvents.attrib"/>
         <ref name="SVG.Cursor.attrib"/>
         <ref name="SVG.XLinkEmbed.attrib"/>
         <ref name="SVG.External.attrib"/>
         <optional>
            <attribute name="x">
               <ref name="Coordinate.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="y">
               <ref name="Coordinate.datatype"/>
            </attribute>
         </optional>
         <attribute name="width">
            <ref name="Length.datatype"/>
         </attribute>
         <attribute name="height">
            <ref name="Length.datatype"/>
         </attribute>
         <optional>
            <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                       name="preserveAspectRatio"
                       a:defaultValue="xMidYMid meet">
               <ref name="PreserveAspectRatioSpec.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="transform">
               <ref name="TransformList.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="MediaDesc.datatype">
         <data type="string" datatypeLibrary=""/>
      </define>
      <define name="SVG.style.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.style.content">
         <zeroOrMore>
            <choice>
               <text/>
               <ref name="SVG.style.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="style">
         <element name="style">
            <ref name="attlist.style"/>
            <ref name="SVG.style.content"/>
         </element>
      </define>
      <define name="attlist.style" combine="interleave">
         <optional>
            <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                       name="xml:space"
                       a:defaultValue="preserve">
               <value>preserve</value>
            </attribute>
         </optional>
         <ref name="SVG.id.attrib"/>
         <ref name="SVG.base.attrib"/>
         <ref name="SVG.lang.attrib"/>
         <ref name="SVG.Core.extra.attrib"/>
         <attribute name="type">
            <ref name="ContentType.datatype"/>
         </attribute>
         <optional>
            <attribute name="media">
               <ref name="MediaDesc.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="title">
               <ref name="Text.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="Points.datatype">
         <data type="string" datatypeLibrary=""/>
      </define>
      <define name="SVG.path.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.path.content">
         <zeroOrMore>
            <ref name="SVG.Description.class"/>
         </zeroOrMore>
         <zeroOrMore>
            <choice>
               <ref name="SVG.Animation.class"/>
               <ref name="SVG.path.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="path">
         <element name="path">
            <ref name="attlist.path"/>
            <ref name="SVG.path.content"/>
         </element>
      </define>
      <define name="attlist.path" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.Conditional.attrib"/>
         <ref name="SVG.Style.attrib"/>
         <ref name="SVG.Paint.attrib"/>
         <ref name="SVG.Color.attrib"/>
         <ref name="SVG.Opacity.attrib"/>
         <ref name="SVG.Graphics.attrib"/>
         <ref name="SVG.Marker.attrib"/>
         <ref name="SVG.Clip.attrib"/>
         <ref name="SVG.Mask.attrib"/>
         <ref name="SVG.Filter.attrib"/>
         <ref name="SVG.GraphicalEvents.attrib"/>
         <ref name="SVG.Cursor.attrib"/>
         <ref name="SVG.External.attrib"/>
         <attribute name="d">
            <ref name="PathData.datatype"/>
         </attribute>
         <optional>
            <attribute name="pathLength">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="transform">
               <ref name="TransformList.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.rect.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.rect.content">
         <zeroOrMore>
            <ref name="SVG.Description.class"/>
         </zeroOrMore>
         <zeroOrMore>
            <choice>
               <ref name="SVG.Animation.class"/>
               <ref name="SVG.rect.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="rect">
         <element name="rect">
            <ref name="attlist.rect"/>
            <ref name="SVG.rect.content"/>
         </element>
      </define>
      <define name="attlist.rect" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.Conditional.attrib"/>
         <ref name="SVG.Style.attrib"/>
         <ref name="SVG.Paint.attrib"/>
         <ref name="SVG.Color.attrib"/>
         <ref name="SVG.Opacity.attrib"/>
         <ref name="SVG.Graphics.attrib"/>
         <ref name="SVG.Clip.attrib"/>
         <ref name="SVG.Mask.attrib"/>
         <ref name="SVG.Filter.attrib"/>
         <ref name="SVG.GraphicalEvents.attrib"/>
         <ref name="SVG.Cursor.attrib"/>
         <ref name="SVG.External.attrib"/>
         <optional>
            <attribute name="x">
               <ref name="Coordinate.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="y">
               <ref name="Coordinate.datatype"/>
            </attribute>
         </optional>
         <attribute name="width">
            <ref name="Length.datatype"/>
         </attribute>
         <attribute name="height">
            <ref name="Length.datatype"/>
         </attribute>
         <optional>
            <attribute name="rx">
               <ref name="Length.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="ry">
               <ref name="Length.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="transform">
               <ref name="TransformList.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.circle.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.circle.content">
         <zeroOrMore>
            <ref name="SVG.Description.class"/>
         </zeroOrMore>
         <zeroOrMore>
            <choice>
               <ref name="SVG.Animation.class"/>
               <ref name="SVG.circle.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="circle">
         <element name="circle">
            <ref name="attlist.circle"/>
            <ref name="SVG.circle.content"/>
         </element>
      </define>
      <define name="attlist.circle" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.Conditional.attrib"/>
         <ref name="SVG.Style.attrib"/>
         <ref name="SVG.Paint.attrib"/>
         <ref name="SVG.Color.attrib"/>
         <ref name="SVG.Opacity.attrib"/>
         <ref name="SVG.Graphics.attrib"/>
         <ref name="SVG.Clip.attrib"/>
         <ref name="SVG.Mask.attrib"/>
         <ref name="SVG.Filter.attrib"/>
         <ref name="SVG.GraphicalEvents.attrib"/>
         <ref name="SVG.Cursor.attrib"/>
         <ref name="SVG.External.attrib"/>
         <optional>
            <attribute name="cx">
               <ref name="Coordinate.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="cy">
               <ref name="Coordinate.datatype"/>
            </attribute>
         </optional>
         <attribute name="r">
            <ref name="Length.datatype"/>
         </attribute>
         <optional>
            <attribute name="transform">
               <ref name="TransformList.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.line.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.line.content">
         <zeroOrMore>
            <ref name="SVG.Description.class"/>
         </zeroOrMore>
         <zeroOrMore>
            <choice>
               <ref name="SVG.Animation.class"/>
               <ref name="SVG.line.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="line">
         <element name="line">
            <ref name="attlist.line"/>
            <ref name="SVG.line.content"/>
         </element>
      </define>
      <define name="attlist.line" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.Conditional.attrib"/>
         <ref name="SVG.Style.attrib"/>
         <ref name="SVG.Paint.attrib"/>
         <ref name="SVG.Color.attrib"/>
         <ref name="SVG.Opacity.attrib"/>
         <ref name="SVG.Graphics.attrib"/>
         <ref name="SVG.Marker.attrib"/>
         <ref name="SVG.Clip.attrib"/>
         <ref name="SVG.Mask.attrib"/>
         <ref name="SVG.Filter.attrib"/>
         <ref name="SVG.GraphicalEvents.attrib"/>
         <ref name="SVG.Cursor.attrib"/>
         <ref name="SVG.External.attrib"/>
         <optional>
            <attribute name="x1">
               <ref name="Coordinate.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="y1">
               <ref name="Coordinate.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="x2">
               <ref name="Coordinate.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="y2">
               <ref name="Coordinate.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="transform">
               <ref name="TransformList.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.ellipse.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.ellipse.content">
         <zeroOrMore>
            <ref name="SVG.Description.class"/>
         </zeroOrMore>
         <zeroOrMore>
            <choice>
               <ref name="SVG.Animation.class"/>
               <ref name="SVG.ellipse.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="ellipse">
         <element name="ellipse">
            <ref name="attlist.ellipse"/>
            <ref name="SVG.ellipse.content"/>
         </element>
      </define>
      <define name="attlist.ellipse" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.Conditional.attrib"/>
         <ref name="SVG.Style.attrib"/>
         <ref name="SVG.Paint.attrib"/>
         <ref name="SVG.Color.attrib"/>
         <ref name="SVG.Opacity.attrib"/>
         <ref name="SVG.Graphics.attrib"/>
         <ref name="SVG.Clip.attrib"/>
         <ref name="SVG.Mask.attrib"/>
         <ref name="SVG.Filter.attrib"/>
         <ref name="SVG.GraphicalEvents.attrib"/>
         <ref name="SVG.Cursor.attrib"/>
         <ref name="SVG.External.attrib"/>
         <optional>
            <attribute name="cx">
               <ref name="Coordinate.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="cy">
               <ref name="Coordinate.datatype"/>
            </attribute>
         </optional>
         <attribute name="rx">
            <ref name="Length.datatype"/>
         </attribute>
         <attribute name="ry">
            <ref name="Length.datatype"/>
         </attribute>
         <optional>
            <attribute name="transform">
               <ref name="TransformList.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.polyline.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.polyline.content">
         <zeroOrMore>
            <ref name="SVG.Description.class"/>
         </zeroOrMore>
         <zeroOrMore>
            <choice>
               <ref name="SVG.Animation.class"/>
               <ref name="SVG.polyline.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="polyline">
         <element name="polyline">
            <ref name="attlist.polyline"/>
            <ref name="SVG.polyline.content"/>
         </element>
      </define>
      <define name="attlist.polyline" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.Conditional.attrib"/>
         <ref name="SVG.Style.attrib"/>
         <ref name="SVG.Paint.attrib"/>
         <ref name="SVG.Color.attrib"/>
         <ref name="SVG.Opacity.attrib"/>
         <ref name="SVG.Graphics.attrib"/>
         <ref name="SVG.Marker.attrib"/>
         <ref name="SVG.Clip.attrib"/>
         <ref name="SVG.Mask.attrib"/>
         <ref name="SVG.Filter.attrib"/>
         <ref name="SVG.GraphicalEvents.attrib"/>
         <ref name="SVG.Cursor.attrib"/>
         <ref name="SVG.External.attrib"/>
         <attribute name="points">
            <ref name="Points.datatype"/>
         </attribute>
         <optional>
            <attribute name="transform">
               <ref name="TransformList.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.polygon.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.polygon.content">
         <zeroOrMore>
            <ref name="SVG.Description.class"/>
         </zeroOrMore>
         <zeroOrMore>
            <choice>
               <ref name="SVG.Animation.class"/>
               <ref name="SVG.polygon.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="polygon">
         <element name="polygon">
            <ref name="attlist.polygon"/>
            <ref name="SVG.polygon.content"/>
         </element>
      </define>
      <define name="attlist.polygon" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.Conditional.attrib"/>
         <ref name="SVG.Style.attrib"/>
         <ref name="SVG.Paint.attrib"/>
         <ref name="SVG.Color.attrib"/>
         <ref name="SVG.Opacity.attrib"/>
         <ref name="SVG.Graphics.attrib"/>
         <ref name="SVG.Marker.attrib"/>
         <ref name="SVG.Clip.attrib"/>
         <ref name="SVG.Mask.attrib"/>
         <ref name="SVG.Filter.attrib"/>
         <ref name="SVG.GraphicalEvents.attrib"/>
         <ref name="SVG.Cursor.attrib"/>
         <ref name="SVG.External.attrib"/>
         <attribute name="points">
            <ref name="Points.datatype"/>
         </attribute>
         <optional>
            <attribute name="transform">
               <ref name="TransformList.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.text.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.text.content">
         <zeroOrMore>
            <choice>
               <text/>
               <ref name="SVG.Description.class"/>
               <ref name="SVG.Animation.class"/>
               <ref name="SVG.TextContent.class"/>
               <ref name="SVG.Hyperlink.class"/>
               <ref name="SVG.text.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="text">
         <element name="text">
            <ref name="attlist.text"/>
            <ref name="SVG.text.content"/>
         </element>
      </define>
      <define name="attlist.text" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.Conditional.attrib"/>
         <ref name="SVG.Style.attrib"/>
         <ref name="SVG.Text.attrib"/>
         <ref name="SVG.TextContent.attrib"/>
         <ref name="SVG.Font.attrib"/>
         <ref name="SVG.Paint.attrib"/>
         <ref name="SVG.Color.attrib"/>
         <ref name="SVG.Opacity.attrib"/>
         <ref name="SVG.Graphics.attrib"/>
         <ref name="SVG.Clip.attrib"/>
         <ref name="SVG.Mask.attrib"/>
         <ref name="SVG.Filter.attrib"/>
         <ref name="SVG.GraphicalEvents.attrib"/>
         <ref name="SVG.Cursor.attrib"/>
         <ref name="SVG.External.attrib"/>
         <optional>
            <attribute name="x">
               <ref name="Coordinates.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="y">
               <ref name="Coordinates.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="dx">
               <ref name="Lengths.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="dy">
               <ref name="Lengths.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="rotate">
               <ref name="Numbers.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="textLength">
               <ref name="Length.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="lengthAdjust">
               <choice>
                  <value>spacing</value>
                  <value>spacingAndGlyphs</value>
               </choice>
            </attribute>
         </optional>
         <optional>
            <attribute name="transform">
               <ref name="TransformList.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.tspan.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.tspan.content">
         <zeroOrMore>
            <choice>
               <text/>
               <ref name="tspan"/>
               <ref name="tref"/>
               <ref name="altGlyph"/>
               <ref name="animate"/>
               <ref name="set"/>
               <ref name="animateColor"/>
               <ref name="SVG.Description.class"/>
               <ref name="SVG.Hyperlink.class"/>
               <ref name="SVG.tspan.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="tspan">
         <element name="tspan">
            <ref name="attlist.tspan"/>
            <ref name="SVG.tspan.content"/>
         </element>
      </define>
      <define name="attlist.tspan" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.Conditional.attrib"/>
         <ref name="SVG.Style.attrib"/>
         <ref name="SVG.TextContent.attrib"/>
         <ref name="SVG.Font.attrib"/>
         <ref name="SVG.Paint.attrib"/>
         <ref name="SVG.Color.attrib"/>
         <ref name="SVG.Opacity.attrib"/>
         <ref name="SVG.Graphics.attrib"/>
         <ref name="SVG.Clip.attrib"/>
         <ref name="SVG.Mask.attrib"/>
         <ref name="SVG.Filter.attrib"/>
         <ref name="SVG.GraphicalEvents.attrib"/>
         <ref name="SVG.Cursor.attrib"/>
         <ref name="SVG.External.attrib"/>
         <optional>
            <attribute name="x">
               <ref name="Coordinates.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="y">
               <ref name="Coordinates.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="dx">
               <ref name="Lengths.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="dy">
               <ref name="Lengths.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="rotate">
               <ref name="Numbers.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="textLength">
               <ref name="Length.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="lengthAdjust">
               <choice>
                  <value>spacing</value>
                  <value>spacingAndGlyphs</value>
               </choice>
            </attribute>
         </optional>
      </define>
      <define name="SVG.tref.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.tref.content">
         <zeroOrMore>
            <choice>
               <ref name="animate"/>
               <ref name="set"/>
               <ref name="animateColor"/>
               <ref name="SVG.Description.class"/>
               <ref name="SVG.tref.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="tref">
         <element name="tref">
            <ref name="attlist.tref"/>
            <ref name="SVG.tref.content"/>
         </element>
      </define>
      <define name="attlist.tref" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.Conditional.attrib"/>
         <ref name="SVG.Style.attrib"/>
         <ref name="SVG.TextContent.attrib"/>
         <ref name="SVG.Font.attrib"/>
         <ref name="SVG.Paint.attrib"/>
         <ref name="SVG.Color.attrib"/>
         <ref name="SVG.Opacity.attrib"/>
         <ref name="SVG.Graphics.attrib"/>
         <ref name="SVG.Clip.attrib"/>
         <ref name="SVG.Mask.attrib"/>
         <ref name="SVG.Filter.attrib"/>
         <ref name="SVG.GraphicalEvents.attrib"/>
         <ref name="SVG.Cursor.attrib"/>
         <ref name="SVG.XLinkRequired.attrib"/>
         <ref name="SVG.External.attrib"/>
         <optional>
            <attribute name="x">
               <ref name="Coordinates.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="y">
               <ref name="Coordinates.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="dx">
               <ref name="Lengths.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="dy">
               <ref name="Lengths.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="rotate">
               <ref name="Numbers.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="textLength">
               <ref name="Length.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="lengthAdjust">
               <choice>
                  <value>spacing</value>
                  <value>spacingAndGlyphs</value>
               </choice>
            </attribute>
         </optional>
      </define>
      <define name="SVG.textPath.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.textPath.content">
         <zeroOrMore>
            <choice>
               <text/>
               <ref name="tspan"/>
               <ref name="tref"/>
               <ref name="altGlyph"/>
               <ref name="animate"/>
               <ref name="set"/>
               <ref name="animateColor"/>
               <ref name="SVG.Description.class"/>
               <ref name="SVG.Hyperlink.class"/>
               <ref name="SVG.textPath.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="textPath">
         <element name="textPath">
            <ref name="attlist.textPath"/>
            <ref name="SVG.textPath.content"/>
         </element>
      </define>
      <define name="attlist.textPath" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.Conditional.attrib"/>
         <ref name="SVG.Style.attrib"/>
         <ref name="SVG.TextContent.attrib"/>
         <ref name="SVG.Font.attrib"/>
         <ref name="SVG.Paint.attrib"/>
         <ref name="SVG.Color.attrib"/>
         <ref name="SVG.Opacity.attrib"/>
         <ref name="SVG.Graphics.attrib"/>
         <ref name="SVG.Clip.attrib"/>
         <ref name="SVG.Mask.attrib"/>
         <ref name="SVG.Filter.attrib"/>
         <ref name="SVG.GraphicalEvents.attrib"/>
         <ref name="SVG.Cursor.attrib"/>
         <ref name="SVG.XLinkRequired.attrib"/>
         <ref name="SVG.External.attrib"/>
         <optional>
            <attribute name="startOffset">
               <ref name="Length.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="textLength">
               <ref name="Length.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="lengthAdjust">
               <choice>
                  <value>spacing</value>
                  <value>spacingAndGlyphs</value>
               </choice>
            </attribute>
         </optional>
         <optional>
            <attribute name="method">
               <choice>
                  <value>align</value>
                  <value>stretch</value>
               </choice>
            </attribute>
         </optional>
         <optional>
            <attribute name="spacing">
               <choice>
                  <value>auto</value>
                  <value>exact</value>
               </choice>
            </attribute>
         </optional>
      </define>
      <define name="SVG.altGlyph.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.altGlyph.content">
         <zeroOrMore>
            <choice>
               <text/>
               <ref name="SVG.altGlyph.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="altGlyph">
         <element name="altGlyph">
            <ref name="attlist.altGlyph"/>
            <ref name="SVG.altGlyph.content"/>
         </element>
      </define>
      <define name="attlist.altGlyph" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.Conditional.attrib"/>
         <ref name="SVG.Style.attrib"/>
         <ref name="SVG.TextContent.attrib"/>
         <ref name="SVG.Font.attrib"/>
         <ref name="SVG.Paint.attrib"/>
         <ref name="SVG.Color.attrib"/>
         <ref name="SVG.Opacity.attrib"/>
         <ref name="SVG.Graphics.attrib"/>
         <ref name="SVG.Clip.attrib"/>
         <ref name="SVG.Mask.attrib"/>
         <ref name="SVG.Filter.attrib"/>
         <ref name="SVG.GraphicalEvents.attrib"/>
         <ref name="SVG.Cursor.attrib"/>
         <ref name="SVG.XLink.attrib"/>
         <ref name="SVG.External.attrib"/>
         <optional>
            <attribute name="x">
               <ref name="Coordinates.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="y">
               <ref name="Coordinates.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="dx">
               <ref name="Lengths.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="dy">
               <ref name="Lengths.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="glyphRef"/>
         </optional>
         <optional>
            <attribute name="format"/>
         </optional>
         <optional>
            <attribute name="rotate">
               <ref name="Numbers.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.altGlyphDef.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.altGlyphDef.content">
         <choice>
            <choice>
               <oneOrMore>
                  <ref name="glyphRef"/>
               </oneOrMore>
               <oneOrMore>
                  <ref name="altGlyphItem"/>
               </oneOrMore>
            </choice>
            <ref name="SVG.altGlyphDef.extra.content"/>
         </choice>
      </define>
      <define name="altGlyphDef">
         <element name="altGlyphDef">
            <ref name="attlist.altGlyphDef"/>
            <ref name="SVG.altGlyphDef.content"/>
         </element>
      </define>
      <define name="attlist.altGlyphDef" combine="interleave">
         <ref name="SVG.Core.attrib"/>
      </define>
      <define name="SVG.altGlyphItem.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.altGlyphItem.content">
         <choice>
            <oneOrMore>
               <ref name="glyphRef"/>
            </oneOrMore>
            <ref name="SVG.altGlyphItem.extra.content"/>
         </choice>
      </define>
      <define name="altGlyphItem">
         <element name="altGlyphItem">
            <ref name="attlist.altGlyphItem"/>
            <ref name="SVG.altGlyphItem.content"/>
         </element>
      </define>
      <define name="attlist.altGlyphItem" combine="interleave">
         <ref name="SVG.Core.attrib"/>
      </define>
      <define name="SVG.glyphRef.content">
         <empty/>
      </define>
      <define name="glyphRef">
         <element name="glyphRef">
            <ref name="attlist.glyphRef"/>
            <ref name="SVG.glyphRef.content"/>
         </element>
      </define>
      <define name="attlist.glyphRef" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.Style.attrib"/>
         <ref name="SVG.Font.attrib"/>
         <ref name="SVG.XLink.attrib"/>
         <optional>
            <attribute name="x">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="y">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="dx">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="dy">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="glyphRef"/>
         </optional>
         <optional>
            <attribute name="format"/>
         </optional>
      </define>
      <define name="SVG.marker.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.marker.content">
         <zeroOrMore>
            <choice>
               <ref name="SVG.Description.class"/>
               <ref name="SVG.Animation.class"/>
               <ref name="SVG.Structure.class"/>
               <ref name="SVG.Conditional.class"/>
               <ref name="SVG.Image.class"/>
               <ref name="SVG.Style.class"/>
               <ref name="SVG.Shape.class"/>
               <ref name="SVG.Text.class"/>
               <ref name="SVG.Marker.class"/>
               <ref name="SVG.ColorProfile.class"/>
               <ref name="SVG.Gradient.class"/>
               <ref name="SVG.Pattern.class"/>
               <ref name="SVG.Clip.class"/>
               <ref name="SVG.Mask.class"/>
               <ref name="SVG.Filter.class"/>
               <ref name="SVG.Cursor.class"/>
               <ref name="SVG.Hyperlink.class"/>
               <ref name="SVG.View.class"/>
               <ref name="SVG.Script.class"/>
               <ref name="SVG.Font.class"/>
               <ref name="SVG.marker.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="marker">
         <element name="marker">
            <ref name="attlist.marker"/>
            <ref name="SVG.marker.content"/>
         </element>
      </define>
      <define name="attlist.marker" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.Style.attrib"/>
         <ref name="SVG.Presentation.attrib"/>
         <ref name="SVG.External.attrib"/>
         <optional>
            <attribute name="refX">
               <ref name="Coordinate.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="refY">
               <ref name="Coordinate.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="markerUnits">
               <choice>
                  <value>strokeWidth</value>
                  <value>userSpaceOnUse</value>
               </choice>
            </attribute>
         </optional>
         <optional>
            <attribute name="markerWidth">
               <ref name="Length.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="markerHeight">
               <ref name="Length.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="orient"/>
         </optional>
         <optional>
            <attribute name="viewBox">
               <ref name="ViewBoxSpec.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                       name="preserveAspectRatio"
                       a:defaultValue="xMidYMid meet">
               <ref name="PreserveAspectRatioSpec.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.color-profile.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.color-profile.content">
         <zeroOrMore>
            <choice>
               <ref name="SVG.Description.class"/>
               <ref name="SVG.color-profile.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="color-profile">
         <element name="color-profile">
            <ref name="attlist.color-profile"/>
            <ref name="SVG.color-profile.content"/>
         </element>
      </define>
      <define name="attlist.color-profile" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.XLink.attrib"/>
         <optional>
            <attribute name="local"/>
         </optional>
         <attribute name="name"/>
         <optional>
            <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                       name="rendering-intent"
                       a:defaultValue="auto">
               <choice>
                  <value>auto</value>
                  <value>perceptual</value>
                  <value>relative-colorimetric</value>
                  <value>saturation</value>
                  <value>absolute-colorimetric</value>
               </choice>
            </attribute>
         </optional>
      </define>
      <define name="SVG.linearGradient.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.linearGradient.content">
         <zeroOrMore>
            <ref name="SVG.Description.class"/>
         </zeroOrMore>
         <zeroOrMore>
            <choice>
               <ref name="stop"/>
               <ref name="animate"/>
               <ref name="set"/>
               <ref name="animateTransform"/>
               <ref name="SVG.linearGradient.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="linearGradient">
         <element name="linearGradient">
            <ref name="attlist.linearGradient"/>
            <ref name="SVG.linearGradient.content"/>
         </element>
      </define>
      <define name="attlist.linearGradient" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.Style.attrib"/>
         <ref name="SVG.Color.attrib"/>
         <ref name="SVG.Gradient.attrib"/>
         <ref name="SVG.XLink.attrib"/>
         <ref name="SVG.External.attrib"/>
         <optional>
            <attribute name="x1">
               <ref name="Coordinate.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="y1">
               <ref name="Coordinate.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="x2">
               <ref name="Coordinate.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="y2">
               <ref name="Coordinate.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="gradientUnits">
               <choice>
                  <value>userSpaceOnUse</value>
                  <value>objectBoundingBox</value>
               </choice>
            </attribute>
         </optional>
         <optional>
            <attribute name="gradientTransform">
               <ref name="TransformList.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="spreadMethod">
               <choice>
                  <value>pad</value>
                  <value>reflect</value>
                  <value>repeat</value>
               </choice>
            </attribute>
         </optional>
      </define>
      <define name="SVG.radialGradient.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.radialGradient.content">
         <zeroOrMore>
            <ref name="SVG.Description.class"/>
         </zeroOrMore>
         <zeroOrMore>
            <choice>
               <ref name="stop"/>
               <ref name="animate"/>
               <ref name="set"/>
               <ref name="animateTransform"/>
               <ref name="SVG.radialGradient.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="radialGradient">
         <element name="radialGradient">
            <ref name="attlist.radialGradient"/>
            <ref name="SVG.radialGradient.content"/>
         </element>
      </define>
      <define name="attlist.radialGradient" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.Style.attrib"/>
         <ref name="SVG.Color.attrib"/>
         <ref name="SVG.Gradient.attrib"/>
         <ref name="SVG.XLink.attrib"/>
         <ref name="SVG.External.attrib"/>
         <optional>
            <attribute name="cx">
               <ref name="Coordinate.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="cy">
               <ref name="Coordinate.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="r">
               <ref name="Length.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="fx">
               <ref name="Coordinate.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="fy">
               <ref name="Coordinate.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="gradientUnits">
               <choice>
                  <value>userSpaceOnUse</value>
                  <value>objectBoundingBox</value>
               </choice>
            </attribute>
         </optional>
         <optional>
            <attribute name="gradientTransform">
               <ref name="TransformList.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="spreadMethod">
               <choice>
                  <value>pad</value>
                  <value>reflect</value>
                  <value>repeat</value>
               </choice>
            </attribute>
         </optional>
      </define>
      <define name="SVG.stop.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.stop.content">
         <zeroOrMore>
            <choice>
               <ref name="animate"/>
               <ref name="set"/>
               <ref name="animateColor"/>
               <ref name="SVG.stop.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="stop">
         <element name="stop">
            <ref name="attlist.stop"/>
            <ref name="SVG.stop.content"/>
         </element>
      </define>
      <define name="attlist.stop" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.Style.attrib"/>
         <ref name="SVG.Color.attrib"/>
         <ref name="SVG.Gradient.attrib"/>
         <attribute name="offset">
            <ref name="NumberOrPercentage.datatype"/>
         </attribute>
      </define>
      <define name="SVG.pattern.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.pattern.content">
         <zeroOrMore>
            <choice>
               <ref name="SVG.Description.class"/>
               <ref name="SVG.Animation.class"/>
               <ref name="SVG.Structure.class"/>
               <ref name="SVG.Conditional.class"/>
               <ref name="SVG.Image.class"/>
               <ref name="SVG.Style.class"/>
               <ref name="SVG.Shape.class"/>
               <ref name="SVG.Text.class"/>
               <ref name="SVG.Marker.class"/>
               <ref name="SVG.ColorProfile.class"/>
               <ref name="SVG.Gradient.class"/>
               <ref name="SVG.Pattern.class"/>
               <ref name="SVG.Clip.class"/>
               <ref name="SVG.Mask.class"/>
               <ref name="SVG.Filter.class"/>
               <ref name="SVG.Cursor.class"/>
               <ref name="SVG.Hyperlink.class"/>
               <ref name="SVG.View.class"/>
               <ref name="SVG.Script.class"/>
               <ref name="SVG.Font.class"/>
               <ref name="SVG.pattern.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="svgpattern">
         <element name="pattern">
            <ref name="attlist.pattern"/>
            <ref name="SVG.pattern.content"/>
         </element>
      </define>
      <define name="attlist.pattern" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.Conditional.attrib"/>
         <ref name="SVG.Style.attrib"/>
         <ref name="SVG.Presentation.attrib"/>
         <ref name="SVG.XLink.attrib"/>
         <ref name="SVG.External.attrib"/>
         <optional>
            <attribute name="x">
               <ref name="Coordinate.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="y">
               <ref name="Coordinate.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="width">
               <ref name="Length.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="height">
               <ref name="Length.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="patternUnits">
               <choice>
                  <value>userSpaceOnUse</value>
                  <value>objectBoundingBox</value>
               </choice>
            </attribute>
         </optional>
         <optional>
            <attribute name="patternContentUnits">
               <choice>
                  <value>userSpaceOnUse</value>
                  <value>objectBoundingBox</value>
               </choice>
            </attribute>
         </optional>
         <optional>
            <attribute name="patternTransform">
               <ref name="TransformList.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="viewBox">
               <ref name="ViewBoxSpec.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                       name="preserveAspectRatio"
                       a:defaultValue="xMidYMid meet">
               <ref name="PreserveAspectRatioSpec.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.clipPath.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.clipPath.content">
         <zeroOrMore>
            <ref name="SVG.Description.class"/>
         </zeroOrMore>
         <zeroOrMore>
            <choice>
               <ref name="SVG.Animation.class"/>
               <ref name="SVG.Use.class"/>
               <ref name="SVG.Shape.class"/>
               <ref name="SVG.Text.class"/>
               <ref name="SVG.clipPath.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="clipPath">
         <element name="clipPath">
            <ref name="attlist.clipPath"/>
            <ref name="SVG.clipPath.content"/>
         </element>
      </define>
      <define name="attlist.clipPath" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.Conditional.attrib"/>
         <ref name="SVG.Style.attrib"/>
         <ref name="SVG.Text.attrib"/>
         <ref name="SVG.TextContent.attrib"/>
         <ref name="SVG.Font.attrib"/>
         <ref name="SVG.Paint.attrib"/>
         <ref name="SVG.Color.attrib"/>
         <ref name="SVG.Opacity.attrib"/>
         <ref name="SVG.Graphics.attrib"/>
         <ref name="SVG.Clip.attrib"/>
         <ref name="SVG.Mask.attrib"/>
         <ref name="SVG.Filter.attrib"/>
         <ref name="SVG.Cursor.attrib"/>
         <ref name="SVG.External.attrib"/>
         <optional>
            <attribute name="transform">
               <ref name="TransformList.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="clipPathUnits">
               <choice>
                  <value>userSpaceOnUse</value>
                  <value>objectBoundingBox</value>
               </choice>
            </attribute>
         </optional>
      </define>
      <define name="SVG.mask.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.mask.content">
         <zeroOrMore>
            <choice>
               <ref name="SVG.Description.class"/>
               <ref name="SVG.Animation.class"/>
               <ref name="SVG.Structure.class"/>
               <ref name="SVG.Conditional.class"/>
               <ref name="SVG.Image.class"/>
               <ref name="SVG.Style.class"/>
               <ref name="SVG.Shape.class"/>
               <ref name="SVG.Text.class"/>
               <ref name="SVG.Marker.class"/>
               <ref name="SVG.ColorProfile.class"/>
               <ref name="SVG.Gradient.class"/>
               <ref name="SVG.Pattern.class"/>
               <ref name="SVG.Clip.class"/>
               <ref name="SVG.Mask.class"/>
               <ref name="SVG.Filter.class"/>
               <ref name="SVG.Cursor.class"/>
               <ref name="SVG.Hyperlink.class"/>
               <ref name="SVG.View.class"/>
               <ref name="SVG.Script.class"/>
               <ref name="SVG.Font.class"/>
               <ref name="SVG.mask.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="mask">
         <element name="mask">
            <ref name="attlist.mask"/>
            <ref name="SVG.mask.content"/>
         </element>
      </define>
      <define name="attlist.mask" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.Conditional.attrib"/>
         <ref name="SVG.Style.attrib"/>
         <ref name="SVG.Presentation.attrib"/>
         <ref name="SVG.External.attrib"/>
         <optional>
            <attribute name="x">
               <ref name="Coordinate.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="y">
               <ref name="Coordinate.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="width">
               <ref name="Length.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="height">
               <ref name="Length.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="maskUnits">
               <choice>
                  <value>userSpaceOnUse</value>
                  <value>objectBoundingBox</value>
               </choice>
            </attribute>
         </optional>
         <optional>
            <attribute name="maskContentUnits">
               <choice>
                  <value>userSpaceOnUse</value>
                  <value>objectBoundingBox</value>
               </choice>
            </attribute>
         </optional>
      </define>
      <define name="SVG.FilterPrimitive.extra.attrib">
         <empty/>
      </define>
      <define name="SVG.FilterPrimitive.attrib">
         <optional>
            <attribute name="x">
               <ref name="Coordinate.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="y">
               <ref name="Coordinate.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="width">
               <ref name="Length.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="height">
               <ref name="Length.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="result"/>
         </optional>
         <ref name="SVG.FilterPrimitive.extra.attrib"/>
      </define>
      <define name="SVG.FilterPrimitiveWithIn.extra.attrib">
         <empty/>
      </define>
      <define name="SVG.FilterPrimitiveWithIn.attrib">
         <ref name="SVG.FilterPrimitive.attrib"/>
         <optional>
            <attribute name="in"/>
         </optional>
         <ref name="SVG.FilterPrimitiveWithIn.extra.attrib"/>
      </define>
      <define name="SVG.filter.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.filter.content">
         <zeroOrMore>
            <ref name="SVG.Description.class"/>
         </zeroOrMore>
         <zeroOrMore>
            <choice>
               <ref name="animate"/>
               <ref name="set"/>
               <ref name="SVG.FilterPrimitive.class"/>
               <ref name="SVG.filter.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="filter">
         <element name="filter">
            <ref name="attlist.filter"/>
            <ref name="SVG.filter.content"/>
         </element>
      </define>
      <define name="attlist.filter" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.Style.attrib"/>
         <ref name="SVG.Presentation.attrib"/>
         <ref name="SVG.XLink.attrib"/>
         <ref name="SVG.External.attrib"/>
         <optional>
            <attribute name="x">
               <ref name="Coordinate.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="y">
               <ref name="Coordinate.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="width">
               <ref name="Length.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="height">
               <ref name="Length.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="filterRes">
               <ref name="NumberOptionalNumber.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="filterUnits">
               <choice>
                  <value>userSpaceOnUse</value>
                  <value>objectBoundingBox</value>
               </choice>
            </attribute>
         </optional>
         <optional>
            <attribute name="primitiveUnits">
               <choice>
                  <value>userSpaceOnUse</value>
                  <value>objectBoundingBox</value>
               </choice>
            </attribute>
         </optional>
      </define>
      <define name="SVG.feBlend.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.feBlend.content">
         <zeroOrMore>
            <choice>
               <ref name="animate"/>
               <ref name="set"/>
               <ref name="SVG.feBlend.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="feBlend">
         <element name="feBlend">
            <ref name="attlist.feBlend"/>
            <ref name="SVG.feBlend.content"/>
         </element>
      </define>
      <define name="attlist.feBlend" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.FilterColor.attrib"/>
         <ref name="SVG.FilterPrimitiveWithIn.attrib"/>
         <attribute name="in2"/>
         <optional>
            <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                       name="mode"
                       a:defaultValue="normal">
               <choice>
                  <value>normal</value>
                  <value>multiply</value>
                  <value>screen</value>
                  <value>darken</value>
                  <value>lighten</value>
               </choice>
            </attribute>
         </optional>
      </define>
      <define name="SVG.feColorMatrix.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.feColorMatrix.content">
         <zeroOrMore>
            <choice>
               <ref name="animate"/>
               <ref name="set"/>
               <ref name="SVG.feColorMatrix.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="feColorMatrix">
         <element name="feColorMatrix">
            <ref name="attlist.feColorMatrix"/>
            <ref name="SVG.feColorMatrix.content"/>
         </element>
      </define>
      <define name="attlist.feColorMatrix" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.FilterColor.attrib"/>
         <ref name="SVG.FilterPrimitiveWithIn.attrib"/>
         <optional>
            <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                       name="type"
                       a:defaultValue="matrix">
               <choice>
                  <value>matrix</value>
                  <value>saturate</value>
                  <value>hueRotate</value>
                  <value>luminanceToAlpha</value>
               </choice>
            </attribute>
         </optional>
         <optional>
            <attribute name="values"/>
         </optional>
      </define>
      <define name="SVG.feComponentTransfer.extra.content">
         <empty/>
      </define>
      <define name="SVG.feComponentTransfer.content">
         <optional>
            <ref name="feFuncR"/>
         </optional>
         <optional>
            <ref name="feFuncG"/>
         </optional>
         <optional>
            <ref name="feFuncB"/>
         </optional>
         <optional>
            <ref name="feFuncA"/>
         </optional>
         <ref name="SVG.feComponentTransfer.extra.content"/>
      </define>
      <define name="feComponentTransfer">
         <element name="feComponentTransfer">
            <ref name="attlist.feComponentTransfer"/>
            <ref name="SVG.feComponentTransfer.content"/>
         </element>
      </define>
      <define name="attlist.feComponentTransfer" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.FilterColor.attrib"/>
         <ref name="SVG.FilterPrimitiveWithIn.attrib"/>
      </define>
      <define name="SVG.feComposite.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.feComposite.content">
         <zeroOrMore>
            <choice>
               <ref name="animate"/>
               <ref name="set"/>
               <ref name="SVG.feComposite.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="feComposite">
         <element name="feComposite">
            <ref name="attlist.feComposite"/>
            <ref name="SVG.feComposite.content"/>
         </element>
      </define>
      <define name="attlist.feComposite" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.FilterColor.attrib"/>
         <ref name="SVG.FilterPrimitiveWithIn.attrib"/>
         <attribute name="in2"/>
         <optional>
            <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                       name="operator"
                       a:defaultValue="over">
               <choice>
                  <value>over</value>
                  <value>in</value>
                  <value>out</value>
                  <value>atop</value>
                  <value>xor</value>
                  <value>arithmetic</value>
               </choice>
            </attribute>
         </optional>
         <optional>
            <attribute name="k1">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="k2">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="k3">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="k4">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.feConvolveMatrix.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.feConvolveMatrix.content">
         <zeroOrMore>
            <choice>
               <ref name="animate"/>
               <ref name="set"/>
               <ref name="SVG.feConvolveMatrix.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="feConvolveMatrix">
         <element name="feConvolveMatrix">
            <ref name="attlist.feConvolveMatrix"/>
            <ref name="SVG.feConvolveMatrix.content"/>
         </element>
      </define>
      <define name="attlist.feConvolveMatrix" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.FilterColor.attrib"/>
         <ref name="SVG.FilterPrimitiveWithIn.attrib"/>
         <attribute name="order">
            <ref name="NumberOptionalNumber.datatype"/>
         </attribute>
         <attribute name="kernelMatrix"/>
         <optional>
            <attribute name="divisor">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="bias">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="targetX">
               <ref name="Integer.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="targetY">
               <ref name="Integer.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                       name="edgeMode"
                       a:defaultValue="duplicate">
               <choice>
                  <value>duplicate</value>
                  <value>wrap</value>
                  <value>none</value>
               </choice>
            </attribute>
         </optional>
         <optional>
            <attribute name="kernelUnitLength">
               <ref name="NumberOptionalNumber.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="preserveAlpha">
               <ref name="Boolean.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.feDiffuseLighting.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.feDiffuseLighting.content">
         <choice>
            <ref name="feDistantLight"/>
            <ref name="fePointLight"/>
            <ref name="feSpotLight"/>
         </choice>
         <zeroOrMore>
            <choice>
               <ref name="animate"/>
               <ref name="set"/>
               <ref name="animateColor"/>
               <ref name="SVG.feDiffuseLighting.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="feDiffuseLighting">
         <element name="feDiffuseLighting">
            <ref name="attlist.feDiffuseLighting"/>
            <ref name="SVG.feDiffuseLighting.content"/>
         </element>
      </define>
      <define name="attlist.feDiffuseLighting" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.Style.attrib"/>
         <ref name="SVG.Color.attrib"/>
         <ref name="SVG.FilterColor.attrib"/>
         <ref name="SVG.FilterPrimitiveWithIn.attrib"/>
         <optional>
            <attribute name="lighting-color">
               <ref name="SVGColor.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="surfaceScale">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="diffuseConstant">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="kernelUnitLength">
               <ref name="NumberOptionalNumber.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.feDisplacementMap.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.feDisplacementMap.content">
         <zeroOrMore>
            <choice>
               <ref name="animate"/>
               <ref name="set"/>
               <ref name="SVG.feDisplacementMap.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="feDisplacementMap">
         <element name="feDisplacementMap">
            <ref name="attlist.feDisplacementMap"/>
            <ref name="SVG.feDisplacementMap.content"/>
         </element>
      </define>
      <define name="attlist.feDisplacementMap" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.FilterColor.attrib"/>
         <ref name="SVG.FilterPrimitiveWithIn.attrib"/>
         <attribute name="in2"/>
         <optional>
            <attribute name="scale">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                       name="xChannelSelector"
                       a:defaultValue="A">
               <choice>
                  <value>R</value>
                  <value>G</value>
                  <value>B</value>
                  <value>A</value>
               </choice>
            </attribute>
         </optional>
         <optional>
            <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                       name="yChannelSelector"
                       a:defaultValue="A">
               <choice>
                  <value>R</value>
                  <value>G</value>
                  <value>B</value>
                  <value>A</value>
               </choice>
            </attribute>
         </optional>
      </define>
      <define name="SVG.feFlood.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.feFlood.content">
         <zeroOrMore>
            <choice>
               <ref name="animate"/>
               <ref name="set"/>
               <ref name="animateColor"/>
               <ref name="SVG.feFlood.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="feFlood">
         <element name="feFlood">
            <ref name="attlist.feFlood"/>
            <ref name="SVG.feFlood.content"/>
         </element>
      </define>
      <define name="attlist.feFlood" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.Style.attrib"/>
         <ref name="SVG.Color.attrib"/>
         <ref name="SVG.FilterColor.attrib"/>
         <ref name="SVG.FilterPrimitiveWithIn.attrib"/>
         <optional>
            <attribute name="flood-color">
               <ref name="SVGColor.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="flood-opacity">
               <ref name="OpacityValue.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.feGaussianBlur.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.feGaussianBlur.content">
         <zeroOrMore>
            <choice>
               <ref name="animate"/>
               <ref name="set"/>
               <ref name="SVG.feGaussianBlur.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="feGaussianBlur">
         <element name="feGaussianBlur">
            <ref name="attlist.feGaussianBlur"/>
            <ref name="SVG.feGaussianBlur.content"/>
         </element>
      </define>
      <define name="attlist.feGaussianBlur" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.FilterColor.attrib"/>
         <ref name="SVG.FilterPrimitiveWithIn.attrib"/>
         <optional>
            <attribute name="stdDeviation">
               <ref name="NumberOptionalNumber.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.feImage.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.feImage.content">
         <zeroOrMore>
            <choice>
               <ref name="animate"/>
               <ref name="set"/>
               <ref name="animateTransform"/>
               <ref name="SVG.feImage.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="feImage">
         <element name="feImage">
            <ref name="attlist.feImage"/>
            <ref name="SVG.feImage.content"/>
         </element>
      </define>
      <define name="attlist.feImage" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.Style.attrib"/>
         <ref name="SVG.Presentation.attrib"/>
         <ref name="SVG.FilterPrimitive.attrib"/>
         <ref name="SVG.XLinkEmbed.attrib"/>
         <ref name="SVG.External.attrib"/>
         <optional>
            <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                       name="preserveAspectRatio"
                       a:defaultValue="xMidYMid meet">
               <ref name="PreserveAspectRatioSpec.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.feMerge.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.feMerge.content">
         <zeroOrMore>
            <choice>
               <ref name="feMergeNode"/>
               <ref name="SVG.feMerge.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="feMerge">
         <element name="feMerge">
            <ref name="attlist.feMerge"/>
            <ref name="SVG.feMerge.content"/>
         </element>
      </define>
      <define name="attlist.feMerge" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.FilterColor.attrib"/>
         <ref name="SVG.FilterPrimitive.attrib"/>
      </define>
      <define name="SVG.feMergeNode.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.feMergeNode.content">
         <zeroOrMore>
            <choice>
               <ref name="animate"/>
               <ref name="set"/>
               <ref name="SVG.feMergeNode.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="feMergeNode">
         <element name="feMergeNode">
            <ref name="attlist.feMergeNode"/>
            <ref name="SVG.feMergeNode.content"/>
         </element>
      </define>
      <define name="attlist.feMergeNode" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <optional>
            <attribute name="in"/>
         </optional>
      </define>
      <define name="SVG.feMorphology.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.feMorphology.content">
         <zeroOrMore>
            <choice>
               <ref name="animate"/>
               <ref name="set"/>
               <ref name="SVG.feMorphology.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="feMorphology">
         <element name="feMorphology">
            <ref name="attlist.feMorphology"/>
            <ref name="SVG.feMorphology.content"/>
         </element>
      </define>
      <define name="attlist.feMorphology" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.FilterColor.attrib"/>
         <ref name="SVG.FilterPrimitiveWithIn.attrib"/>
         <optional>
            <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                       name="operator"
                       a:defaultValue="erode">
               <choice>
                  <value>erode</value>
                  <value>dilate</value>
               </choice>
            </attribute>
         </optional>
         <optional>
            <attribute name="radius">
               <ref name="NumberOptionalNumber.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.feOffset.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.feOffset.content">
         <zeroOrMore>
            <choice>
               <ref name="animate"/>
               <ref name="set"/>
               <ref name="SVG.feOffset.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="feOffset">
         <element name="feOffset">
            <ref name="attlist.feOffset"/>
            <ref name="SVG.feOffset.content"/>
         </element>
      </define>
      <define name="attlist.feOffset" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.FilterColor.attrib"/>
         <ref name="SVG.FilterPrimitiveWithIn.attrib"/>
         <optional>
            <attribute name="dx">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="dy">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.feSpecularLighting.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.feSpecularLighting.content">
         <choice>
            <ref name="feDistantLight"/>
            <ref name="fePointLight"/>
            <ref name="feSpotLight"/>
         </choice>
         <zeroOrMore>
            <choice>
               <ref name="animate"/>
               <ref name="set"/>
               <ref name="animateColor"/>
               <ref name="SVG.feSpecularLighting.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="feSpecularLighting">
         <element name="feSpecularLighting">
            <ref name="attlist.feSpecularLighting"/>
            <ref name="SVG.feSpecularLighting.content"/>
         </element>
      </define>
      <define name="attlist.feSpecularLighting" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.Style.attrib"/>
         <ref name="SVG.Color.attrib"/>
         <ref name="SVG.FilterColor.attrib"/>
         <ref name="SVG.FilterPrimitiveWithIn.attrib"/>
         <optional>
            <attribute name="lighting-color">
               <ref name="SVGColor.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="surfaceScale">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="specularConstant">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="specularExponent">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="kernelUnitLength">
               <ref name="NumberOptionalNumber.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.feTile.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.feTile.content">
         <zeroOrMore>
            <choice>
               <ref name="animate"/>
               <ref name="set"/>
               <ref name="SVG.feTile.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="feTile">
         <element name="feTile">
            <ref name="attlist.feTile"/>
            <ref name="SVG.feTile.content"/>
         </element>
      </define>
      <define name="attlist.feTile" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.FilterColor.attrib"/>
         <ref name="SVG.FilterPrimitiveWithIn.attrib"/>
      </define>
      <define name="SVG.feTurbulence.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.feTurbulence.content">
         <zeroOrMore>
            <choice>
               <ref name="animate"/>
               <ref name="set"/>
               <ref name="SVG.feTurbulence.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="feTurbulence">
         <element name="feTurbulence">
            <ref name="attlist.feTurbulence"/>
            <ref name="SVG.feTurbulence.content"/>
         </element>
      </define>
      <define name="attlist.feTurbulence" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.FilterColor.attrib"/>
         <ref name="SVG.FilterPrimitive.attrib"/>
         <optional>
            <attribute name="baseFrequency">
               <ref name="NumberOptionalNumber.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="numOctaves">
               <ref name="Integer.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="seed">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                       name="stitchTiles"
                       a:defaultValue="noStitch">
               <choice>
                  <value>stitch</value>
                  <value>noStitch</value>
               </choice>
            </attribute>
         </optional>
         <optional>
            <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                       name="type"
                       a:defaultValue="turbulence">
               <choice>
                  <value>fractalNoise</value>
                  <value>turbulence</value>
               </choice>
            </attribute>
         </optional>
      </define>
      <define name="SVG.feDistantLight.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.feDistantLight.content">
         <zeroOrMore>
            <choice>
               <ref name="animate"/>
               <ref name="set"/>
               <ref name="SVG.feDistantLight.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="feDistantLight">
         <element name="feDistantLight">
            <ref name="attlist.feDistantLight"/>
            <ref name="SVG.feDistantLight.content"/>
         </element>
      </define>
      <define name="attlist.feDistantLight" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <optional>
            <attribute name="azimuth">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="elevation">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.fePointLight.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.fePointLight.content">
         <zeroOrMore>
            <choice>
               <ref name="animate"/>
               <ref name="set"/>
               <ref name="SVG.fePointLight.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="fePointLight">
         <element name="fePointLight">
            <ref name="attlist.fePointLight"/>
            <ref name="SVG.fePointLight.content"/>
         </element>
      </define>
      <define name="attlist.fePointLight" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <optional>
            <attribute name="x">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="y">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="z">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.feSpotLight.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.feSpotLight.content">
         <zeroOrMore>
            <choice>
               <ref name="animate"/>
               <ref name="set"/>
               <ref name="SVG.feSpotLight.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="feSpotLight">
         <element name="feSpotLight">
            <ref name="attlist.feSpotLight"/>
            <ref name="SVG.feSpotLight.content"/>
         </element>
      </define>
      <define name="attlist.feSpotLight" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <optional>
            <attribute name="x">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="y">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="z">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="pointsAtX">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="pointsAtY">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="pointsAtZ">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="specularExponent">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="limitingConeAngle">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.feFuncR.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.feFuncR.content">
         <zeroOrMore>
            <choice>
               <ref name="animate"/>
               <ref name="set"/>
               <ref name="SVG.feFuncR.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="feFuncR">
         <element name="feFuncR">
            <ref name="attlist.feFuncR"/>
            <ref name="SVG.feFuncR.content"/>
         </element>
      </define>
      <define name="attlist.feFuncR" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <attribute name="type">
            <choice>
               <value>identity</value>
               <value>table</value>
               <value>discrete</value>
               <value>linear</value>
               <value>gamma</value>
            </choice>
         </attribute>
         <optional>
            <attribute name="tableValues"/>
         </optional>
         <optional>
            <attribute name="slope">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="intercept">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="amplitude">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="exponent">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="offset">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.feFuncG.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.feFuncG.content">
         <zeroOrMore>
            <choice>
               <ref name="animate"/>
               <ref name="set"/>
               <ref name="SVG.feFuncG.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="feFuncG">
         <element name="feFuncG">
            <ref name="attlist.feFuncG"/>
            <ref name="SVG.feFuncG.content"/>
         </element>
      </define>
      <define name="attlist.feFuncG" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <attribute name="type">
            <choice>
               <value>identity</value>
               <value>table</value>
               <value>discrete</value>
               <value>linear</value>
               <value>gamma</value>
            </choice>
         </attribute>
         <optional>
            <attribute name="tableValues"/>
         </optional>
         <optional>
            <attribute name="slope">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="intercept">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="amplitude">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="exponent">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="offset">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.feFuncB.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.feFuncB.content">
         <zeroOrMore>
            <choice>
               <ref name="animate"/>
               <ref name="set"/>
               <ref name="SVG.feFuncB.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="feFuncB">
         <element name="feFuncB">
            <ref name="attlist.feFuncB"/>
            <ref name="SVG.feFuncB.content"/>
         </element>
      </define>
      <define name="attlist.feFuncB" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <attribute name="type">
            <choice>
               <value>identity</value>
               <value>table</value>
               <value>discrete</value>
               <value>linear</value>
               <value>gamma</value>
            </choice>
         </attribute>
         <optional>
            <attribute name="tableValues"/>
         </optional>
         <optional>
            <attribute name="slope">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="intercept">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="amplitude">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="exponent">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="offset">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.feFuncA.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.feFuncA.content">
         <zeroOrMore>
            <choice>
               <ref name="animate"/>
               <ref name="set"/>
               <ref name="SVG.feFuncA.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="feFuncA">
         <element name="feFuncA">
            <ref name="attlist.feFuncA"/>
            <ref name="SVG.feFuncA.content"/>
         </element>
      </define>
      <define name="attlist.feFuncA" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <attribute name="type">
            <choice>
               <value>identity</value>
               <value>table</value>
               <value>discrete</value>
               <value>linear</value>
               <value>gamma</value>
            </choice>
         </attribute>
         <optional>
            <attribute name="tableValues"/>
         </optional>
         <optional>
            <attribute name="slope">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="intercept">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="amplitude">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="exponent">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="offset">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.cursor.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.cursor.content">
         <zeroOrMore>
            <choice>
               <ref name="SVG.Description.class"/>
               <ref name="SVG.cursor.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="cursor">
         <element name="cursor">
            <ref name="attlist.cursor"/>
            <ref name="SVG.cursor.content"/>
         </element>
      </define>
      <define name="attlist.cursor" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.Conditional.attrib"/>
         <ref name="SVG.XLinkRequired.attrib"/>
         <ref name="SVG.External.attrib"/>
         <optional>
            <attribute name="x">
               <ref name="Coordinate.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="y">
               <ref name="Coordinate.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="LinkTarget.datatype">
         <data type="NMTOKEN"/>
      </define>
      <define name="SVG.a.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.a.content">
         <zeroOrMore>
            <choice>
               <text/>
               <ref name="SVG.Description.class"/>
               <ref name="SVG.Animation.class"/>
               <ref name="SVG.Structure.class"/>
               <ref name="SVG.Conditional.class"/>
               <ref name="SVG.Image.class"/>
               <ref name="SVG.Style.class"/>
               <ref name="SVG.Shape.class"/>
               <ref name="SVG.Text.class"/>
               <ref name="SVG.Marker.class"/>
               <ref name="SVG.ColorProfile.class"/>
               <ref name="SVG.Gradient.class"/>
               <ref name="SVG.Pattern.class"/>
               <ref name="SVG.Clip.class"/>
               <ref name="SVG.Mask.class"/>
               <ref name="SVG.Filter.class"/>
               <ref name="SVG.Cursor.class"/>
               <ref name="SVG.Hyperlink.class"/>
               <ref name="SVG.View.class"/>
               <ref name="SVG.Script.class"/>
               <ref name="SVG.Font.class"/>
               <ref name="SVG.a.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="a">
         <element name="a">
            <ref name="attlist.a"/>
            <ref name="SVG.a.content"/>
         </element>
      </define>
      <define name="attlist.a" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.Conditional.attrib"/>
         <ref name="SVG.Style.attrib"/>
         <ref name="SVG.Presentation.attrib"/>
         <ref name="SVG.GraphicalEvents.attrib"/>
         <ref name="SVG.XLinkReplace.attrib"/>
         <ref name="SVG.External.attrib"/>
         <optional>
            <attribute name="transform">
               <ref name="TransformList.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="target">
               <ref name="LinkTarget.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.view.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.view.content">
         <zeroOrMore>
            <choice>
               <ref name="SVG.Description.class"/>
               <ref name="SVG.view.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="view">
         <element name="view">
            <ref name="attlist.view"/>
            <ref name="SVG.view.content"/>
         </element>
      </define>
      <define name="attlist.view" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.External.attrib"/>
         <optional>
            <attribute name="viewBox">
               <ref name="ViewBoxSpec.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                       name="preserveAspectRatio"
                       a:defaultValue="xMidYMid meet">
               <ref name="PreserveAspectRatioSpec.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                       name="zoomAndPan"
                       a:defaultValue="magnify">
               <choice>
                  <value>disable</value>
                  <value>magnify</value>
               </choice>
            </attribute>
         </optional>
         <optional>
            <attribute name="viewTarget"/>
         </optional>
      </define>
      <define name="SVG.script.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.script.content">
         <zeroOrMore>
            <choice>
               <text/>
               <ref name="SVG.script.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="script">
         <element name="script">
            <ref name="attlist.script"/>
            <ref name="SVG.script.content"/>
         </element>
      </define>
      <define name="attlist.script" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.XLink.attrib"/>
         <ref name="SVG.External.attrib"/>
         <attribute name="type">
            <ref name="ContentType.datatype"/>
         </attribute>
      </define>
      <define name="SVG.Animation.extra.attrib">
         <empty/>
      </define>
      <define name="SVG.Animation.attrib">
         <ref name="SVG.XLink.attrib"/>
         <ref name="SVG.Animation.extra.attrib"/>
      </define>
      <define name="SVG.AnimationAttribute.extra.attrib">
         <empty/>
      </define>
      <define name="SVG.AnimationAttribute.attrib">
         <attribute name="attributeName"/>
         <optional>
            <attribute name="attributeType"/>
         </optional>
         <ref name="SVG.AnimationAttribute.extra.attrib"/>
      </define>
      <define name="SVG.AnimationTiming.extra.attrib">
         <empty/>
      </define>
      <define name="SVG.AnimationTiming.attrib">
         <optional>
            <attribute name="begin"/>
         </optional>
         <optional>
            <attribute name="dur"/>
         </optional>
         <optional>
            <attribute name="end"/>
         </optional>
         <optional>
            <attribute name="min"/>
         </optional>
         <optional>
            <attribute name="max"/>
         </optional>
         <optional>
            <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                       name="restart"
                       a:defaultValue="always">
               <choice>
                  <value>always</value>
                  <value>never</value>
                  <value>whenNotActive</value>
               </choice>
            </attribute>
         </optional>
         <optional>
            <attribute name="repeatCount"/>
         </optional>
         <optional>
            <attribute name="repeatDur"/>
         </optional>
         <optional>
            <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                       name="fill"
                       a:defaultValue="remove">
               <choice>
                  <value>remove</value>
                  <value>freeze</value>
               </choice>
            </attribute>
         </optional>
         <ref name="SVG.AnimationTiming.extra.attrib"/>
      </define>
      <define name="SVG.AnimationValue.extra.attrib">
         <empty/>
      </define>
      <define name="SVG.AnimationValue.attrib">
         <optional>
            <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                       name="calcMode"
                       a:defaultValue="linear">
               <choice>
                  <value>discrete</value>
                  <value>linear</value>
                  <value>paced</value>
                  <value>spline</value>
               </choice>
            </attribute>
         </optional>
         <optional>
            <attribute name="values"/>
         </optional>
         <optional>
            <attribute name="keyTimes"/>
         </optional>
         <optional>
            <attribute name="keySplines"/>
         </optional>
         <optional>
            <attribute name="from"/>
         </optional>
         <optional>
            <attribute name="to"/>
         </optional>
         <optional>
            <attribute name="by"/>
         </optional>
         <ref name="SVG.AnimationValue.extra.attrib"/>
      </define>
      <define name="SVG.AnimationAddtion.extra.attrib">
         <empty/>
      </define>
      <define name="SVG.AnimationAddtion.attrib">
         <optional>
            <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                       name="additive"
                       a:defaultValue="replace">
               <choice>
                  <value>replace</value>
                  <value>sum</value>
               </choice>
            </attribute>
         </optional>
         <optional>
            <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                       name="accumulate"
                       a:defaultValue="none">
               <choice>
                  <value>none</value>
                  <value>sum</value>
               </choice>
            </attribute>
         </optional>
         <ref name="SVG.AnimationAddtion.extra.attrib"/>
      </define>
      <define name="SVG.animate.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.animate.content">
         <zeroOrMore>
            <choice>
               <ref name="SVG.Description.class"/>
               <ref name="SVG.animate.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="animate">
         <element name="animate">
            <ref name="attlist.animate"/>
            <ref name="SVG.animate.content"/>
         </element>
      </define>
      <define name="attlist.animate" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.Conditional.attrib"/>
         <ref name="SVG.AnimationEvents.attrib"/>
         <ref name="SVG.External.attrib"/>
         <ref name="SVG.Animation.attrib"/>
         <ref name="SVG.AnimationAttribute.attrib"/>
         <ref name="SVG.AnimationTiming.attrib"/>
         <ref name="SVG.AnimationValue.attrib"/>
         <ref name="SVG.AnimationAddtion.attrib"/>
      </define>
      <define name="SVG.set.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.set.content">
         <zeroOrMore>
            <choice>
               <ref name="SVG.Description.class"/>
               <ref name="SVG.set.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="set">
         <element name="set">
            <ref name="attlist.set"/>
            <ref name="SVG.set.content"/>
         </element>
      </define>
      <define name="attlist.set" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.Conditional.attrib"/>
         <ref name="SVG.AnimationEvents.attrib"/>
         <ref name="SVG.External.attrib"/>
         <ref name="SVG.Animation.attrib"/>
         <ref name="SVG.AnimationAttribute.attrib"/>
         <ref name="SVG.AnimationTiming.attrib"/>
         <optional>
            <attribute name="to"/>
         </optional>
      </define>
      <define name="SVG.animateMotion.extra.content">
         <empty/>
      </define>
      <define name="SVG.animateMotion.content">
         <zeroOrMore>
            <ref name="SVG.Description.class"/>
         </zeroOrMore>
         <optional>
            <ref name="mpath"/>
         </optional>
         <ref name="SVG.animateMotion.extra.content"/>
      </define>
      <define name="animateMotion">
         <element name="animateMotion">
            <ref name="attlist.animateMotion"/>
            <ref name="SVG.animateMotion.content"/>
         </element>
      </define>
      <define name="attlist.animateMotion" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.Conditional.attrib"/>
         <ref name="SVG.AnimationEvents.attrib"/>
         <ref name="SVG.External.attrib"/>
         <ref name="SVG.Animation.attrib"/>
         <ref name="SVG.AnimationTiming.attrib"/>
         <ref name="SVG.AnimationAddtion.attrib"/>
         <optional>
            <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                       name="calcMode"
                       a:defaultValue="paced">
               <choice>
                  <value>discrete</value>
                  <value>linear</value>
                  <value>paced</value>
                  <value>spline</value>
               </choice>
            </attribute>
         </optional>
         <optional>
            <attribute name="values"/>
         </optional>
         <optional>
            <attribute name="keyTimes"/>
         </optional>
         <optional>
            <attribute name="keySplines"/>
         </optional>
         <optional>
            <attribute name="from"/>
         </optional>
         <optional>
            <attribute name="to"/>
         </optional>
         <optional>
            <attribute name="by"/>
         </optional>
         <optional>
            <attribute name="path"/>
         </optional>
         <optional>
            <attribute name="keyPoints"/>
         </optional>
         <optional>
            <attribute name="rotate"/>
         </optional>
         <optional>
            <attribute name="origin"/>
         </optional>
      </define>
      <define name="SVG.animateColor.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.animateColor.content">
         <zeroOrMore>
            <choice>
               <ref name="SVG.Description.class"/>
               <ref name="SVG.animateColor.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="animateColor">
         <element name="animateColor">
            <ref name="attlist.animateColor"/>
            <ref name="SVG.animateColor.content"/>
         </element>
      </define>
      <define name="attlist.animateColor" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.Conditional.attrib"/>
         <ref name="SVG.AnimationEvents.attrib"/>
         <ref name="SVG.External.attrib"/>
         <ref name="SVG.Animation.attrib"/>
         <ref name="SVG.AnimationAttribute.attrib"/>
         <ref name="SVG.AnimationTiming.attrib"/>
         <ref name="SVG.AnimationValue.attrib"/>
         <ref name="SVG.AnimationAddtion.attrib"/>
      </define>
      <define name="SVG.animateTransform.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.animateTransform.content">
         <zeroOrMore>
            <choice>
               <ref name="SVG.Description.class"/>
               <ref name="SVG.animateTransform.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="animateTransform">
         <element name="animateTransform">
            <ref name="attlist.animateTransform"/>
            <ref name="SVG.animateTransform.content"/>
         </element>
      </define>
      <define name="attlist.animateTransform" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.Conditional.attrib"/>
         <ref name="SVG.AnimationEvents.attrib"/>
         <ref name="SVG.External.attrib"/>
         <ref name="SVG.Animation.attrib"/>
         <ref name="SVG.AnimationAttribute.attrib"/>
         <ref name="SVG.AnimationTiming.attrib"/>
         <ref name="SVG.AnimationValue.attrib"/>
         <ref name="SVG.AnimationAddtion.attrib"/>
         <optional>
            <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                       name="type"
                       a:defaultValue="translate">
               <choice>
                  <value>translate</value>
                  <value>scale</value>
                  <value>rotate</value>
                  <value>skewX</value>
                  <value>skewY</value>
               </choice>
            </attribute>
         </optional>
      </define>
      <define name="SVG.mpath.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.mpath.content">
         <zeroOrMore>
            <choice>
               <ref name="SVG.Description.class"/>
               <ref name="SVG.mpath.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="mpath">
         <element name="mpath">
            <ref name="attlist.mpath"/>
            <ref name="SVG.mpath.content"/>
         </element>
      </define>
      <define name="attlist.mpath" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.XLinkRequired.attrib"/>
         <ref name="SVG.External.attrib"/>
      </define>
      <define name="SVG.font.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.font.content">
         <zeroOrMore>
            <ref name="SVG.Description.class"/>
         </zeroOrMore>
         <ref name="font-face"/>
         <ref name="missing-glyph"/>
         <zeroOrMore>
            <choice>
               <ref name="glyph"/>
               <ref name="hkern"/>
               <ref name="vkern"/>
               <ref name="SVG.font.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="font">
         <element name="font">
            <ref name="attlist.font"/>
            <ref name="SVG.font.content"/>
         </element>
      </define>
      <define name="attlist.font" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.Style.attrib"/>
         <ref name="SVG.Presentation.attrib"/>
         <ref name="SVG.External.attrib"/>
         <optional>
            <attribute name="horiz-origin-x">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="horiz-origin-y">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <attribute name="horiz-adv-x">
            <ref name="Number.datatype"/>
         </attribute>
         <optional>
            <attribute name="vert-origin-x">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="vert-origin-y">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="vert-adv-y">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.font-face.extra.content">
         <empty/>
      </define>
      <define name="SVG.font-face.content">
         <zeroOrMore>
            <ref name="SVG.Description.class"/>
         </zeroOrMore>
         <optional>
            <ref name="font-face-src"/>
         </optional>
         <optional>
            <ref name="definition-src"/>
         </optional>
         <ref name="SVG.font-face.extra.content"/>
      </define>
      <define name="font-face">
         <element name="font-face">
            <ref name="attlist.font-face"/>
            <ref name="SVG.font-face.content"/>
         </element>
      </define>
      <define name="attlist.font-face" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <optional>
            <attribute name="font-family"/>
         </optional>
         <optional>
            <attribute name="font-style"/>
         </optional>
         <optional>
            <attribute name="font-variant"/>
         </optional>
         <optional>
            <attribute name="font-weight"/>
         </optional>
         <optional>
            <attribute name="font-stretch"/>
         </optional>
         <optional>
            <attribute name="font-size"/>
         </optional>
         <optional>
            <attribute name="unicode-range"/>
         </optional>
         <optional>
            <attribute name="units-per-em">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="panose-1"/>
         </optional>
         <optional>
            <attribute name="stemv">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="stemh">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="slope">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="cap-height">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="x-height">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="accent-height">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="ascent">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="descent">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="widths"/>
         </optional>
         <optional>
            <attribute name="bbox"/>
         </optional>
         <optional>
            <attribute name="ideographic">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="alphabetic">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="mathematical">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="hanging">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="v-ideographic">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="v-alphabetic">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="v-mathematical">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="v-hanging">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="underline-position">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="underline-thickness">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="strikethrough-position">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="strikethrough-thickness">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="overline-position">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="overline-thickness">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.glyph.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.glyph.content">
         <zeroOrMore>
            <choice>
               <ref name="SVG.Description.class"/>
               <ref name="SVG.Animation.class"/>
               <ref name="SVG.Structure.class"/>
               <ref name="SVG.Conditional.class"/>
               <ref name="SVG.Image.class"/>
               <ref name="SVG.Style.class"/>
               <ref name="SVG.Shape.class"/>
               <ref name="SVG.Text.class"/>
               <ref name="SVG.Marker.class"/>
               <ref name="SVG.ColorProfile.class"/>
               <ref name="SVG.Gradient.class"/>
               <ref name="SVG.Pattern.class"/>
               <ref name="SVG.Clip.class"/>
               <ref name="SVG.Mask.class"/>
               <ref name="SVG.Filter.class"/>
               <ref name="SVG.Cursor.class"/>
               <ref name="SVG.Hyperlink.class"/>
               <ref name="SVG.View.class"/>
               <ref name="SVG.Script.class"/>
               <ref name="SVG.Font.class"/>
               <ref name="SVG.glyph.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="glyph">
         <element name="glyph">
            <ref name="attlist.glyph"/>
            <ref name="SVG.glyph.content"/>
         </element>
      </define>
      <define name="attlist.glyph" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.Style.attrib"/>
         <ref name="SVG.Presentation.attrib"/>
         <optional>
            <attribute name="unicode"/>
         </optional>
         <optional>
            <attribute name="glyph-name"/>
         </optional>
         <optional>
            <attribute name="d">
               <ref name="PathData.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="orientation"/>
         </optional>
         <optional>
            <attribute name="arabic-form"/>
         </optional>
         <optional>
            <attribute name="lang">
               <ref name="LanguageCodes.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="horiz-adv-x">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="vert-origin-x">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="vert-origin-y">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="vert-adv-y">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.missing-glyph.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.missing-glyph.content">
         <zeroOrMore>
            <choice>
               <ref name="SVG.Description.class"/>
               <ref name="SVG.Animation.class"/>
               <ref name="SVG.Structure.class"/>
               <ref name="SVG.Conditional.class"/>
               <ref name="SVG.Image.class"/>
               <ref name="SVG.Style.class"/>
               <ref name="SVG.Shape.class"/>
               <ref name="SVG.Text.class"/>
               <ref name="SVG.Marker.class"/>
               <ref name="SVG.ColorProfile.class"/>
               <ref name="SVG.Gradient.class"/>
               <ref name="SVG.Pattern.class"/>
               <ref name="SVG.Clip.class"/>
               <ref name="SVG.Mask.class"/>
               <ref name="SVG.Filter.class"/>
               <ref name="SVG.Cursor.class"/>
               <ref name="SVG.Hyperlink.class"/>
               <ref name="SVG.View.class"/>
               <ref name="SVG.Script.class"/>
               <ref name="SVG.Font.class"/>
               <ref name="SVG.missing-glyph.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="missing-glyph">
         <element name="missing-glyph">
            <ref name="attlist.missing-glyph"/>
            <ref name="SVG.missing-glyph.content"/>
         </element>
      </define>
      <define name="attlist.missing-glyph" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.Style.attrib"/>
         <ref name="SVG.Presentation.attrib"/>
         <optional>
            <attribute name="d">
               <ref name="PathData.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="horiz-adv-x">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="vert-origin-x">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="vert-origin-y">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="vert-adv-y">
               <ref name="Number.datatype"/>
            </attribute>
         </optional>
      </define>
      <define name="SVG.hkern.content">
         <empty/>
      </define>
      <define name="hkern">
         <element name="hkern">
            <ref name="attlist.hkern"/>
            <ref name="SVG.hkern.content"/>
         </element>
      </define>
      <define name="attlist.hkern" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <optional>
            <attribute name="u1"/>
         </optional>
         <optional>
            <attribute name="g1"/>
         </optional>
         <optional>
            <attribute name="u2"/>
         </optional>
         <optional>
            <attribute name="g2"/>
         </optional>
         <attribute name="k">
            <ref name="Number.datatype"/>
         </attribute>
      </define>
      <define name="SVG.vkern.content">
         <empty/>
      </define>
      <define name="vkern">
         <element name="vkern">
            <ref name="attlist.vkern"/>
            <ref name="SVG.vkern.content"/>
         </element>
      </define>
      <define name="attlist.vkern" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <optional>
            <attribute name="u1"/>
         </optional>
         <optional>
            <attribute name="g1"/>
         </optional>
         <optional>
            <attribute name="u2"/>
         </optional>
         <optional>
            <attribute name="g2"/>
         </optional>
         <attribute name="k">
            <ref name="Number.datatype"/>
         </attribute>
      </define>
      <define name="SVG.font-face-src.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.font-face-src.content">
         <oneOrMore>
            <choice>
               <ref name="font-face-uri"/>
               <ref name="font-face-name"/>
               <ref name="SVG.font-face-src.extra.content"/>
            </choice>
         </oneOrMore>
      </define>
      <define name="font-face-src">
         <element name="font-face-src">
            <ref name="attlist.font-face-src"/>
            <ref name="SVG.font-face-src.content"/>
         </element>
      </define>
      <define name="attlist.font-face-src" combine="interleave">
         <ref name="SVG.Core.attrib"/>
      </define>
      <define name="SVG.font-face-uri.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.font-face-uri.content">
         <zeroOrMore>
            <choice>
               <ref name="font-face-format"/>
               <ref name="SVG.font-face-uri.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="font-face-uri">
         <element name="font-face-uri">
            <ref name="attlist.font-face-uri"/>
            <ref name="SVG.font-face-uri.content"/>
         </element>
      </define>
      <define name="attlist.font-face-uri" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.XLinkRequired.attrib"/>
      </define>
      <define name="SVG.font-face-format.content">
         <empty/>
      </define>
      <define name="font-face-format">
         <element name="font-face-format">
            <ref name="attlist.font-face-format"/>
            <ref name="SVG.font-face-format.content"/>
         </element>
      </define>
      <define name="attlist.font-face-format" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <optional>
            <attribute name="string"/>
         </optional>
      </define>
      <define name="SVG.font-face-name.content">
         <empty/>
      </define>
      <define name="font-face-name">
         <element name="font-face-name">
            <ref name="attlist.font-face-name"/>
            <ref name="SVG.font-face-name.content"/>
         </element>
      </define>
      <define name="attlist.font-face-name" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <optional>
            <attribute name="name"/>
         </optional>
      </define>
      <define name="SVG.definition-src.content">
         <empty/>
      </define>
      <define name="definition-src">
         <element name="definition-src">
            <ref name="attlist.definition-src"/>
            <ref name="SVG.definition-src.content"/>
         </element>
      </define>
      <define name="attlist.definition-src" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.XLinkRequired.attrib"/>
      </define>
      <define name="SVG.foreignObject.extra.content">
         <notAllowed/>
      </define>
      <define name="SVG.foreignObject.content">
         <zeroOrMore>
            <choice>
               <text/>
               <ref name="SVG.foreignObject.extra.content"/>
            </choice>
         </zeroOrMore>
      </define>
      <define name="foreignObject">
         <element name="foreignObject">
            <ref name="attlist.foreignObject"/>
            <ref name="SVG.foreignObject.content"/>
         </element>
      </define>
      <define name="attlist.foreignObject" combine="interleave">
         <ref name="SVG.Core.attrib"/>
         <ref name="SVG.Conditional.attrib"/>
         <ref name="SVG.Style.attrib"/>
         <ref name="SVG.Presentation.attrib"/>
         <ref name="SVG.GraphicalEvents.attrib"/>
         <ref name="SVG.External.attrib"/>
         <optional>
            <attribute name="x">
               <ref name="Coordinate.datatype"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="y">
               <ref name="Coordinate.datatype"/>
            </attribute>
         </optional>
         <attribute name="width">
            <ref name="Length.datatype"/>
         </attribute>
         <attribute name="height">
            <ref name="Length.datatype"/>
         </attribute>
         <optional>
            <attribute name="transform">
               <ref name="TransformList.datatype"/>
            </attribute>
         </optional>
      </define>
   </div>
   <define name="_teimacro.paraContent">
      <zeroOrMore>
         <choice>
            <text/>
            <ref name="_teimodel.gLike"/>
            <ref name="_teimodel.phrase"/>
            <ref name="_teimodel.inter"/>
            <ref name="_teimodel.global"/>
            <ref name="_teilg"/>
            <ref name="_teimodel.lLike"/>
         </choice>
      </zeroOrMore>
   </define>
   <define name="_teimacro.limitedContent">
      <zeroOrMore>
         <choice>
            <text/>
            <ref name="_teimodel.limitedPhrase"/>
            <ref name="_teimodel.inter"/>
         </choice>
      </zeroOrMore>
   </define>
   <define name="_teimacro.phraseSeq">
      <zeroOrMore>
         <choice>
            <text/>
            <ref name="_teimodel.gLike"/>
            <ref name="_teimodel.phrase"/>
            <ref name="_teimodel.global"/>
         </choice>
      </zeroOrMore>
   </define>
   <define name="_teimacro.phraseSeq.limited">
      <zeroOrMore>
         <choice>
            <text/>
            <ref name="_teimodel.limitedPhrase"/>
            <ref name="_teimodel.global"/>
         </choice>
      </zeroOrMore>
   </define>
   <define name="_teimacro.specialPara">
      <zeroOrMore>
         <choice>
            <text/>
            <ref name="_teimodel.gLike"/>
            <ref name="_teimodel.phrase"/>
            <ref name="_teimodel.inter"/>
            <ref name="_teimodel.divPart"/>
            <ref name="_teimodel.global"/>
         </choice>
      </zeroOrMore>
   </define>
   <define name="_teimacro.xtext">
      <zeroOrMore>
         <choice>
            <text/>
            <ref name="_teimodel.gLike"/>
         </choice>
      </zeroOrMore>
   </define>
   <define name="_teimacro.lineContent">
      <zeroOrMore>
         <choice>
            <text/>
            <ref name="_teimodel.gLike"/>
            <ref name="_teimodel.phrase"/>
            <ref name="_teimodel.global"/>
            <ref name="_teimodel.linePart"/>
         </choice>
      </zeroOrMore>
   </define>
   <define name="anyElement-xenoData">
      <element>
         <anyName>
            <except>
               <nsName ns="http://www.tei-c.org/ns/1.0"/>
               <name ns="http://www.tei-c.org/ns/Examples">egXML</name>
            </except>
         </anyName>
         <zeroOrMore>
            <attribute>
               <anyName/>
            </attribute>
         </zeroOrMore>
         <zeroOrMore>
            <choice>
               <text/>
               <ref name="anyElement-xenoData"/>
            </choice>
         </zeroOrMore>
      </element>
   </define>
   <define name="_teiatt.ascribed.attributes">
      <ref name="_teiatt.ascribed.attribute.who"/>
   </define>
   <define name="_teiatt.ascribed.attribute.who">
      <optional>
         <attribute name="who">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the person, or group of people, to whom the element content is ascribed.</a:documentation>
            <list>
               <oneOrMore>
                  <data type="anyURI"/>
               </oneOrMore>
            </list>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.ascribed.directed.attributes">
      <ref name="_teiatt.ascribed.attributes"/>
      <ref name="_teiatt.ascribed.directed.attribute.toWhom"/>
   </define>
   <define name="_teiatt.ascribed.directed.attribute.toWhom">
      <optional>
         <attribute name="toWhom">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the person, or group of people, to whom a speech act or action is directed.</a:documentation>
            <list>
               <oneOrMore>
                  <data type="anyURI"/>
               </oneOrMore>
            </list>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.canonical.attributes">
      <ref name="_teiatt.canonical.attribute.key"/>
      <ref name="_teiatt.canonical.attribute.ref"/>
   </define>
   <define name="_teiatt.canonical.attribute.key">
      <optional>
         <attribute name="key">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">provides an externally-defined means of identifying the entity (or entities) being named, using a coded value of some kind.</a:documentation>
            <data type="string"/>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.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 or identity for the entity being named by means of one or more URIs.</a:documentation>
            <list>
               <oneOrMore>
                  <data type="anyURI"/>
               </oneOrMore>
            </list>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.ranging.attributes">
      <ref name="_teiatt.ranging.attribute.atLeast"/>
      <ref name="_teiatt.ranging.attribute.atMost"/>
      <ref name="_teiatt.ranging.attribute.min"/>
      <ref name="_teiatt.ranging.attribute.max"/>
      <ref name="_teiatt.ranging.attribute.confidence"/>
   </define>
   <define name="_teiatt.ranging.attribute.atLeast">
      <optional>
         <attribute name="atLeast">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">gives a minimum estimated value for the approximate measurement.</a:documentation>
            <choice>
               <data type="double"/>
               <data type="token">
                  <param name="pattern">(\-?[\d]+/\-?[\d]+)</param>
               </data>
               <data type="decimal"/>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.ranging.attribute.atMost">
      <optional>
         <attribute name="atMost">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">gives a maximum estimated value for the approximate measurement.</a:documentation>
            <choice>
               <data type="double"/>
               <data type="token">
                  <param name="pattern">(\-?[\d]+/\-?[\d]+)</param>
               </data>
               <data type="decimal"/>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.ranging.attribute.min">
      <optional>
         <attribute name="min">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">where the measurement summarizes more than one observation or a range, supplies the minimum value observed.</a:documentation>
            <choice>
               <data type="double"/>
               <data type="token">
                  <param name="pattern">(\-?[\d]+/\-?[\d]+)</param>
               </data>
               <data type="decimal"/>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.ranging.attribute.max">
      <optional>
         <attribute name="max">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">where the measurement summarizes more than one observation or a range, supplies the maximum value observed.</a:documentation>
            <choice>
               <data type="double"/>
               <data type="token">
                  <param name="pattern">(\-?[\d]+/\-?[\d]+)</param>
               </data>
               <data type="decimal"/>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.ranging.attribute.confidence">
      <optional>
         <attribute name="confidence">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the degree of statistical confidence (between zero and one) that a value falls within the range specified by min and max, or the proportion of observed values that fall within that range.</a:documentation>
            <data type="double"/>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.dimensions.attributes">
      <ref name="_teiatt.ranging.attributes"/>
      <ref name="_teiatt.dimensions.attribute.unit"/>
      <ref name="_teiatt.dimensions.attribute.quantity"/>
      <ref name="_teiatt.dimensions.attribute.extent"/>
      <ref name="_teiatt.dimensions.attribute.precision"/>
      <ref name="_teiatt.dimensions.attribute.scope"/>
   </define>
   <define name="_teiatt.dimensions.attribute.unit">
      <optional>
         <attribute name="unit">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">names the unit used for the measurement
Suggested values include: 1] cm (centimetres) ; 2] mm (millimetres) ; 3] in (inches) ; 4] lines; 5] chars (characters) </a:documentation>
            <choice>
               <value>cm</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(centimetres) </a:documentation>
               <value>mm</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(millimetres) </a:documentation>
               <value>in</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(inches) </a:documentation>
               <value>lines</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">lines of text</a:documentation>
               <value>chars</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(characters) characters of text</a:documentation>
               <data type="token">
                  <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
               </data>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.dimensions.attribute.quantity">
      <optional>
         <attribute name="quantity">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the length in the units specified</a:documentation>
            <choice>
               <data type="double"/>
               <data type="token">
                  <param name="pattern">(\-?[\d]+/\-?[\d]+)</param>
               </data>
               <data type="decimal"/>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.dimensions.attribute.extent">
      <optional>
         <attribute name="extent">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the size of the object concerned using a project-specific vocabulary combining quantity and units in a single string of words.</a:documentation>
            <data type="string"/>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.dimensions.attribute.precision">
      <optional>
         <attribute name="precision">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">characterizes the precision of the values specified by the other attributes.</a:documentation>
            <choice>
               <value>high</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
               <value>medium</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
               <value>low</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
               <value>unknown</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.dimensions.attribute.scope">
      <optional>
         <attribute name="scope">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">where the measurement summarizes more than one observation, specifies the applicability of this measurement.
Sample values include: 1] all; 2] most; 3] range</a:documentation>
            <data type="token">
               <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
            </data>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.written.attributes">
      <ref name="_teiatt.written.attribute.hand"/>
   </define>
   <define name="_teiatt.written.attribute.hand">
      <optional>
         <attribute name="hand">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">points to a handNote element describing the hand considered responsible for the content of the element concerned.</a:documentation>
            <data type="anyURI"/>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.damaged.attributes">
      <ref name="_teiatt.dimensions.attributes"/>
      <ref name="_teiatt.written.attributes"/>
      <ref name="_teiatt.damaged.attribute.agent"/>
      <ref name="_teiatt.damaged.attribute.degree"/>
      <ref name="_teiatt.damaged.attribute.group"/>
   </define>
   <define name="_teiatt.damaged.attribute.agent">
      <optional>
         <attribute name="agent">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">categorizes the cause of the damage, if it can be identified.
Sample values include: 1] rubbing; 2] mildew; 3] smoke</a:documentation>
            <data type="token">
               <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
            </data>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.damaged.attribute.degree">
      <optional>
         <attribute name="degree">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">provides a coded representation of the degree of damage, either as a number between 0 (undamaged) and 1 (very extensively damaged), or as one of the codes high, medium, low, or unknown. The damage element with the degree attribute should only be used where the text may be read with some confidence; text supplied from other sources should be tagged as supplied.</a:documentation>
            <choice>
               <data type="double"/>
               <choice>
                  <value>high</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
                  <value>medium</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
                  <value>low</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
                  <value>unknown</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
               </choice>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.damaged.attribute.group">
      <optional>
         <attribute name="group">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">assigns an arbitrary number to each stretch of damage regarded as forming part of the same physical phenomenon.</a:documentation>
            <data type="nonNegativeInteger"/>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.breaking.attributes">
      <ref name="_teiatt.breaking.attribute.break"/>
   </define>
   <define name="_teiatt.breaking.attribute.break">
      <optional>
         <attribute name="break">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates whether or not the element bearing this attribute should be considered to mark the end of an orthographic token in the same way as whitespace.</a:documentation>
            <data type="token">
               <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
            </data>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.cReferencing.attributes">
      <ref name="_teiatt.cReferencing.attribute.cRef"/>
   </define>
   <define name="_teiatt.cReferencing.attribute.cRef">
      <optional>
         <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 expressed using the scheme defined in a refsDecl element in the TEI header</a:documentation>
            <data type="string"/>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.datable.w3c.attributes">
      <ref name="_teiatt.datable.w3c.attribute.when"/>
      <ref name="_teiatt.datable.w3c.attribute.notBefore"/>
      <ref name="_teiatt.datable.w3c.attribute.notAfter"/>
      <ref name="_teiatt.datable.w3c.attribute.from"/>
      <ref name="_teiatt.datable.w3c.attribute.to"/>
   </define>
   <define name="_teiatt.datable.w3c.attribute.when">
      <optional>
         <attribute name="when">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">supplies the value of the date or time in a standard form, e.g. yyyy-mm-dd.</a:documentation>
            <choice>
               <data type="date"/>
               <data type="gYear"/>
               <data type="gMonth"/>
               <data type="gDay"/>
               <data type="gYearMonth"/>
               <data type="gMonthDay"/>
               <data type="time"/>
               <data type="dateTime"/>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.datable.w3c.attribute.notBefore">
      <optional>
         <attribute name="notBefore">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the earliest possible date for the event in standard form, e.g. yyyy-mm-dd.</a:documentation>
            <choice>
               <data type="date"/>
               <data type="gYear"/>
               <data type="gMonth"/>
               <data type="gDay"/>
               <data type="gYearMonth"/>
               <data type="gMonthDay"/>
               <data type="time"/>
               <data type="dateTime"/>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.datable.w3c.attribute.notAfter">
      <optional>
         <attribute name="notAfter">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the latest possible date for the event in standard form, e.g. yyyy-mm-dd.</a:documentation>
            <choice>
               <data type="date"/>
               <data type="gYear"/>
               <data type="gMonth"/>
               <data type="gDay"/>
               <data type="gYearMonth"/>
               <data type="gMonthDay"/>
               <data type="time"/>
               <data type="dateTime"/>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.datable.w3c.attribute.from">
      <optional>
         <attribute name="from">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the starting point of the period in standard form, e.g. yyyy-mm-dd.</a:documentation>
            <choice>
               <data type="date"/>
               <data type="gYear"/>
               <data type="gMonth"/>
               <data type="gDay"/>
               <data type="gYearMonth"/>
               <data type="gMonthDay"/>
               <data type="time"/>
               <data type="dateTime"/>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.datable.w3c.attribute.to">
      <optional>
         <attribute name="to">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the ending point of the period in standard form, e.g. yyyy-mm-dd.</a:documentation>
            <choice>
               <data type="date"/>
               <data type="gYear"/>
               <data type="gMonth"/>
               <data type="gDay"/>
               <data type="gYearMonth"/>
               <data type="gMonthDay"/>
               <data type="time"/>
               <data type="dateTime"/>
            </choice>
         </attribute>
      </optional>
   </define>
   <pattern xmlns="http://purl.oclc.org/dsdl/schematron"
            id="faust-tei-att.datable.w3c-att-datable-w3c-when-constraint-rule-1">
      <sch:rule xmlns:sch="http://purl.oclc.org/dsdl/schematron"
                xmlns="http://www.tei-c.org/ns/1.0"
                xmlns:rng="http://relaxng.org/ns/structure/1.0"
                xmlns:ge="http://www.tei-c.org/ns/geneticEditions"
                xmlns:svg="http://www.w3.org/2000/svg"
                xmlns:f="http://www.faustedition.net/ns"
                context="tei:*[@when]">
        <sch:report test="@notBefore|@notAfter|@from|@to" role="nonfatal">The @when attribute cannot be used with any other att.datable.w3c attributes.</sch:report>
      </sch:rule>
   </pattern>
   <pattern xmlns="http://purl.oclc.org/dsdl/schematron"
            id="faust-tei-att.datable.w3c-att-datable-w3c-from-constraint-rule-2">
      <sch:rule xmlns:sch="http://purl.oclc.org/dsdl/schematron"
                xmlns="http://www.tei-c.org/ns/1.0"
                xmlns:rng="http://relaxng.org/ns/structure/1.0"
                xmlns:ge="http://www.tei-c.org/ns/geneticEditions"
                xmlns:svg="http://www.w3.org/2000/svg"
                xmlns:f="http://www.faustedition.net/ns"
                context="tei:*[@from]">
        <sch:report test="@notBefore" role="nonfatal">The @from and @notBefore attributes cannot be used together.</sch:report>
      </sch:rule>
   </pattern>
   <pattern xmlns="http://purl.oclc.org/dsdl/schematron"
            id="faust-tei-att.datable.w3c-att-datable-w3c-to-constraint-rule-3">
      <sch:rule xmlns:sch="http://purl.oclc.org/dsdl/schematron"
                xmlns="http://www.tei-c.org/ns/1.0"
                xmlns:rng="http://relaxng.org/ns/structure/1.0"
                xmlns:ge="http://www.tei-c.org/ns/geneticEditions"
                xmlns:svg="http://www.w3.org/2000/svg"
                xmlns:f="http://www.faustedition.net/ns"
                context="tei:*[@to]">
        <sch:report test="@notAfter" role="nonfatal">The @to and @notAfter attributes cannot be used together.</sch:report>
      </sch:rule>
   </pattern>
   <define name="_teiatt.datable.attributes">
      <ref name="_teiatt.datable.w3c.attributes"/>
      <ref name="_teiatt.datable.iso.attributes"/>
      <ref name="_teiatt.datable.custom.attributes"/>
      <ref name="_teiatt.datable.attribute.calendar"/>
      <ref name="_teiatt.datable.attribute.period"/>
   </define>
   <define name="_teiatt.datable.attribute.calendar">
      <optional>
         <attribute name="calendar">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the system or calendar to which the date represented by the content of this element belongs.</a:documentation>
            <data type="anyURI"/>
         </attribute>
      </optional>
   </define>
   <pattern xmlns="http://purl.oclc.org/dsdl/schematron"
            id="faust-tei-att.datable-calendar-calendar-constraint-rule-4">
      <sch:rule xmlns:sch="http://purl.oclc.org/dsdl/schematron"
                xmlns="http://www.tei-c.org/ns/1.0"
                xmlns:rng="http://relaxng.org/ns/structure/1.0"
                xmlns:ge="http://www.tei-c.org/ns/geneticEditions"
                xmlns:svg="http://www.w3.org/2000/svg"
                xmlns:f="http://www.faustedition.net/ns"
                context="tei:*[@calendar]">
            <sch:assert test="string-length(.) gt 0">
@calendar indicates the system or calendar to which the date represented by the content of this element
belongs, but this <sch:name/> element has no textual content.</sch:assert>
          </sch:rule>
   </pattern>
   <define name="_teiatt.datable.attribute.period">
      <optional>
         <attribute name="period">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">supplies a pointer to some location defining a named period of time within which the datable item is understood to have occurred.</a:documentation>
            <data type="anyURI"/>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.datcat.attributes">
      <ref name="_teiatt.datcat.attribute.datcat"/>
      <ref name="_teiatt.datcat.attribute.valueDatcat"/>
   </define>
   <define name="_teiatt.datcat.attribute.datcat">
      <optional>
         <attribute name="datcat" ns="http://www.isocat.org/ns/dcr">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a PID (persistent identifier) that aligns the given element with the appropriate Data Category (or categories) in ISOcat.</a:documentation>
            <list>
               <oneOrMore>
                  <data type="anyURI"/>
               </oneOrMore>
            </list>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.datcat.attribute.valueDatcat">
      <optional>
         <attribute name="valueDatcat" ns="http://www.isocat.org/ns/dcr">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a PID (persistent identifier) that aligns the content of the given element or the value of the given attribute with the appropriate simple Data Category (or categories) in ISOcat.</a:documentation>
            <list>
               <oneOrMore>
                  <data type="anyURI"/>
               </oneOrMore>
            </list>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.declarable.attributes">
      <ref name="_teiatt.declarable.attribute.default"/>
   </define>
   <define name="_teiatt.declarable.attribute.default">
      <optional>
         <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                    name="default"
                    a:defaultValue="false">
            <a:documentation>indicates whether or not this element is selected by default when its parent is selected.</a:documentation>
            <choice>
               <value>true</value>
               <a:documentation>This element is selected if its parent is selected</a:documentation>
               <value>false</value>
               <a:documentation>This element can only be selected explicitly, unless it is the only one of its kind, in which case it is selected if its parent is selected.</a:documentation>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.declaring.attributes">
      <ref name="_teiatt.declaring.attribute.decls"/>
   </define>
   <define name="_teiatt.declaring.attribute.decls">
      <optional>
         <attribute name="decls">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">identifies one or more declarable elements within the header, which are understood to apply to the element bearing this attribute and its content.</a:documentation>
            <list>
               <oneOrMore>
                  <data type="anyURI"/>
               </oneOrMore>
            </list>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.fragmentable.attributes">
      <ref name="_teiatt.fragmentable.attribute.part"/>
   </define>
   <define name="_teiatt.fragmentable.attribute.part">
      <optional>
         <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                    name="part"
                    a:defaultValue="N">
            <a:documentation>specifies whether or not its parent element is fragmented in some way, typically by some other overlapping structure: for example a speech which is divided between two or more verse stanzas, a paragraph which is split across a page division, a verse line which is divided between two speakers.</a:documentation>
            <choice>
               <value>Y</value>
               <a:documentation>(yes) the element is fragmented in some (unspecified) respect</a:documentation>
               <value>N</value>
               <a:documentation>(no) the element is not fragmented, or no claim is made as to its completeness</a:documentation>
               <value>I</value>
               <a:documentation>(initial) this is the initial part of a fragmented element</a:documentation>
               <value>M</value>
               <a:documentation>(medial) this is a medial part of a fragmented element</a:documentation>
               <value>F</value>
               <a:documentation>(final) this is the final part of a fragmented element</a:documentation>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.divLike.attributes">
      <ref name="_teiatt.metrical.attributes"/>
      <ref name="_teiatt.fragmentable.attributes"/>
      <ref name="_teiatt.divLike.attribute.label"/>
      <ref name="_teiatt.divLike.attribute.org"/>
      <ref name="_teiatt.divLike.attribute.sample"/>
   </define>
   <define name="_teiatt.divLike.attribute.label">
      <optional>
         <attribute name="label" ns="http://www.faustedition.net/ns">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">The normalized label for a section, intended to be used in running heads or breadcrumbs.</a:documentation>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.divLike.attribute.org">
      <optional>
         <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                    name="org"
                    a:defaultValue="uniform">
            <a:documentation>(organization) specifies how the content of the division is organized.</a:documentation>
            <choice>
               <value>composite</value>
               <a:documentation>no claim is made about the sequence in which the immediate contents of this division are to be processed, or their inter-relationships.</a:documentation>
               <value>uniform</value>
               <a:documentation>the immediate contents of this element are regarded as forming a logical unit, to be processed in sequence.</a:documentation>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.divLike.attribute.sample">
      <optional>
         <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                    name="sample"
                    a:defaultValue="complete">
            <a:documentation>indicates whether this division is a sample of the original source and if so, from which part.</a:documentation>
            <choice>
               <value>initial</value>
               <a:documentation>division lacks material present at end in source.</a:documentation>
               <value>medial</value>
               <a:documentation>division lacks material at start and end.</a:documentation>
               <value>final</value>
               <a:documentation>division lacks material at start.</a:documentation>
               <value>unknown</value>
               <a:documentation>position of sampled material within original unknown.</a:documentation>
               <value>complete</value>
               <a:documentation>division is not a sample.</a:documentation>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.docStatus.attributes">
      <ref name="_teiatt.docStatus.attribute.status"/>
   </define>
   <define name="_teiatt.docStatus.attribute.status">
      <optional>
         <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                    name="status"
                    a:defaultValue="draft">
            <a:documentation>describes the status of a document either currently or, when associated with a dated element, at the time indicated.
Sample values include: 1] approved; 2] candidate; 3] cleared; 4] deprecated; 5] draft; 6] embargoed; 7] expired; 8] frozen; 9] galley; 10] proposed; 11] published; 12] recommendation; 13] submitted; 14] unfinished; 15] withdrawn</a:documentation>
            <data type="token">
               <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
            </data>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.global.responsibility.attributes">
      <ref name="_teiatt.global.responsibility.attribute.cert"/>
      <ref name="_teiatt.global.responsibility.attribute.resp"/>
   </define>
   <define name="_teiatt.global.responsibility.attribute.cert">
      <optional>
         <attribute name="cert">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(certainty) signifies the degree of certainty associated with the intervention or interpretation.</a:documentation>
            <choice>
               <data type="double"/>
               <choice>
                  <value>high</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
                  <value>medium</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
                  <value>low</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
                  <value>unknown</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
               </choice>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.global.responsibility.attribute.resp">
      <optional>
         <attribute name="resp">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(responsible party) indicates the agency responsible for the intervention or interpretation, for example an editor or transcriber.</a:documentation>
            <list>
               <oneOrMore>
                  <data type="anyURI"/>
               </oneOrMore>
            </list>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.editLike.attributes">
      <ref name="_teiatt.editLike.attribute.evidence"/>
      <ref name="_teiatt.editLike.attribute.instant"/>
   </define>
   <define name="_teiatt.editLike.attribute.evidence">
      <optional>
         <attribute name="evidence">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the nature of the evidence supporting the reliability or accuracy of the intervention or interpretation.
Suggested values include: 1] internal; 2] external; 3] conjecture</a:documentation>
            <list>
               <oneOrMore>
                  <choice>
                     <value>internal</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">there is internal evidence to support the intervention.</a:documentation>
                     <value>external</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">there is external evidence to support the intervention.</a:documentation>
                     <value>conjecture</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">the intervention or interpretation has been made by the editor, cataloguer, or scholar on the basis of their expertise.</a:documentation>
                     <data type="token">
                        <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
                     </data>
                  </choice>
               </oneOrMore>
            </list>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.editLike.attribute.instant">
      <optional>
         <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                    name="instant"
                    a:defaultValue="false">
            <a:documentation>indicates whether this is an instant revision or not.</a:documentation>
            <choice>
               <data type="boolean"/>
               <choice>
                  <value>unknown</value>
                  <a:documentation/>
                  <value>inapplicable</value>
                  <a:documentation/>
               </choice>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.global.source.attributes">
      <ref name="_teiatt.global.source.attribute.source"/>
   </define>
   <define name="_teiatt.global.source.attribute.source">
      <optional>
         <attribute name="source">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the source from which some aspect of this element is drawn.</a:documentation>
            <list>
               <oneOrMore>
                  <data type="anyURI"/>
               </oneOrMore>
            </list>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.global.attributes">
      <ref name="_teiatt.global.linking.attributes"/>
      <ref name="_teiatt.global.change.attributes"/>
      <ref name="_teiatt.layoutAlignment.attributes"/>
      <ref name="_teiatt.global.responsibility.attributes"/>
      <ref name="_teiatt.global.attribute.rend"/>
      <ref name="_teiatt.global.attribute.nx"/>
      <ref name="_teiatt.global.attribute.xmlid"/>
      <ref name="_teiatt.global.attribute.n"/>
      <ref name="_teiatt.global.attribute.xmllang"/>
      <ref name="_teiatt.global.attribute.xmlbase"/>
      <ref name="_teiatt.global.attribute.xmlspace"/>
   </define>
   <define name="_teiatt.global.attribute.rend">
      <optional>
         <attribute name="rend">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">
Suggested values include: 1] left(linksbündigen Ausrichtung) ; 2] right(rechtsbündige Ausrichtung) ; 3] centered(zentrierte Ausrichtung) ; 4] inline(innerhalb der (vorherigen) Zeile) ; 5] underline(unterstrichen) ; 6] underdots(unterpungiert) ; 7] double(doppelt, z. B. bei Streichungen) ; 8] multiple(mehrfach, z. B. bei Streichungen) ; 9] vertical(vertikal, z. B. vertikal durchgestrichen) ; 10] erase(Rasur) ; 11] sub(hochgestellt) ; 12] sup(tiefgestellt) ; 13] font-big(große Schrift) ; 14] font-small(kleine Schrift) ; 15] indent-10(10% eingerückt) ; 16] indent-20(20% eingerückt) ; 17] indent-30(30% eingerückt) ; 18] indent-40(40% eingerückt) ; 19] indent-50(50% eingerückt) ; 20] indent-60(60% eingerückt) ; 21] indent-70(70% eingerückt) ; 22] inbetween(dazwischen (nur seg)) ; 23] strikethrough(durchstreichung (nur mod)) </a:documentation>
            <list>
               <oneOrMore>
                  <choice>
                     <value>left</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(linksbündigen Ausrichtung) </a:documentation>
                     <value>right</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(rechtsbündige Ausrichtung) </a:documentation>
                     <value>centered</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(zentrierte Ausrichtung) </a:documentation>
                     <value>inline</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(innerhalb der (vorherigen) Zeile) </a:documentation>
                     <value>underline</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(unterstrichen) </a:documentation>
                     <value>underdots</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(unterpungiert) </a:documentation>
                     <value>double</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(doppelt, z. B. bei Streichungen) </a:documentation>
                     <value>multiple</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(mehrfach, z. B. bei Streichungen) </a:documentation>
                     <value>vertical</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(vertikal, z. B. vertikal durchgestrichen) </a:documentation>
                     <value>erase</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(Rasur) </a:documentation>
                     <value>sub</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(hochgestellt) </a:documentation>
                     <value>sup</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(tiefgestellt) </a:documentation>
                     <value>font-big</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(große Schrift) </a:documentation>
                     <value>font-small</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(kleine Schrift) </a:documentation>
                     <value>indent-10</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(10% eingerückt) </a:documentation>
                     <value>indent-20</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(20% eingerückt) </a:documentation>
                     <value>indent-30</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(30% eingerückt) </a:documentation>
                     <value>indent-40</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(40% eingerückt) </a:documentation>
                     <value>indent-50</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(50% eingerückt) </a:documentation>
                     <value>indent-60</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(60% eingerückt) </a:documentation>
                     <value>indent-70</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(70% eingerückt) </a:documentation>
                     <value>inbetween</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(dazwischen (nur seg)) </a:documentation>
                     <value>strikethrough</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(durchstreichung (nur mod)) </a:documentation>
                     <data type="token">
                        <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
                     </data>
                  </choice>
               </oneOrMore>
            </list>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.global.attribute.nx">
      <optional>
         <attribute name="nx" ns="http://www.faustedition.net/ns">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Alternative Zählungen</a:documentation>
            <list>
               <oneOrMore>
                  <data type="string"/>
               </oneOrMore>
            </list>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.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="_teiatt.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>
            <data type="string"/>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.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>
            <choice>
               <data type="language"/>
               <choice>
                  <value/>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
               </choice>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.global.attribute.xmlbase">
      <optional>
         <attribute name="xml:base">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">provides a base URI reference with which applications can resolve relative URI references into absolute URI references.</a:documentation>
            <data type="anyURI"/>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.global.attribute.xmlspace">
      <optional>
         <attribute name="xml:space">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">signals an intention about how white space should be managed by applications.</a:documentation>
            <choice>
               <value>default</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">signals that the application's default white-space processing modes are acceptable</a:documentation>
               <value>preserve</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the intent that applications preserve all white space</a:documentation>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.handFeatures.attributes">
      <ref name="_teiatt.handFeatures.attribute.scribe"/>
      <ref name="_teiatt.handFeatures.attribute.scribeRef"/>
      <ref name="_teiatt.handFeatures.attribute.script"/>
      <ref name="_teiatt.handFeatures.attribute.scriptRef"/>
      <ref name="_teiatt.handFeatures.attribute.medium"/>
      <ref name="_teiatt.handFeatures.attribute.scope"/>
   </define>
   <define name="_teiatt.handFeatures.attribute.scribe">
      <optional>
         <attribute name="scribe">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">gives a name or other identifier for the scribe believed to be responsible for this hand.</a:documentation>
            <data type="Name"/>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.handFeatures.attribute.scribeRef">
      <optional>
         <attribute name="scribeRef">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">points to a full description of the scribe concerned, typically supplied by a person element elsewhere in the description.</a:documentation>
            <list>
               <oneOrMore>
                  <data type="anyURI"/>
               </oneOrMore>
            </list>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.handFeatures.attribute.script">
      <optional>
         <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>
            <list>
               <oneOrMore>
                  <data type="Name"/>
               </oneOrMore>
            </list>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.handFeatures.attribute.scriptRef">
      <optional>
         <attribute name="scriptRef">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">points to a full description of the script or writing style used by this hand, typically supplied by a scriptNote element elsewhere in the description.</a:documentation>
            <list>
               <oneOrMore>
                  <data type="anyURI"/>
               </oneOrMore>
            </list>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.handFeatures.attribute.medium">
      <optional>
         <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>
            <list>
               <oneOrMore>
                  <data type="token">
                     <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
                  </data>
               </oneOrMore>
            </list>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.handFeatures.attribute.scope">
      <optional>
         <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>
            <choice>
               <value>sole</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">only this hand is used throughout the manuscript</a:documentation>
               <value>major</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">this hand is used through most of the manuscript</a:documentation>
               <value>minor</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">this hand is used occasionally in the manuscript</a:documentation>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.internetMedia.attributes">
      <ref name="_teiatt.internetMedia.attribute.mimeType"/>
   </define>
   <define name="_teiatt.internetMedia.attribute.mimeType">
      <optional>
         <attribute name="mimeType">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(MIME media type) specifies the applicable multimedia internet mail extension (MIME) media type</a:documentation>
            <list>
               <oneOrMore>
                  <data type="token">
                     <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
                  </data>
               </oneOrMore>
            </list>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.media.attributes">
      <ref name="_teiatt.internetMedia.attributes"/>
      <ref name="_teiatt.media.attribute.width"/>
      <ref name="_teiatt.media.attribute.height"/>
      <ref name="_teiatt.media.attribute.scale"/>
   </define>
   <define name="_teiatt.media.attribute.width">
      <optional>
         <attribute name="width">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Where the media are displayed, indicates the display width</a:documentation>
            <data type="token">
               <param name="pattern">[\-+]?\d+(\.\d+)?(%|cm|mm|in|pt|pc|px|em|ex|gd|rem|vw|vh|vm)</param>
            </data>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.media.attribute.height">
      <optional>
         <attribute name="height">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Where the media are displayed, indicates the display height</a:documentation>
            <data type="token">
               <param name="pattern">[\-+]?\d+(\.\d+)?(%|cm|mm|in|pt|pc|px|em|ex|gd|rem|vw|vh|vm)</param>
            </data>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.media.attribute.scale">
      <optional>
         <attribute name="scale">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Where the media are displayed, indicates a scale factor to be applied when generating the desired display size</a:documentation>
            <choice>
               <data type="double"/>
               <data type="token">
                  <param name="pattern">(\-?[\d]+/\-?[\d]+)</param>
               </data>
               <data type="decimal"/>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.resourced.attributes">
      <ref name="_teiatt.resourced.attribute.url"/>
   </define>
   <define name="_teiatt.resourced.attribute.url">
      <attribute name="url">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(uniform resource locator) specifies the URL from which the media concerned may be obtained.</a:documentation>
         <data type="anyURI"/>
      </attribute>
   </define>
   <define name="_teiatt.interpLike.attributes">
      <ref name="_teiatt.interpLike.attribute.type"/>
      <ref name="_teiatt.interpLike.attribute.inst"/>
   </define>
   <define name="_teiatt.interpLike.attribute.type">
      <optional>
         <attribute name="type">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates what kind of phenomenon is being noted in the passage.
Sample values include: 1] image; 2] character; 3] theme; 4] allusion</a:documentation>
            <data type="token">
               <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
            </data>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.interpLike.attribute.inst">
      <optional>
         <attribute name="inst">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(instances) points to instances of the analysis or interpretation represented by the current element.</a:documentation>
            <list>
               <oneOrMore>
                  <data type="anyURI"/>
               </oneOrMore>
            </list>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.measurement.attributes">
      <ref name="_teiatt.measurement.attribute.unit"/>
      <ref name="_teiatt.measurement.attribute.quantity"/>
      <ref name="_teiatt.measurement.attribute.commodity"/>
   </define>
   <define name="_teiatt.measurement.attribute.unit">
      <optional>
         <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] Ω (ohm) ; 7] L (litre) ; 8] t (tonne) ; 9] ha (hectare) ; 10] Å (ångströ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>
            <choice>
               <value>m</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(metre) SI base unit of length</a:documentation>
               <value>kg</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(kilogram) SI base unit of mass</a:documentation>
               <value>s</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(second) SI base unit of time</a:documentation>
               <value>Hz</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(hertz) SI unit of frequency</a:documentation>
               <value>Pa</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(pascal) SI unit of pressure or stress</a:documentation>
               <value>Ω</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(ohm) SI unit of electric resistance</a:documentation>
               <value>L</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(litre) 1 dm³</a:documentation>
               <value>t</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(tonne) 10³ kg</a:documentation>
               <value>ha</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(hectare) 1 hm²</a:documentation>
               <value>â„«</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(ångström) 10⁻¹⁰ m</a:documentation>
               <value>mL</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(millilitre) </a:documentation>
               <value>cm</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(centimetre) </a:documentation>
               <value>dB</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(decibel) see remarks, below</a:documentation>
               <value>kbit</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(kilobit) 10³ or 1000 bits</a:documentation>
               <value>Kibit</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(kibibit) 2¹⁰ or 1024 bits</a:documentation>
               <value>kB</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(kilobyte) 10³ or 1000 bytes</a:documentation>
               <value>KiB</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(kibibyte) 2¹⁰ or 1024 bytes</a:documentation>
               <value>MB</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(megabyte) 10⁶ or 1 000 000 bytes</a:documentation>
               <value>MiB</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(mebibyte) 2²⁰ or 1 048 576 bytes</a:documentation>
               <data type="token">
                  <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
               </data>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.measurement.attribute.quantity">
      <optional>
         <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="token">
                  <param name="pattern">(\-?[\d]+/\-?[\d]+)</param>
               </data>
               <data type="decimal"/>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.measurement.attribute.commodity">
      <optional>
         <attribute name="commodity">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the substance that is being measured</a:documentation>
            <list>
               <oneOrMore>
                  <data type="token">
                     <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
                  </data>
               </oneOrMore>
            </list>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.naming.attributes">
      <ref name="_teiatt.canonical.attributes"/>
      <ref name="_teiatt.naming.attribute.role"/>
      <ref name="_teiatt.naming.attribute.nymRef"/>
   </define>
   <define name="_teiatt.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 in the form of a set of whitespace-separated values, for example the occupation of a person, or the status of a place.</a:documentation>
            <list>
               <oneOrMore>
                  <data type="token">
                     <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
                  </data>
               </oneOrMore>
            </list>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.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>
                  <data type="anyURI"/>
               </oneOrMore>
            </list>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.notated.attributes">
      <ref name="_teiatt.notated.attribute.notation"/>
   </define>
   <define name="_teiatt.notated.attribute.notation">
      <optional>
         <attribute name="notation">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">names the notation used for the content of the element.</a:documentation>
            <data type="token">
               <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
            </data>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.placement.attributes">
      <ref name="_teiatt.placement.attribute.place"/>
   </define>
   <define name="_teiatt.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="token">
                        <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
                     </data>
                  </choice>
               </oneOrMore>
            </list>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.typed.attributes">
      <ref name="_teiatt.typed.attribute.type"/>
      <ref name="_teiatt.typed.attribute.subtype"/>
   </define>
   <define name="_teiatt.typed.attribute.type">
      <optional>
         <attribute name="type">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">characterizes the element in some sense, using any convenient classification scheme or typology.</a:documentation>
            <data type="token">
               <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
            </data>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.typed.attribute.subtype">
      <optional>
         <attribute name="subtype">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">provides a sub-categorization of the element, if needed</a:documentation>
            <data type="token">
               <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
            </data>
         </attribute>
      </optional>
   </define>
   <pattern xmlns="http://purl.oclc.org/dsdl/schematron"
            id="faust-tei-att.typed-subtypeTyped-constraint-rule-5">
      <sch:rule xmlns:sch="http://purl.oclc.org/dsdl/schematron"
                xmlns="http://www.tei-c.org/ns/1.0"
                xmlns:rng="http://relaxng.org/ns/structure/1.0"
                xmlns:ge="http://www.tei-c.org/ns/geneticEditions"
                xmlns:svg="http://www.w3.org/2000/svg"
                xmlns:f="http://www.faustedition.net/ns"
                context="tei:*[@subtype]">
        <sch:assert test="@type">The <sch:name/> element should not be categorized in detail with @subtype unless also categorized in general with @type</sch:assert>
      </sch:rule>
   </pattern>
   <define name="_teiatt.pointing.attributes">
      <ref name="_teiatt.pointing.attribute.targetLang"/>
      <ref name="_teiatt.pointing.attribute.target"/>
      <ref name="_teiatt.pointing.attribute.evaluate"/>
   </define>
   <define name="_teiatt.pointing.attribute.targetLang">
      <optional>
         <attribute name="targetLang">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the language of the content to be found at the destination referenced by target, using a language tag generated according to BCP 47.</a:documentation>
            <choice>
               <data type="language"/>
               <choice>
                  <value/>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
               </choice>
            </choice>
         </attribute>
      </optional>
   </define>
   <pattern xmlns="http://purl.oclc.org/dsdl/schematron"
            id="faust-tei-att.pointing-targetLang-targetLang-constraint-rule-6">
      <sch:rule xmlns:sch="http://purl.oclc.org/dsdl/schematron"
                xmlns="http://www.tei-c.org/ns/1.0"
                xmlns:rng="http://relaxng.org/ns/structure/1.0"
                xmlns:ge="http://www.tei-c.org/ns/geneticEditions"
                xmlns:svg="http://www.w3.org/2000/svg"
                xmlns:f="http://www.faustedition.net/ns"
                context="tei:*[not(self::tei:schemaSpec)][@targetLang]">
            <sch:assert test="@target">@targetLang should only be used on <sch:name/> if @target is specified.</sch:assert>
          </sch:rule>
   </pattern>
   <define name="_teiatt.pointing.attribute.target">
      <optional>
         <attribute name="target">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the destination of the reference by supplying one or more URI References</a:documentation>
            <list>
               <oneOrMore>
                  <data type="anyURI"/>
               </oneOrMore>
            </list>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.pointing.attribute.evaluate">
      <optional>
         <attribute name="evaluate">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the intended meaning when the target of a pointer is itself a pointer.</a:documentation>
            <choice>
               <value>all</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">if the element pointed to is itself a pointer, then the target of that pointer will be taken, and so on, until an element is found which is not a pointer.</a:documentation>
               <value>one</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">if the element pointed to is itself a pointer, then its target (whether a pointer or not) is taken as the target of this pointer.</a:documentation>
               <value>none</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">no further evaluation of targets is carried out beyond that needed to find the element specified in the pointer's target.</a:documentation>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.pointing.group.attributes">
      <ref name="_teiatt.pointing.attributes"/>
      <ref name="_teiatt.typed.attributes"/>
      <ref name="_teiatt.pointing.group.attribute.domains"/>
      <ref name="_teiatt.pointing.group.attribute.targFunc"/>
   </define>
   <define name="_teiatt.pointing.group.attribute.domains">
      <optional>
         <attribute name="domains">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">optionally specifies the identifiers of the elements within which all elements indicated by the contents of this element lie.</a:documentation>
            <list>
               <data type="anyURI"/>
               <data type="anyURI"/>
               <zeroOrMore>
                  <data type="anyURI"/>
               </zeroOrMore>
            </list>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.pointing.group.attribute.targFunc">
      <optional>
         <attribute name="targFunc">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(target function) describes the function of each of the values of the target attribute of the enclosed link, join, or alt tags.</a:documentation>
            <list>
               <data type="token">
                  <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
               </data>
               <data type="token">
                  <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
               </data>
               <zeroOrMore>
                  <data type="token">
                     <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
                  </data>
               </zeroOrMore>
            </list>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.scoping.attributes">
      <ref name="_teiatt.scoping.attribute.target"/>
      <ref name="_teiatt.scoping.attribute.match"/>
   </define>
   <define name="_teiatt.scoping.attribute.target">
      <optional>
         <attribute name="target">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">points at one or several elements or sets of elements by means of one or more data pointers, using the URI syntax.</a:documentation>
            <list>
               <oneOrMore>
                  <data type="anyURI"/>
               </oneOrMore>
            </list>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.scoping.attribute.match">
      <optional>
         <attribute name="match">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">supplies an arbitrary XPath expression using the syntax defined in  which identifies a set of nodes, selected within the context identified by the target attribute if this is supplied, or within the context of the parent element if it is not.</a:documentation>
            <text/>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.segLike.attributes">
      <ref name="_teiatt.metrical.attributes"/>
      <ref name="_teiatt.datcat.attributes"/>
      <ref name="_teiatt.fragmentable.attributes"/>
      <ref name="_teiatt.segLike.attribute.questionedBy"/>
      <ref name="_teiatt.segLike.attribute.markedBy"/>
      <ref name="_teiatt.segLike.attribute.function"/>
   </define>
   <define name="_teiatt.segLike.attribute.questionedBy">
      <optional>
         <attribute name="questionedBy" ns="http://www.faustedition.net/ns">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Beschreibt eine Monierung; anzugeben ist die monierende Hand. </a:documentation>
            <data type="anyURI"/>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.segLike.attribute.markedBy">
      <optional>
         <attribute name="markedBy" ns="http://www.faustedition.net/ns">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Markiert</a:documentation>
            <data type="anyURI"/>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.segLike.attribute.function">
      <optional>
         <attribute name="function">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">characterizes the function of the segment.</a:documentation>
            <data type="token">
               <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
            </data>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.sortable.attributes">
      <ref name="_teiatt.sortable.attribute.sortKey"/>
   </define>
   <define name="_teiatt.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>
            <data type="token">
               <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
            </data>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.edition.attributes">
      <ref name="_teiatt.edition.attribute.ed"/>
      <ref name="_teiatt.edition.attribute.edRef"/>
   </define>
   <define name="_teiatt.edition.attribute.ed">
      <optional>
         <attribute name="ed">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(edition) supplies a sigil or other arbitrary identifier for the source edition in which the associated feature (for example, a page, column, or line break) occurs at this point in the text.</a:documentation>
            <list>
               <oneOrMore>
                  <data type="token">
                     <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
                  </data>
               </oneOrMore>
            </list>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.edition.attribute.edRef">
      <optional>
         <attribute name="edRef">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(edition reference) provides a pointer to the source edition in which the associated feature (for example, a page, column, or line break) occurs at this point in the text.</a:documentation>
            <list>
               <oneOrMore>
                  <data type="anyURI"/>
               </oneOrMore>
            </list>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.spanning.attributes">
      <ref name="_teiatt.spanning.attribute.spanTo"/>
   </define>
   <define name="_teiatt.spanning.attribute.spanTo">
      <optional>
         <attribute name="spanTo">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the end of a span initiated by the element bearing this attribute.</a:documentation>
            <data type="anyURI"/>
         </attribute>
      </optional>
   </define>
   <pattern xmlns="http://purl.oclc.org/dsdl/schematron"
            id="faust-tei-att.spanning-spanTo-spanTo-2-constraint-rule-7">
      <sch:rule xmlns:sch="http://purl.oclc.org/dsdl/schematron"
                xmlns="http://www.tei-c.org/ns/1.0"
                xmlns:rng="http://relaxng.org/ns/structure/1.0"
                xmlns:ge="http://www.tei-c.org/ns/geneticEditions"
                xmlns:svg="http://www.w3.org/2000/svg"
                xmlns:f="http://www.faustedition.net/ns"
                context="tei:*[@spanTo]">
            <sch:assert test="id(substring(@spanTo,2)) and following::*[@xml:id=substring(current()/@spanTo,2)]">
The element indicated by @spanTo (<sch:value-of select="@spanTo"/>) must follow the current element <sch:name/>
                  </sch:assert>
          </sch:rule>
   </pattern>
   <define name="_teiatt.styleDef.attributes">
      <ref name="_teiatt.styleDef.attribute.scheme"/>
      <ref name="_teiatt.styleDef.attribute.schemeVersion"/>
   </define>
   <define name="_teiatt.styleDef.attribute.scheme">
      <optional>
         <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>
            <choice>
               <value>css</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Cascading Stylesheet Language</a:documentation>
               <value>xslfo</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Extensible Stylesheet Language Formatting Objects</a:documentation>
               <value>free</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Informal free text description</a:documentation>
               <value>other</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">A user-defined rendition description language</a:documentation>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.styleDef.attribute.schemeVersion">
      <optional>
         <attribute name="schemeVersion">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">supplies a version number for the style language provided in scheme.</a:documentation>
            <data type="token">
               <param name="pattern">[\d]+[a-z]*[\d]*(\.[\d]+[a-z]*[\d]*){0,3}</param>
            </data>
         </attribute>
      </optional>
   </define>
   <pattern xmlns="http://purl.oclc.org/dsdl/schematron"
            id="faust-tei-att.styleDef-schemeVersion-schemeVersionRequiresScheme-constraint-rule-8">
      <sch:rule xmlns:sch="http://purl.oclc.org/dsdl/schematron"
                xmlns="http://www.tei-c.org/ns/1.0"
                xmlns:rng="http://relaxng.org/ns/structure/1.0"
                xmlns:ge="http://www.tei-c.org/ns/geneticEditions"
                xmlns:svg="http://www.w3.org/2000/svg"
                xmlns:f="http://www.faustedition.net/ns"
                context="tei:*[@schemeVersion]">
            <sch:assert test="@scheme and not(@scheme = 'free')">
              @schemeVersion can only be used if @scheme is specified.
            </sch:assert>
          </sch:rule>
   </pattern>
   <define name="_teiatt.tableDecoration.attributes">
      <ref name="_teiatt.tableDecoration.attribute.role"/>
      <ref name="_teiatt.tableDecoration.attribute.rows"/>
      <ref name="_teiatt.tableDecoration.attribute.cols"/>
   </define>
   <define name="_teiatt.tableDecoration.attribute.role">
      <optional>
         <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                    name="role"
                    a:defaultValue="data">
            <a:documentation>indicates the kind of information held in this cell or in each cell of this row.
Suggested values include: 1] label; 2] data</a:documentation>
            <choice>
               <value>label</value>
               <a:documentation>labelling or descriptive information only.</a:documentation>
               <value>data</value>
               <a:documentation>data values.</a:documentation>
               <data type="token">
                  <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
               </data>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.tableDecoration.attribute.rows">
      <optional>
         <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                    name="rows"
                    a:defaultValue="1">
            <a:documentation>indicates the number of rows occupied by this cell or row.</a:documentation>
            <data type="nonNegativeInteger"/>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.tableDecoration.attribute.cols">
      <optional>
         <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                    name="cols"
                    a:defaultValue="1">
            <a:documentation>(columns) indicates the number of columns occupied by this cell or row.</a:documentation>
            <data type="nonNegativeInteger"/>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.timed.attributes">
      <ref name="_teiatt.timed.attribute.start"/>
      <ref name="_teiatt.timed.attribute.end"/>
   </define>
   <define name="_teiatt.timed.attribute.start">
      <optional>
         <attribute name="start">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the location within a temporal alignment at which this element begins.</a:documentation>
            <data type="anyURI"/>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.timed.attribute.end">
      <optional>
         <attribute name="end">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the location within a temporal alignment at which this element ends.</a:documentation>
            <data type="anyURI"/>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.transcriptional.attributes">
      <ref name="_teiatt.editLike.attributes"/>
      <ref name="_teiatt.written.attributes"/>
      <ref name="_teiatt.transcriptional.attribute.status"/>
      <ref name="_teiatt.transcriptional.attribute.cause"/>
      <ref name="_teiatt.transcriptional.attribute.seq"/>
   </define>
   <define name="_teiatt.transcriptional.attribute.status">
      <optional>
         <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                    name="status"
                    a:defaultValue="unremarkable">
            <a:documentation>indicates the effect of the intervention, for example in the case of a deletion, strikeouts which include too much or too little text, or in the case of an addition, an insertion which duplicates some of the text already present.
Sample values include: 1] duplicate; 2] duplicate-partial; 3] excessStart; 4] excessEnd; 5] shortStart; 6] shortEnd; 7] partial; 8] unremarkable</a:documentation>
            <data type="token">
               <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
            </data>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.transcriptional.attribute.cause">
      <optional>
         <attribute name="cause">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">documents the presumed cause for the intervention.</a:documentation>
            <data type="token">
               <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
            </data>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.transcriptional.attribute.seq">
      <optional>
         <attribute name="seq">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(sequence) assigns a sequence number related to the order in which the encoded features carrying this attribute are believed to have occurred.</a:documentation>
            <data type="nonNegativeInteger"/>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.translatable.attributes">
      <ref name="_teiatt.translatable.attribute.versionDate"/>
   </define>
   <define name="_teiatt.translatable.attribute.versionDate">
      <optional>
         <attribute name="versionDate">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the date on which the source text was extracted and sent to the translator</a:documentation>
            <choice>
               <data type="date"/>
               <data type="gYear"/>
               <data type="gMonth"/>
               <data type="gDay"/>
               <data type="gYearMonth"/>
               <data type="gMonthDay"/>
               <data type="time"/>
               <data type="dateTime"/>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.citing.attributes">
      <ref name="_teiatt.citing.attribute.unit"/>
      <ref name="_teiatt.citing.attribute.from"/>
      <ref name="_teiatt.citing.attribute.to"/>
   </define>
   <define name="_teiatt.citing.attribute.unit">
      <optional>
         <attribute name="unit">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">identifies the unit of information conveyed by the element, e.g. columns, pages, volume, entry.
Suggested values include: 1] volume; 2] issue; 3] page; 4] line; 5] chapter; 6] part; 7] column; 8] entry</a:documentation>
            <choice>
               <value>volume</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">the element contains a volume number.</a:documentation>
               <value>issue</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">the element contains an issue number, or volume and issue numbers.</a:documentation>
               <value>page</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">the element contains a page number or page range.</a:documentation>
               <value>line</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">the element contains a line number or line range.</a:documentation>
               <value>chapter</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">the element contains a chapter indication (number and/or title)</a:documentation>
               <value>part</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">the element identifies a part of a book or collection.</a:documentation>
               <value>column</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">the element identifies a column.</a:documentation>
               <value>entry</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">the element identifies an entry number or label in a list of entries.</a:documentation>
               <data type="token">
                  <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
               </data>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.citing.attribute.from">
      <optional>
         <attribute name="from">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the starting point of the range of units indicated by the unit attribute.</a:documentation>
            <data type="token">
               <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
            </data>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.citing.attribute.to">
      <optional>
         <attribute name="to">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the end-point of the range of units indicated by the unit attribute.</a:documentation>
            <data type="token">
               <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
            </data>
         </attribute>
      </optional>
   </define>
   <define name="_teimodel.nameLike.agent">
      <choice>
         <ref name="_teiname"/>
         <ref name="_teiorgName"/>
         <ref name="_teipersName"/>
      </choice>
   </define>
   <define name="_teimodel.nameLike.agent_alternation">
      <choice>
         <ref name="_teiname"/>
         <ref name="_teiorgName"/>
         <ref name="_teipersName"/>
      </choice>
   </define>
   <define name="_teimodel.nameLike.agent_sequence">
      <ref name="_teiname"/>
      <ref name="_teiorgName"/>
      <ref name="_teipersName"/>
   </define>
   <define name="_teimodel.nameLike.agent_sequenceOptional">
      <optional>
         <ref name="_teiname"/>
      </optional>
      <optional>
         <ref name="_teiorgName"/>
      </optional>
      <optional>
         <ref name="_teipersName"/>
      </optional>
   </define>
   <define name="_teimodel.nameLike.agent_sequenceOptionalRepeatable">
      <zeroOrMore>
         <ref name="_teiname"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teiorgName"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teipersName"/>
      </zeroOrMore>
   </define>
   <define name="_teimodel.nameLike.agent_sequenceRepeatable">
      <oneOrMore>
         <ref name="_teiname"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teiorgName"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teipersName"/>
      </oneOrMore>
   </define>
   <define name="_teimodel.segLike">
      <choice>
         <ref name="_teis"/>
         <ref name="_teicl"/>
         <ref name="_teiphr"/>
         <ref name="_teiw"/>
         <ref name="_teim"/>
         <ref name="_teic"/>
         <ref name="_teipc"/>
         <ref name="_teiseg"/>
      </choice>
   </define>
   <define name="_teimodel.hiLike">
      <choice>
         <ref name="_teihi"/>
      </choice>
   </define>
   <define name="_teimodel.hiLike_alternation">
      <choice>
         <ref name="_teihi"/>
      </choice>
   </define>
   <define name="_teimodel.hiLike_sequence">
      <ref name="_teihi"/>
   </define>
   <define name="_teimodel.hiLike_sequenceOptional">
      <optional>
         <ref name="_teihi"/>
      </optional>
   </define>
   <define name="_teimodel.hiLike_sequenceOptionalRepeatable">
      <zeroOrMore>
         <ref name="_teihi"/>
      </zeroOrMore>
   </define>
   <define name="_teimodel.hiLike_sequenceRepeatable">
      <oneOrMore>
         <ref name="_teihi"/>
      </oneOrMore>
   </define>
   <define name="_teimodel.emphLike">
      <choice>
         <ref name="_teiforeign"/>
         <ref name="_teiemph"/>
         <ref name="_teidistinct"/>
         <ref name="_teimentioned"/>
         <ref name="_teisoCalled"/>
         <ref name="_teigloss"/>
         <ref name="_teiterm"/>
         <ref name="_teititle"/>
      </choice>
   </define>
   <define name="_teimodel.emphLike_alternation">
      <choice>
         <ref name="_teiforeign"/>
         <ref name="_teiemph"/>
         <ref name="_teidistinct"/>
         <ref name="_teimentioned"/>
         <ref name="_teisoCalled"/>
         <ref name="_teigloss"/>
         <ref name="_teiterm"/>
         <ref name="_teititle"/>
      </choice>
   </define>
   <define name="_teimodel.emphLike_sequence">
      <ref name="_teiforeign"/>
      <ref name="_teiemph"/>
      <ref name="_teidistinct"/>
      <ref name="_teimentioned"/>
      <ref name="_teisoCalled"/>
      <ref name="_teigloss"/>
      <ref name="_teiterm"/>
      <ref name="_teititle"/>
   </define>
   <define name="_teimodel.emphLike_sequenceOptional">
      <optional>
         <ref name="_teiforeign"/>
      </optional>
      <optional>
         <ref name="_teiemph"/>
      </optional>
      <optional>
         <ref name="_teidistinct"/>
      </optional>
      <optional>
         <ref name="_teimentioned"/>
      </optional>
      <optional>
         <ref name="_teisoCalled"/>
      </optional>
      <optional>
         <ref name="_teigloss"/>
      </optional>
      <optional>
         <ref name="_teiterm"/>
      </optional>
      <optional>
         <ref name="_teititle"/>
      </optional>
   </define>
   <define name="_teimodel.emphLike_sequenceOptionalRepeatable">
      <zeroOrMore>
         <ref name="_teiforeign"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teiemph"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teidistinct"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teimentioned"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teisoCalled"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teigloss"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teiterm"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teititle"/>
      </zeroOrMore>
   </define>
   <define name="_teimodel.emphLike_sequenceRepeatable">
      <oneOrMore>
         <ref name="_teiforeign"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teiemph"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teidistinct"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teimentioned"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teisoCalled"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teigloss"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teiterm"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teititle"/>
      </oneOrMore>
   </define>
   <define name="_teimodel.highlighted">
      <choice>
         <ref name="_teimodel.hiLike"/>
         <ref name="_teimodel.emphLike"/>
      </choice>
   </define>
   <define name="_teimodel.dateLike">
      <choice>
         <ref name="_teidate"/>
         <ref name="_teitime"/>
      </choice>
   </define>
   <define name="_teimodel.dateLike_alternation">
      <choice>
         <ref name="_teidate"/>
         <ref name="_teitime"/>
      </choice>
   </define>
   <define name="_teimodel.dateLike_sequence">
      <ref name="_teidate"/>
      <ref name="_teitime"/>
   </define>
   <define name="_teimodel.dateLike_sequenceOptional">
      <optional>
         <ref name="_teidate"/>
      </optional>
      <optional>
         <ref name="_teitime"/>
      </optional>
   </define>
   <define name="_teimodel.dateLike_sequenceOptionalRepeatable">
      <zeroOrMore>
         <ref name="_teidate"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teitime"/>
      </zeroOrMore>
   </define>
   <define name="_teimodel.dateLike_sequenceRepeatable">
      <oneOrMore>
         <ref name="_teidate"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teitime"/>
      </oneOrMore>
   </define>
   <define name="_teimodel.dimLike">
      <choice>
         <ref name="_teiheight"/>
         <ref name="_teidepth"/>
         <ref name="_teiwidth"/>
      </choice>
   </define>
   <define name="_teimodel.measureLike">
      <choice>
         <ref name="_teinum"/>
         <ref name="_teimeasure"/>
         <ref name="_teimeasureGrp"/>
         <ref name="_teiunit"/>
         <ref name="_teidim"/>
         <ref name="_teiheight"/>
         <ref name="_teidepth"/>
         <ref name="_teiwidth"/>
         <ref name="_teigeo"/>
      </choice>
   </define>
   <define name="_teimodel.measureLike_alternation">
      <choice>
         <ref name="_teinum"/>
         <ref name="_teimeasure"/>
         <ref name="_teimeasureGrp"/>
         <ref name="_teiunit"/>
         <ref name="_teidim"/>
         <ref name="_teiheight"/>
         <ref name="_teidepth"/>
         <ref name="_teiwidth"/>
         <ref name="_teigeo"/>
      </choice>
   </define>
   <define name="_teimodel.measureLike_sequence">
      <ref name="_teinum"/>
      <ref name="_teimeasure"/>
      <ref name="_teimeasureGrp"/>
      <ref name="_teiunit"/>
      <ref name="_teidim"/>
      <ref name="_teiheight"/>
      <ref name="_teidepth"/>
      <ref name="_teiwidth"/>
      <ref name="_teigeo"/>
   </define>
   <define name="_teimodel.measureLike_sequenceOptional">
      <optional>
         <ref name="_teinum"/>
      </optional>
      <optional>
         <ref name="_teimeasure"/>
      </optional>
      <optional>
         <ref name="_teimeasureGrp"/>
      </optional>
      <optional>
         <ref name="_teiunit"/>
      </optional>
      <optional>
         <ref name="_teidim"/>
      </optional>
      <optional>
         <ref name="_teiheight"/>
      </optional>
      <optional>
         <ref name="_teidepth"/>
      </optional>
      <optional>
         <ref name="_teiwidth"/>
      </optional>
      <optional>
         <ref name="_teigeo"/>
      </optional>
   </define>
   <define name="_teimodel.measureLike_sequenceOptionalRepeatable">
      <zeroOrMore>
         <ref name="_teinum"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teimeasure"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teimeasureGrp"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teiunit"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teidim"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teiheight"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teidepth"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teiwidth"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teigeo"/>
      </zeroOrMore>
   </define>
   <define name="_teimodel.measureLike_sequenceRepeatable">
      <oneOrMore>
         <ref name="_teinum"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teimeasure"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teimeasureGrp"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teiunit"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teidim"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teiheight"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teidepth"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teiwidth"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teigeo"/>
      </oneOrMore>
   </define>
   <define name="_teimodel.egLike">
      <notAllowed/>
   </define>
   <define name="_teimodel.egLike_alternation">
      <notAllowed/>
   </define>
   <define name="_teimodel.egLike_sequence">
      <empty/>
   </define>
   <define name="_teimodel.egLike_sequenceOptional">
      <empty/>
   </define>
   <define name="_teimodel.egLike_sequenceOptionalRepeatable">
      <empty/>
   </define>
   <define name="_teimodel.egLike_sequenceRepeatable">
      <notAllowed/>
   </define>
   <define name="_teimodel.graphicLike">
      <choice>
         <ref name="_teimedia"/>
         <ref name="_teigraphic"/>
         <ref name="_teibinaryObject"/>
         <ref name="_teiformula"/>
      </choice>
   </define>
   <define name="_teimodel.offsetLike">
      <choice>
         <ref name="_teioffset"/>
         <ref name="_teigeogFeat"/>
      </choice>
   </define>
   <define name="_teimodel.offsetLike_alternation">
      <choice>
         <ref name="_teioffset"/>
         <ref name="_teigeogFeat"/>
      </choice>
   </define>
   <define name="_teimodel.offsetLike_sequence">
      <ref name="_teioffset"/>
      <ref name="_teigeogFeat"/>
   </define>
   <define name="_teimodel.offsetLike_sequenceOptional">
      <optional>
         <ref name="_teioffset"/>
      </optional>
      <optional>
         <ref name="_teigeogFeat"/>
      </optional>
   </define>
   <define name="_teimodel.offsetLike_sequenceOptionalRepeatable">
      <zeroOrMore>
         <ref name="_teioffset"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teigeogFeat"/>
      </zeroOrMore>
   </define>
   <define name="_teimodel.offsetLike_sequenceRepeatable">
      <oneOrMore>
         <ref name="_teioffset"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teigeogFeat"/>
      </oneOrMore>
   </define>
   <define name="_teimodel.pPart.msdesc">
      <choice>
         <ref name="_teicatchwords"/>
         <ref name="_teidimensions"/>
         <ref name="_teiheraldry"/>
         <ref name="_teilocus"/>
         <ref name="_teilocusGrp"/>
         <ref name="_teimaterial"/>
         <ref name="_teiobjectType"/>
         <ref name="_teiorigDate"/>
         <ref name="_teiorigPlace"/>
         <ref name="_teisecFol"/>
         <ref name="_teisignatures"/>
         <ref name="_teistamp"/>
         <ref name="_teiwatermark"/>
      </choice>
   </define>
   <define name="_teimodel.pPart.editorial">
      <choice>
         <ref name="_teichoice"/>
         <ref name="_teiabbr"/>
         <ref name="_teiexpan"/>
         <ref name="_teiex"/>
         <ref name="_teiam"/>
         <ref name="_teisubst"/>
      </choice>
   </define>
   <define name="_teimodel.pPart.editorial_alternation">
      <choice>
         <ref name="_teichoice"/>
         <ref name="_teiabbr"/>
         <ref name="_teiexpan"/>
         <ref name="_teiex"/>
         <ref name="_teiam"/>
         <ref name="_teisubst"/>
      </choice>
   </define>
   <define name="_teimodel.pPart.editorial_sequence">
      <ref name="_teichoice"/>
      <ref name="_teiabbr"/>
      <ref name="_teiexpan"/>
      <ref name="_teiex"/>
      <ref name="_teiam"/>
      <ref name="_teisubst"/>
   </define>
   <define name="_teimodel.pPart.editorial_sequenceOptional">
      <optional>
         <ref name="_teichoice"/>
      </optional>
      <optional>
         <ref name="_teiabbr"/>
      </optional>
      <optional>
         <ref name="_teiexpan"/>
      </optional>
      <optional>
         <ref name="_teiex"/>
      </optional>
      <optional>
         <ref name="_teiam"/>
      </optional>
      <optional>
         <ref name="_teisubst"/>
      </optional>
   </define>
   <define name="_teimodel.pPart.editorial_sequenceOptionalRepeatable">
      <zeroOrMore>
         <ref name="_teichoice"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teiabbr"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teiexpan"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teiex"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teiam"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teisubst"/>
      </zeroOrMore>
   </define>
   <define name="_teimodel.pPart.editorial_sequenceRepeatable">
      <oneOrMore>
         <ref name="_teichoice"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teiabbr"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teiexpan"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teiex"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teiam"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teisubst"/>
      </oneOrMore>
   </define>
   <define name="_teimodel.pPart.transcriptional">
      <choice>
         <ref name="_teisic"/>
         <ref name="_teicorr"/>
         <ref name="_teireg"/>
         <ref name="_teiorig"/>
         <ref name="_teiadd"/>
         <ref name="_teidel"/>
         <ref name="_teiunclear"/>
         <ref name="_teidamage"/>
         <ref name="_teihandShift"/>
         <ref name="_teirestore"/>
         <ref name="_teisupplied"/>
         <ref name="_teisurplus"/>
         <ref name="_teisecl"/>
         <ref name="_teimod"/>
         <ref name="_teiredo"/>
         <ref name="_teiretrace"/>
         <ref name="_teiundo"/>
         <ref name="_teigrLine"/>
         <ref name="_teigrBrace"/>
         <ref name="_teiins"/>
         <ref name="_teioverw"/>
      </choice>
   </define>
   <define name="_teimodel.pPart.transcriptional_alternation">
      <choice>
         <ref name="_teisic"/>
         <ref name="_teicorr"/>
         <ref name="_teireg"/>
         <ref name="_teiorig"/>
         <ref name="_teiadd"/>
         <ref name="_teidel"/>
         <ref name="_teiunclear"/>
         <ref name="_teidamage"/>
         <ref name="_teihandShift"/>
         <ref name="_teirestore"/>
         <ref name="_teisupplied"/>
         <ref name="_teisurplus"/>
         <ref name="_teisecl"/>
         <ref name="_teimod"/>
         <ref name="_teiredo"/>
         <ref name="_teiretrace"/>
         <ref name="_teiundo"/>
         <ref name="_teigrLine"/>
         <ref name="_teigrBrace"/>
         <ref name="_teiins"/>
         <ref name="_teioverw"/>
      </choice>
   </define>
   <define name="_teimodel.pPart.transcriptional_sequence">
      <ref name="_teisic"/>
      <ref name="_teicorr"/>
      <ref name="_teireg"/>
      <ref name="_teiorig"/>
      <ref name="_teiadd"/>
      <ref name="_teidel"/>
      <ref name="_teiunclear"/>
      <ref name="_teidamage"/>
      <ref name="_teihandShift"/>
      <ref name="_teirestore"/>
      <ref name="_teisupplied"/>
      <ref name="_teisurplus"/>
      <ref name="_teisecl"/>
      <ref name="_teimod"/>
      <ref name="_teiredo"/>
      <ref name="_teiretrace"/>
      <ref name="_teiundo"/>
      <ref name="_teigrLine"/>
      <ref name="_teigrBrace"/>
      <ref name="_teiins"/>
      <ref name="_teioverw"/>
   </define>
   <define name="_teimodel.pPart.transcriptional_sequenceOptional">
      <optional>
         <ref name="_teisic"/>
      </optional>
      <optional>
         <ref name="_teicorr"/>
      </optional>
      <optional>
         <ref name="_teireg"/>
      </optional>
      <optional>
         <ref name="_teiorig"/>
      </optional>
      <optional>
         <ref name="_teiadd"/>
      </optional>
      <optional>
         <ref name="_teidel"/>
      </optional>
      <optional>
         <ref name="_teiunclear"/>
      </optional>
      <optional>
         <ref name="_teidamage"/>
      </optional>
      <optional>
         <ref name="_teihandShift"/>
      </optional>
      <optional>
         <ref name="_teirestore"/>
      </optional>
      <optional>
         <ref name="_teisupplied"/>
      </optional>
      <optional>
         <ref name="_teisurplus"/>
      </optional>
      <optional>
         <ref name="_teisecl"/>
      </optional>
      <optional>
         <ref name="_teimod"/>
      </optional>
      <optional>
         <ref name="_teiredo"/>
      </optional>
      <optional>
         <ref name="_teiretrace"/>
      </optional>
      <optional>
         <ref name="_teiundo"/>
      </optional>
      <optional>
         <ref name="_teigrLine"/>
      </optional>
      <optional>
         <ref name="_teigrBrace"/>
      </optional>
      <optional>
         <ref name="_teiins"/>
      </optional>
      <optional>
         <ref name="_teioverw"/>
      </optional>
   </define>
   <define name="_teimodel.pPart.transcriptional_sequenceOptionalRepeatable">
      <zeroOrMore>
         <ref name="_teisic"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teicorr"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teireg"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teiorig"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teiadd"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teidel"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teiunclear"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teidamage"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teihandShift"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teirestore"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teisupplied"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teisurplus"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teisecl"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teimod"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teiredo"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teiretrace"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teiundo"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teigrLine"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teigrBrace"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teiins"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teioverw"/>
      </zeroOrMore>
   </define>
   <define name="_teimodel.pPart.transcriptional_sequenceRepeatable">
      <oneOrMore>
         <ref name="_teisic"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teicorr"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teireg"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teiorig"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teiadd"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teidel"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teiunclear"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teidamage"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teihandShift"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teirestore"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teisupplied"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teisurplus"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teisecl"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teimod"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teiredo"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teiretrace"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teiundo"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teigrLine"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teigrBrace"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teiins"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teioverw"/>
      </oneOrMore>
   </define>
   <define name="_teimodel.pPart.edit">
      <choice>
         <ref name="_teimodel.pPart.editorial"/>
         <ref name="_teimodel.pPart.transcriptional"/>
      </choice>
   </define>
   <define name="_teimodel.linePart">
      <choice>
         <ref name="_teimodel.hiLike"/>
         <ref name="_teichoice"/>
         <ref name="_teiorig"/>
         <ref name="_teiadd"/>
         <ref name="_teidel"/>
         <ref name="_teiunclear"/>
         <ref name="_teinum"/>
         <ref name="_teidate"/>
         <ref name="_teiabbr"/>
         <ref name="_teiw"/>
         <ref name="_teic"/>
         <ref name="_teipc"/>
         <ref name="_teiseg"/>
         <ref name="_teizone"/>
         <ref name="_teipath"/>
         <ref name="_teidamage"/>
         <ref name="_teihandShift"/>
         <ref name="_teirestore"/>
         <ref name="_teisupplied"/>
         <ref name="_teiline"/>
         <ref name="_teimod"/>
         <ref name="_teiredo"/>
         <ref name="_teiretrace"/>
         <ref name="_teiundo"/>
         <ref name="_teigrLine"/>
         <ref name="_teigrBrace"/>
         <ref name="_teiins"/>
         <ref name="_teioverw"/>
      </choice>
   </define>
   <define name="_teimodel.ptrLike">
      <choice>
         <ref name="_teiptr"/>
         <ref name="_teiref"/>
      </choice>
   </define>
   <define name="_teimodel.lPart">
      <choice>
         <ref name="_teicaesura"/>
         <ref name="_teirhyme"/>
      </choice>
   </define>
   <define name="_teimodel.global.meta">
      <choice>
         <ref name="_teiindex"/>
         <ref name="_teiprecision"/>
         <ref name="_teicertainty"/>
         <ref name="_teirespons"/>
         <ref name="_teispan"/>
         <ref name="_teispanGrp"/>
         <ref name="_teiinterp"/>
         <ref name="_teiinterpGrp"/>
         <ref name="_teilink"/>
         <ref name="_teilinkGrp"/>
         <ref name="_teitimeline"/>
         <ref name="_teijoin"/>
         <ref name="_teijoinGrp"/>
         <ref name="_teialt"/>
         <ref name="_teialtGrp"/>
         <ref name="_teisubstJoin"/>
         <ref name="_teilistTranspose"/>
      </choice>
   </define>
   <define name="_teimodel.milestoneLike">
      <choice>
         <ref name="_teimilestone"/>
         <ref name="_teigb"/>
         <ref name="_teipb"/>
         <ref name="_teilb"/>
         <ref name="_teicb"/>
         <ref name="_teianchor"/>
         <ref name="_teifw"/>
      </choice>
   </define>
   <define name="_teimodel.gLike">
      <choice>
         <ref name="_teig"/>
      </choice>
   </define>
   <define name="_teimodel.oddDecl">
      <notAllowed/>
   </define>
   <define name="_teimodel.oddDecl_alternation">
      <notAllowed/>
   </define>
   <define name="_teimodel.oddDecl_sequence">
      <empty/>
   </define>
   <define name="_teimodel.oddDecl_sequenceOptional">
      <empty/>
   </define>
   <define name="_teimodel.oddDecl_sequenceOptionalRepeatable">
      <empty/>
   </define>
   <define name="_teimodel.oddDecl_sequenceRepeatable">
      <notAllowed/>
   </define>
   <define name="_teimodel.phrase.xml">
      <notAllowed/>
   </define>
   <define name="_teimodel.specDescLike">
      <notAllowed/>
   </define>
   <define name="_teimodel.biblLike">
      <choice>
         <ref name="_teibibl"/>
         <ref name="_teibiblStruct"/>
         <ref name="_teilistBibl"/>
         <ref name="_teibiblFull"/>
         <ref name="_teimsDesc"/>
      </choice>
   </define>
   <define name="_teimodel.biblLike_alternation">
      <choice>
         <ref name="_teibibl"/>
         <ref name="_teibiblStruct"/>
         <ref name="_teilistBibl"/>
         <ref name="_teibiblFull"/>
         <ref name="_teimsDesc"/>
      </choice>
   </define>
   <define name="_teimodel.biblLike_sequence">
      <ref name="_teibibl"/>
      <ref name="_teibiblStruct"/>
      <ref name="_teilistBibl"/>
      <ref name="_teibiblFull"/>
      <ref name="_teimsDesc"/>
   </define>
   <define name="_teimodel.biblLike_sequenceOptional">
      <optional>
         <ref name="_teibibl"/>
      </optional>
      <optional>
         <ref name="_teibiblStruct"/>
      </optional>
      <optional>
         <ref name="_teilistBibl"/>
      </optional>
      <optional>
         <ref name="_teibiblFull"/>
      </optional>
      <optional>
         <ref name="_teimsDesc"/>
      </optional>
   </define>
   <define name="_teimodel.biblLike_sequenceOptionalRepeatable">
      <zeroOrMore>
         <ref name="_teibibl"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teibiblStruct"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teilistBibl"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teibiblFull"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teimsDesc"/>
      </zeroOrMore>
   </define>
   <define name="_teimodel.biblLike_sequenceRepeatable">
      <oneOrMore>
         <ref name="_teibibl"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teibiblStruct"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teilistBibl"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teibiblFull"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teimsDesc"/>
      </oneOrMore>
   </define>
   <define name="_teimodel.headLike">
      <choice>
         <ref name="_teihead"/>
      </choice>
   </define>
   <define name="_teimodel.headLike_alternation">
      <choice>
         <ref name="_teihead"/>
      </choice>
   </define>
   <define name="_teimodel.headLike_sequence">
      <ref name="_teihead"/>
   </define>
   <define name="_teimodel.headLike_sequenceOptional">
      <optional>
         <ref name="_teihead"/>
      </optional>
   </define>
   <define name="_teimodel.headLike_sequenceOptionalRepeatable">
      <zeroOrMore>
         <ref name="_teihead"/>
      </zeroOrMore>
   </define>
   <define name="_teimodel.headLike_sequenceRepeatable">
      <oneOrMore>
         <ref name="_teihead"/>
      </oneOrMore>
   </define>
   <define name="_teimodel.labelLike">
      <choice>
         <ref name="_teidesc"/>
         <ref name="_teilabel"/>
      </choice>
   </define>
   <define name="_teimodel.labelLike_alternation">
      <choice>
         <ref name="_teidesc"/>
         <ref name="_teilabel"/>
      </choice>
   </define>
   <define name="_teimodel.labelLike_sequence">
      <ref name="_teidesc"/>
      <ref name="_teilabel"/>
   </define>
   <define name="_teimodel.labelLike_sequenceOptional">
      <optional>
         <ref name="_teidesc"/>
      </optional>
      <optional>
         <ref name="_teilabel"/>
      </optional>
   </define>
   <define name="_teimodel.labelLike_sequenceOptionalRepeatable">
      <zeroOrMore>
         <ref name="_teidesc"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teilabel"/>
      </zeroOrMore>
   </define>
   <define name="_teimodel.labelLike_sequenceRepeatable">
      <oneOrMore>
         <ref name="_teidesc"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teilabel"/>
      </oneOrMore>
   </define>
   <define name="_teimodel.listLike">
      <choice>
         <ref name="_teilist"/>
         <ref name="_teilistApp"/>
         <ref name="_teilistWit"/>
         <ref name="_teilistOrg"/>
         <ref name="_teilistEvent"/>
         <ref name="_teilistPerson"/>
         <ref name="_teilistPlace"/>
         <ref name="_teilistRelation"/>
         <ref name="_teilistNym"/>
         <ref name="_teitable"/>
      </choice>
   </define>
   <define name="_teimodel.listLike_alternation">
      <choice>
         <ref name="_teilist"/>
         <ref name="_teilistApp"/>
         <ref name="_teilistWit"/>
         <ref name="_teilistOrg"/>
         <ref name="_teilistEvent"/>
         <ref name="_teilistPerson"/>
         <ref name="_teilistPlace"/>
         <ref name="_teilistRelation"/>
         <ref name="_teilistNym"/>
         <ref name="_teitable"/>
      </choice>
   </define>
   <define name="_teimodel.listLike_sequence">
      <ref name="_teilist"/>
      <ref name="_teilistApp"/>
      <ref name="_teilistWit"/>
      <ref name="_teilistOrg"/>
      <ref name="_teilistEvent"/>
      <ref name="_teilistPerson"/>
      <ref name="_teilistPlace"/>
      <ref name="_teilistRelation"/>
      <ref name="_teilistNym"/>
      <ref name="_teitable"/>
   </define>
   <define name="_teimodel.listLike_sequenceOptional">
      <optional>
         <ref name="_teilist"/>
      </optional>
      <optional>
         <ref name="_teilistApp"/>
      </optional>
      <optional>
         <ref name="_teilistWit"/>
      </optional>
      <optional>
         <ref name="_teilistOrg"/>
      </optional>
      <optional>
         <ref name="_teilistEvent"/>
      </optional>
      <optional>
         <ref name="_teilistPerson"/>
      </optional>
      <optional>
         <ref name="_teilistPlace"/>
      </optional>
      <optional>
         <ref name="_teilistRelation"/>
      </optional>
      <optional>
         <ref name="_teilistNym"/>
      </optional>
      <optional>
         <ref name="_teitable"/>
      </optional>
   </define>
   <define name="_teimodel.listLike_sequenceOptionalRepeatable">
      <zeroOrMore>
         <ref name="_teilist"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teilistApp"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teilistWit"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teilistOrg"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teilistEvent"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teilistPerson"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teilistPlace"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teilistRelation"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teilistNym"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teitable"/>
      </zeroOrMore>
   </define>
   <define name="_teimodel.listLike_sequenceRepeatable">
      <oneOrMore>
         <ref name="_teilist"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teilistApp"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teilistWit"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teilistOrg"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teilistEvent"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teilistPerson"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teilistPlace"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teilistRelation"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teilistNym"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teitable"/>
      </oneOrMore>
   </define>
   <define name="_teimodel.noteLike">
      <choice>
         <ref name="_teinote"/>
         <ref name="_teiwitDetail"/>
      </choice>
   </define>
   <define name="_teimodel.lLike">
      <choice>
         <ref name="_teil"/>
      </choice>
   </define>
   <define name="_teimodel.lLike_alternation">
      <choice>
         <ref name="_teil"/>
      </choice>
   </define>
   <define name="_teimodel.lLike_sequence">
      <ref name="_teil"/>
   </define>
   <define name="_teimodel.lLike_sequenceOptional">
      <optional>
         <ref name="_teil"/>
      </optional>
   </define>
   <define name="_teimodel.lLike_sequenceOptionalRepeatable">
      <zeroOrMore>
         <ref name="_teil"/>
      </zeroOrMore>
   </define>
   <define name="_teimodel.lLike_sequenceRepeatable">
      <oneOrMore>
         <ref name="_teil"/>
      </oneOrMore>
   </define>
   <define name="_teimodel.pLike">
      <choice>
         <ref name="_teip"/>
         <ref name="_teiab"/>
      </choice>
   </define>
   <define name="_teimodel.pLike_alternation">
      <choice>
         <ref name="_teip"/>
         <ref name="_teiab"/>
      </choice>
   </define>
   <define name="_teimodel.pLike_sequence">
      <ref name="_teip"/>
      <ref name="_teiab"/>
   </define>
   <define name="_teimodel.pLike_sequenceOptional">
      <optional>
         <ref name="_teip"/>
      </optional>
      <optional>
         <ref name="_teiab"/>
      </optional>
   </define>
   <define name="_teimodel.pLike_sequenceOptionalRepeatable">
      <zeroOrMore>
         <ref name="_teip"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teiab"/>
      </zeroOrMore>
   </define>
   <define name="_teimodel.pLike_sequenceRepeatable">
      <oneOrMore>
         <ref name="_teip"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teiab"/>
      </oneOrMore>
   </define>
   <define name="_teimodel.stageLike">
      <choice>
         <ref name="_teistage"/>
         <ref name="_teimove"/>
         <ref name="_teiview"/>
         <ref name="_teicamera"/>
         <ref name="_teisound"/>
         <ref name="_teicaption"/>
         <ref name="_teitech"/>
      </choice>
   </define>
   <define name="_teimodel.stageLike_alternation">
      <choice>
         <ref name="_teistage"/>
         <ref name="_teimove"/>
         <ref name="_teiview"/>
         <ref name="_teicamera"/>
         <ref name="_teisound"/>
         <ref name="_teicaption"/>
         <ref name="_teitech"/>
      </choice>
   </define>
   <define name="_teimodel.stageLike_sequence">
      <ref name="_teistage"/>
      <ref name="_teimove"/>
      <ref name="_teiview"/>
      <ref name="_teicamera"/>
      <ref name="_teisound"/>
      <ref name="_teicaption"/>
      <ref name="_teitech"/>
   </define>
   <define name="_teimodel.stageLike_sequenceOptional">
      <optional>
         <ref name="_teistage"/>
      </optional>
      <optional>
         <ref name="_teimove"/>
      </optional>
      <optional>
         <ref name="_teiview"/>
      </optional>
      <optional>
         <ref name="_teicamera"/>
      </optional>
      <optional>
         <ref name="_teisound"/>
      </optional>
      <optional>
         <ref name="_teicaption"/>
      </optional>
      <optional>
         <ref name="_teitech"/>
      </optional>
   </define>
   <define name="_teimodel.stageLike_sequenceOptionalRepeatable">
      <zeroOrMore>
         <ref name="_teistage"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teimove"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teiview"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teicamera"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teisound"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teicaption"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teitech"/>
      </zeroOrMore>
   </define>
   <define name="_teimodel.stageLike_sequenceRepeatable">
      <oneOrMore>
         <ref name="_teistage"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teimove"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teiview"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teicamera"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teisound"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teicaption"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teitech"/>
      </oneOrMore>
   </define>
   <define name="_teimodel.entryPart">
      <notAllowed/>
   </define>
   <define name="_teimodel.eventLike">
      <choice>
         <ref name="_teievent"/>
         <ref name="_teilistEvent"/>
      </choice>
   </define>
   <define name="_teimodel.global.edit">
      <choice>
         <ref name="_teigap"/>
         <ref name="_teiapp"/>
         <ref name="_teiaddSpan"/>
         <ref name="_teidamageSpan"/>
         <ref name="_teidelSpan"/>
         <ref name="_teispace"/>
      </choice>
   </define>
   <define name="_teimodel.divPart">
      <choice>
         <ref name="_teimodel.lLike"/>
         <ref name="_teimodel.pLike"/>
         <ref name="_teilg"/>
         <ref name="_teisp"/>
         <ref name="_teispGrp"/>
      </choice>
   </define>
   <define name="_teimodel.persStateLike">
      <choice>
         <ref name="_teipersName"/>
         <ref name="_teiaffiliation"/>
         <ref name="_teiage"/>
         <ref name="_teieducation"/>
         <ref name="_teifaith"/>
         <ref name="_teifloruit"/>
         <ref name="_teilangKnowledge"/>
         <ref name="_teinationality"/>
         <ref name="_teioccupation"/>
         <ref name="_teipersona"/>
         <ref name="_teiresidence"/>
         <ref name="_teisex"/>
         <ref name="_teisocecStatus"/>
         <ref name="_teistate"/>
         <ref name="_teitrait"/>
      </choice>
   </define>
   <define name="_teimodel.personLike">
      <choice>
         <ref name="_teiorg"/>
         <ref name="_teiperson"/>
         <ref name="_teipersonGrp"/>
      </choice>
   </define>
   <define name="_teimodel.personPart">
      <choice>
         <ref name="_teimodel.biblLike"/>
         <ref name="_teimodel.eventLike"/>
         <ref name="_teimodel.persStateLike"/>
         <ref name="_teiname"/>
         <ref name="_teiidno"/>
         <ref name="_teibirth"/>
         <ref name="_teideath"/>
      </choice>
   </define>
   <define name="_teimodel.placeNamePart">
      <choice>
         <ref name="_teiplaceName"/>
         <ref name="_teibloc"/>
         <ref name="_teicountry"/>
         <ref name="_teiregion"/>
         <ref name="_teisettlement"/>
         <ref name="_teidistrict"/>
         <ref name="_teigeogName"/>
      </choice>
   </define>
   <define name="_teimodel.placeNamePart_alternation">
      <choice>
         <ref name="_teiplaceName"/>
         <ref name="_teibloc"/>
         <ref name="_teicountry"/>
         <ref name="_teiregion"/>
         <ref name="_teisettlement"/>
         <ref name="_teidistrict"/>
         <ref name="_teigeogName"/>
      </choice>
   </define>
   <define name="_teimodel.placeNamePart_sequence">
      <ref name="_teiplaceName"/>
      <ref name="_teibloc"/>
      <ref name="_teicountry"/>
      <ref name="_teiregion"/>
      <ref name="_teisettlement"/>
      <ref name="_teidistrict"/>
      <ref name="_teigeogName"/>
   </define>
   <define name="_teimodel.placeNamePart_sequenceOptional">
      <optional>
         <ref name="_teiplaceName"/>
      </optional>
      <optional>
         <ref name="_teibloc"/>
      </optional>
      <optional>
         <ref name="_teicountry"/>
      </optional>
      <optional>
         <ref name="_teiregion"/>
      </optional>
      <optional>
         <ref name="_teisettlement"/>
      </optional>
      <optional>
         <ref name="_teidistrict"/>
      </optional>
      <optional>
         <ref name="_teigeogName"/>
      </optional>
   </define>
   <define name="_teimodel.placeNamePart_sequenceOptionalRepeatable">
      <zeroOrMore>
         <ref name="_teiplaceName"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teibloc"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teicountry"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teiregion"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teisettlement"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teidistrict"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teigeogName"/>
      </zeroOrMore>
   </define>
   <define name="_teimodel.placeNamePart_sequenceRepeatable">
      <oneOrMore>
         <ref name="_teiplaceName"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teibloc"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teicountry"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teiregion"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teisettlement"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teidistrict"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teigeogName"/>
      </oneOrMore>
   </define>
   <define name="_teimodel.placeStateLike">
      <choice>
         <ref name="_teimodel.placeNamePart"/>
         <ref name="_teiclimate"/>
         <ref name="_teilocation"/>
         <ref name="_teipopulation"/>
         <ref name="_teistate"/>
         <ref name="_teiterrain"/>
         <ref name="_teitrait"/>
      </choice>
   </define>
   <define name="_teimodel.placeStateLike_alternation">
      <choice>
         <ref name="_teimodel.placeNamePart_alternation"/>
         <ref name="_teiclimate"/>
         <ref name="_teilocation"/>
         <ref name="_teipopulation"/>
         <ref name="_teistate"/>
         <ref name="_teiterrain"/>
         <ref name="_teitrait"/>
      </choice>
   </define>
   <define name="_teimodel.placeStateLike_sequence">
      <ref name="_teimodel.placeNamePart_sequence"/>
      <ref name="_teiclimate"/>
      <ref name="_teilocation"/>
      <ref name="_teipopulation"/>
      <ref name="_teistate"/>
      <ref name="_teiterrain"/>
      <ref name="_teitrait"/>
   </define>
   <define name="_teimodel.placeStateLike_sequenceOptional">
      <optional>
         <ref name="_teimodel.placeNamePart_sequenceOptional"/>
      </optional>
      <optional>
         <ref name="_teiclimate"/>
      </optional>
      <optional>
         <ref name="_teilocation"/>
      </optional>
      <optional>
         <ref name="_teipopulation"/>
      </optional>
      <optional>
         <ref name="_teistate"/>
      </optional>
      <optional>
         <ref name="_teiterrain"/>
      </optional>
      <optional>
         <ref name="_teitrait"/>
      </optional>
   </define>
   <define name="_teimodel.placeStateLike_sequenceOptionalRepeatable">
      <zeroOrMore>
         <ref name="_teimodel.placeNamePart_sequenceOptionalRepeatable"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teiclimate"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teilocation"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teipopulation"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teistate"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teiterrain"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teitrait"/>
      </zeroOrMore>
   </define>
   <define name="_teimodel.placeStateLike_sequenceRepeatable">
      <oneOrMore>
         <ref name="_teimodel.placeNamePart_sequenceRepeatable"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teiclimate"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teilocation"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teipopulation"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teistate"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teiterrain"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teitrait"/>
      </oneOrMore>
   </define>
   <define name="_teimodel.orgPart">
      <choice>
         <ref name="_teimodel.eventLike"/>
         <ref name="_teilistOrg"/>
         <ref name="_teilistPerson"/>
         <ref name="_teilistPlace"/>
      </choice>
   </define>
   <define name="_teimodel.publicationStmtPart.agency">
      <choice>
         <ref name="_teipublisher"/>
         <ref name="_teidistributor"/>
         <ref name="_teiauthority"/>
      </choice>
   </define>
   <define name="_teimodel.publicationStmtPart.detail">
      <choice>
         <ref name="_teimodel.ptrLike"/>
         <ref name="_teiaddress"/>
         <ref name="_teidate"/>
         <ref name="_teipubPlace"/>
         <ref name="_teiidno"/>
         <ref name="_teiavailability"/>
      </choice>
   </define>
   <define name="_teimodel.availabilityPart">
      <choice>
         <ref name="_teilicence"/>
      </choice>
   </define>
   <define name="_teimodel.certLike">
      <choice>
         <ref name="_teiprecision"/>
         <ref name="_teicertainty"/>
         <ref name="_teirespons"/>
      </choice>
   </define>
   <define name="_teimodel.descLike">
      <choice>
         <ref name="_teidesc"/>
      </choice>
   </define>
   <define name="_teimodel.glossLike">
      <choice>
         <ref name="_teigloss"/>
      </choice>
   </define>
   <define name="_teimodel.quoteLike">
      <choice>
         <ref name="_teiquote"/>
         <ref name="_teicit"/>
      </choice>
   </define>
   <define name="_teimodel.quoteLike_alternation">
      <choice>
         <ref name="_teiquote"/>
         <ref name="_teicit"/>
      </choice>
   </define>
   <define name="_teimodel.quoteLike_sequence">
      <ref name="_teiquote"/>
      <ref name="_teicit"/>
   </define>
   <define name="_teimodel.quoteLike_sequenceOptional">
      <optional>
         <ref name="_teiquote"/>
      </optional>
      <optional>
         <ref name="_teicit"/>
      </optional>
   </define>
   <define name="_teimodel.quoteLike_sequenceOptionalRepeatable">
      <zeroOrMore>
         <ref name="_teiquote"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teicit"/>
      </zeroOrMore>
   </define>
   <define name="_teimodel.quoteLike_sequenceRepeatable">
      <oneOrMore>
         <ref name="_teiquote"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teicit"/>
      </oneOrMore>
   </define>
   <define name="_teimodel.qLike">
      <choice>
         <ref name="_teimodel.quoteLike"/>
         <ref name="_teisaid"/>
         <ref name="_teiq"/>
         <ref name="_teifloatingText"/>
      </choice>
   </define>
   <define name="_teimodel.qLike_alternation">
      <choice>
         <ref name="_teimodel.quoteLike_alternation"/>
         <ref name="_teisaid"/>
         <ref name="_teiq"/>
         <ref name="_teifloatingText"/>
      </choice>
   </define>
   <define name="_teimodel.qLike_sequence">
      <ref name="_teimodel.quoteLike_sequence"/>
      <ref name="_teisaid"/>
      <ref name="_teiq"/>
      <ref name="_teifloatingText"/>
   </define>
   <define name="_teimodel.qLike_sequenceOptional">
      <optional>
         <ref name="_teimodel.quoteLike_sequenceOptional"/>
      </optional>
      <optional>
         <ref name="_teisaid"/>
      </optional>
      <optional>
         <ref name="_teiq"/>
      </optional>
      <optional>
         <ref name="_teifloatingText"/>
      </optional>
   </define>
   <define name="_teimodel.qLike_sequenceOptionalRepeatable">
      <zeroOrMore>
         <ref name="_teimodel.quoteLike_sequenceOptionalRepeatable"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teisaid"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teiq"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teifloatingText"/>
      </zeroOrMore>
   </define>
   <define name="_teimodel.qLike_sequenceRepeatable">
      <oneOrMore>
         <ref name="_teimodel.quoteLike_sequenceRepeatable"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teisaid"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teiq"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teifloatingText"/>
      </oneOrMore>
   </define>
   <define name="_teimodel.respLike">
      <choice>
         <ref name="_teiauthor"/>
         <ref name="_teieditor"/>
         <ref name="_teirespStmt"/>
         <ref name="_teimeeting"/>
         <ref name="_teisponsor"/>
         <ref name="_teifunder"/>
         <ref name="_teiprincipal"/>
      </choice>
   </define>
   <define name="_teimodel.divWrapper">
      <choice>
         <ref name="_teimeeting"/>
         <ref name="_teibyline"/>
         <ref name="_teidateline"/>
         <ref name="_teiargument"/>
         <ref name="_teiepigraph"/>
         <ref name="_teisalute"/>
         <ref name="_teidocAuthor"/>
         <ref name="_teidocDate"/>
      </choice>
   </define>
   <define name="_teimodel.divTopPart">
      <choice>
         <ref name="_teimodel.headLike"/>
         <ref name="_teiopener"/>
         <ref name="_teisigned"/>
      </choice>
   </define>
   <define name="_teimodel.divTop">
      <choice>
         <ref name="_teimodel.divWrapper"/>
         <ref name="_teimodel.divTopPart"/>
      </choice>
   </define>
   <define name="_teimodel.frontPart.drama">
      <choice>
         <ref name="_teiset"/>
         <ref name="_teiprologue"/>
         <ref name="_teiepilogue"/>
         <ref name="_teiperformance"/>
         <ref name="_teicastList"/>
      </choice>
   </define>
   <define name="_teimodel.pLike.front">
      <choice>
         <ref name="_teihead"/>
         <ref name="_teibyline"/>
         <ref name="_teiargument"/>
         <ref name="_teiepigraph"/>
         <ref name="_teidocTitle"/>
         <ref name="_teititlePart"/>
         <ref name="_teidocAuthor"/>
         <ref name="_teidocEdition"/>
         <ref name="_teidocImprint"/>
         <ref name="_teidocDate"/>
      </choice>
   </define>
   <define name="_teimodel.divBottomPart">
      <choice>
         <ref name="_teitrailer"/>
         <ref name="_teicloser"/>
         <ref name="_teisigned"/>
         <ref name="_teipostscript"/>
      </choice>
   </define>
   <define name="_teimodel.divBottom">
      <choice>
         <ref name="_teimodel.divWrapper"/>
         <ref name="_teimodel.divBottomPart"/>
      </choice>
   </define>
   <define name="_teimodel.titlepagePart">
      <choice>
         <ref name="_teigraphic"/>
         <ref name="_teibinaryObject"/>
         <ref name="_teibyline"/>
         <ref name="_teiargument"/>
         <ref name="_teiepigraph"/>
         <ref name="_teidocTitle"/>
         <ref name="_teititlePart"/>
         <ref name="_teidocAuthor"/>
         <ref name="_teiimprimatur"/>
         <ref name="_teidocEdition"/>
         <ref name="_teidocImprint"/>
         <ref name="_teidocDate"/>
      </choice>
   </define>
   <define name="_teimodel.msQuoteLike">
      <choice>
         <ref name="_teititle"/>
         <ref name="_teicolophon"/>
         <ref name="_teiexplicit"/>
         <ref name="_teifinalRubric"/>
         <ref name="_teiincipit"/>
         <ref name="_teirubric"/>
      </choice>
   </define>
   <define name="_teimodel.msItemPart">
      <choice>
         <ref name="_teimodel.biblLike"/>
         <ref name="_teimodel.quoteLike"/>
         <ref name="_teimodel.respLike"/>
         <ref name="_teimodel.msQuoteLike"/>
         <ref name="_teitextLang"/>
         <ref name="_teiidno"/>
         <ref name="_teifiliation"/>
         <ref name="_teimsItem"/>
         <ref name="_teimsItemStruct"/>
         <ref name="_teidecoNote"/>
      </choice>
   </define>
   <define name="_teimodel.choicePart">
      <choice>
         <ref name="_teisic"/>
         <ref name="_teicorr"/>
         <ref name="_teireg"/>
         <ref name="_teiorig"/>
         <ref name="_teiunclear"/>
         <ref name="_teiabbr"/>
         <ref name="_teiexpan"/>
         <ref name="_teiseg"/>
         <ref name="_teiex"/>
         <ref name="_teiam"/>
         <ref name="_teisupplied"/>
      </choice>
   </define>
   <define name="_teimodel.imprintPart">
      <choice>
         <ref name="_teipublisher"/>
         <ref name="_teibiblScope"/>
         <ref name="_teipubPlace"/>
         <ref name="_teidistributor"/>
      </choice>
   </define>
   <define name="_teimodel.catDescPart">
      <notAllowed/>
   </define>
   <define name="_teimodel.castItemPart">
      <choice>
         <ref name="_teirole"/>
         <ref name="_teiroleDesc"/>
         <ref name="_teiactor"/>
      </choice>
   </define>
   <define name="_teimodel.addressLike">
      <choice>
         <ref name="_teiemail"/>
         <ref name="_teiaddress"/>
         <ref name="_teiaffiliation"/>
      </choice>
   </define>
   <define name="_teimodel.addressLike_alternation">
      <choice>
         <ref name="_teiemail"/>
         <ref name="_teiaddress"/>
         <ref name="_teiaffiliation"/>
      </choice>
   </define>
   <define name="_teimodel.addressLike_sequence">
      <ref name="_teiemail"/>
      <ref name="_teiaddress"/>
      <ref name="_teiaffiliation"/>
   </define>
   <define name="_teimodel.addressLike_sequenceOptional">
      <optional>
         <ref name="_teiemail"/>
      </optional>
      <optional>
         <ref name="_teiaddress"/>
      </optional>
      <optional>
         <ref name="_teiaffiliation"/>
      </optional>
   </define>
   <define name="_teimodel.addressLike_sequenceOptionalRepeatable">
      <zeroOrMore>
         <ref name="_teiemail"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teiaddress"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teiaffiliation"/>
      </zeroOrMore>
   </define>
   <define name="_teimodel.addressLike_sequenceRepeatable">
      <oneOrMore>
         <ref name="_teiemail"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teiaddress"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teiaffiliation"/>
      </oneOrMore>
   </define>
   <define name="_teimodel.nameLike">
      <choice>
         <ref name="_teimodel.nameLike.agent"/>
         <ref name="_teimodel.offsetLike"/>
         <ref name="_teimodel.placeStateLike"/>
         <ref name="_teirs"/>
         <ref name="_teiidno"/>
         <ref name="_teimodel.persNamePart"/>
      </choice>
   </define>
   <define name="_teimodel.nameLike_alternation">
      <choice>
         <ref name="_teimodel.nameLike.agent_alternation"/>
         <ref name="_teimodel.offsetLike_alternation"/>
         <ref name="_teimodel.placeStateLike_alternation"/>
         <ref name="_teirs"/>
         <ref name="_teiidno"/>
         <ref name="_teimodel.persNamePart_alternation"/>
      </choice>
   </define>
   <define name="_teimodel.nameLike_sequence">
      <ref name="_teimodel.nameLike.agent_sequence"/>
      <ref name="_teimodel.offsetLike_sequence"/>
      <ref name="_teimodel.placeStateLike_sequence"/>
      <ref name="_teirs"/>
      <ref name="_teiidno"/>
      <ref name="_teimodel.persNamePart_sequence"/>
   </define>
   <define name="_teimodel.nameLike_sequenceOptional">
      <optional>
         <ref name="_teimodel.nameLike.agent_sequenceOptional"/>
      </optional>
      <optional>
         <ref name="_teimodel.offsetLike_sequenceOptional"/>
      </optional>
      <optional>
         <ref name="_teimodel.placeStateLike_sequenceOptional"/>
      </optional>
      <optional>
         <ref name="_teirs"/>
      </optional>
      <optional>
         <ref name="_teiidno"/>
      </optional>
      <optional>
         <ref name="_teimodel.persNamePart_sequenceOptional"/>
      </optional>
   </define>
   <define name="_teimodel.nameLike_sequenceOptionalRepeatable">
      <zeroOrMore>
         <ref name="_teimodel.nameLike.agent_sequenceOptionalRepeatable"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teimodel.offsetLike_sequenceOptionalRepeatable"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teimodel.placeStateLike_sequenceOptionalRepeatable"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teirs"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teiidno"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teimodel.persNamePart_sequenceOptionalRepeatable"/>
      </zeroOrMore>
   </define>
   <define name="_teimodel.nameLike_sequenceRepeatable">
      <oneOrMore>
         <ref name="_teimodel.nameLike.agent_sequenceRepeatable"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teimodel.offsetLike_sequenceRepeatable"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teimodel.placeStateLike_sequenceRepeatable"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teirs"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teiidno"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teimodel.persNamePart_sequenceRepeatable"/>
      </oneOrMore>
   </define>
   <define name="_teimodel.global">
      <choice>
         <ref name="_teimodel.global.meta"/>
         <ref name="_teimodel.milestoneLike"/>
         <ref name="_teimodel.noteLike"/>
         <ref name="_teimodel.global.edit"/>
         <ref name="_teimetamark"/>
         <ref name="_teinotatedMusic"/>
         <ref name="_teifigure"/>
      </choice>
   </define>
   <define name="_teimodel.biblPart">
      <choice>
         <ref name="_teimodel.respLike"/>
         <ref name="_teimodel.imprintPart"/>
         <ref name="_teiseries"/>
         <ref name="_teicitedRange"/>
         <ref name="_teibibl"/>
         <ref name="_teirelatedItem"/>
         <ref name="_teitextLang"/>
         <ref name="_teiedition"/>
         <ref name="_teiextent"/>
         <ref name="_teiavailability"/>
         <ref name="_teimsIdentifier"/>
         <ref name="_teilistRelation"/>
      </choice>
   </define>
   <define name="_teimodel.frontPart">
      <choice>
         <ref name="_teimodel.frontPart.drama"/>
         <ref name="_teilistBibl"/>
         <ref name="_teidivGen"/>
         <ref name="_teititlePage"/>
      </choice>
   </define>
   <define name="_teimodel.addrPart">
      <choice>
         <ref name="_teimodel.nameLike"/>
         <ref name="_teiaddrLine"/>
         <ref name="_teistreet"/>
         <ref name="_teipostCode"/>
         <ref name="_teipostBox"/>
      </choice>
   </define>
   <define name="_teimodel.pPart.data">
      <choice>
         <ref name="_teimodel.dateLike"/>
         <ref name="_teimodel.measureLike"/>
         <ref name="_teimodel.addressLike"/>
         <ref name="_teimodel.nameLike"/>
      </choice>
   </define>
   <define name="_teimodel.inter">
      <choice>
         <ref name="_teimodel.egLike"/>
         <ref name="_teimodel.oddDecl"/>
         <ref name="_teimodel.biblLike"/>
         <ref name="_teimodel.labelLike"/>
         <ref name="_teimodel.listLike"/>
         <ref name="_teimodel.stageLike"/>
         <ref name="_teimodel.qLike"/>
         <ref name="_teicastList"/>
      </choice>
   </define>
   <define name="_teimodel.common">
      <choice>
         <ref name="_teimodel.divPart"/>
         <ref name="_teimodel.inter"/>
      </choice>
   </define>
   <define name="_teimodel.phrase">
      <choice>
         <ref name="_teimodel.segLike"/>
         <ref name="_teimodel.highlighted"/>
         <ref name="_teimodel.graphicLike"/>
         <ref name="_teimodel.pPart.msdesc"/>
         <ref name="_teimodel.pPart.edit"/>
         <ref name="_teimodel.ptrLike"/>
         <ref name="_teimodel.lPart"/>
         <ref name="_teimodel.phrase.xml"/>
         <ref name="_teimodel.specDescLike"/>
         <ref name="_teimodel.pPart.data"/>
      </choice>
   </define>
   <define name="_teimodel.limitedPhrase">
      <choice>
         <ref name="_teimodel.hiLike"/>
         <ref name="_teimodel.emphLike"/>
         <ref name="_teimodel.pPart.msdesc"/>
         <ref name="_teimodel.pPart.editorial"/>
         <ref name="_teimodel.ptrLike"/>
         <ref name="_teimodel.phrase.xml"/>
         <ref name="_teimodel.pPart.data"/>
      </choice>
   </define>
   <define name="_teimodel.divLike">
      <choice>
         <ref name="_teidiv"/>
      </choice>
   </define>
   <define name="_teimodel.divGenLike">
      <choice>
         <ref name="_teidivGen"/>
      </choice>
   </define>
   <define name="_teimodel.div1Like">
      <choice>
         <ref name="_teidiv1"/>
      </choice>
   </define>
   <define name="_teimodel.div2Like">
      <choice>
         <ref name="_teidiv2"/>
      </choice>
   </define>
   <define name="_teimodel.div3Like">
      <choice>
         <ref name="_teidiv3"/>
      </choice>
   </define>
   <define name="_teimodel.div4Like">
      <choice>
         <ref name="_teidiv4"/>
      </choice>
   </define>
   <define name="_teimodel.div5Like">
      <choice>
         <ref name="_teidiv5"/>
      </choice>
   </define>
   <define name="_teimodel.div6Like">
      <choice>
         <ref name="_teidiv6"/>
      </choice>
   </define>
   <define name="_teimodel.div7Like">
      <choice>
         <ref name="_teidiv7"/>
      </choice>
   </define>
   <define name="_teimodel.applicationLike">
      <choice>
         <ref name="_teiapplication"/>
      </choice>
   </define>
   <define name="_teimodel.teiHeaderPart">
      <choice>
         <ref name="_teiencodingDesc"/>
         <ref name="_teiprofileDesc"/>
         <ref name="_teixenoData"/>
      </choice>
   </define>
   <define name="_teimodel.sourceDescPart">
      <notAllowed/>
   </define>
   <define name="_teimodel.encodingDescPart">
      <choice>
         <ref name="_teischemaRef"/>
         <ref name="_teiprojectDesc"/>
         <ref name="_teisamplingDecl"/>
         <ref name="_teieditorialDecl"/>
         <ref name="_teitagsDecl"/>
         <ref name="_teistyleDefDecl"/>
         <ref name="_teirefsDecl"/>
         <ref name="_teilistPrefixDef"/>
         <ref name="_teiclassDecl"/>
         <ref name="_teigeoDecl"/>
         <ref name="_teiappInfo"/>
         <ref name="_teivariantEncoding"/>
         <ref name="_teimetDecl"/>
         <ref name="_teicharDecl"/>
      </choice>
   </define>
   <define name="_teimodel.editorialDeclPart">
      <choice>
         <ref name="_teicorrection"/>
         <ref name="_teinormalization"/>
         <ref name="_teiquotation"/>
         <ref name="_teihyphenation"/>
         <ref name="_teisegmentation"/>
         <ref name="_teistdVals"/>
         <ref name="_teiinterpretation"/>
         <ref name="_teipunctuation"/>
      </choice>
   </define>
   <define name="_teimodel.profileDescPart">
      <choice>
         <ref name="_teiabstract"/>
         <ref name="_teicreation"/>
         <ref name="_teilangUsage"/>
         <ref name="_teitextClass"/>
         <ref name="_teicalendarDesc"/>
         <ref name="_teicorrespDesc"/>
         <ref name="_teihandNotes"/>
         <ref name="_teilistTranspose"/>
         <ref name="_teiparticDesc"/>
      </choice>
   </define>
   <define name="_teimodel.correspActionPart">
      <choice>
         <ref name="_teimodel.dateLike"/>
         <ref name="_teimodel.addressLike"/>
         <ref name="_teimodel.nameLike"/>
         <ref name="_teinote"/>
      </choice>
   </define>
   <define name="_teimodel.correspContextPart">
      <choice>
         <ref name="_teimodel.ptrLike"/>
         <ref name="_teimodel.pLike"/>
         <ref name="_teinote"/>
      </choice>
   </define>
   <define name="_teimodel.correspDescPart">
      <choice>
         <ref name="_teinote"/>
         <ref name="_teicorrespAction"/>
         <ref name="_teicorrespContext"/>
      </choice>
   </define>
   <define name="_teimodel.resourceLike">
      <choice>
         <ref name="_teitext"/>
         <ref name="_teifacsimile"/>
         <ref name="_teisourceDoc"/>
      </choice>
   </define>
   <define name="_teiatt.personal.attributes">
      <ref name="_teiatt.naming.attributes"/>
      <ref name="_teiatt.personal.attribute.full"/>
      <ref name="_teiatt.personal.attribute.sort"/>
   </define>
   <define name="_teiatt.personal.attribute.full">
      <optional>
         <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                    name="full"
                    a:defaultValue="yes">
            <a:documentation>indicates whether the name component is given in full, as an abbreviation or simply as an initial.</a:documentation>
            <choice>
               <value>yes</value>
               <a:documentation>the name component is spelled out in full.</a:documentation>
               <value>abb</value>
               <a:documentation>(abbreviated) the name component is given in an abbreviated form.</a:documentation>
               <value>init</value>
               <a:documentation>(initial letter) the name component is indicated only by one initial.</a:documentation>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.personal.attribute.sort">
      <optional>
         <attribute name="sort">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the sort order of the name component in relation to others within the name.</a:documentation>
            <data type="nonNegativeInteger"/>
         </attribute>
      </optional>
   </define>
   <define name="_teimodel.placeLike">
      <choice>
         <ref name="_teiplace"/>
      </choice>
   </define>
   <define name="_teiatt.milestoneUnit.attributes">
      <ref name="_teiatt.milestoneUnit.attribute.relatedLines"/>
      <ref name="_teiatt.milestoneUnit.attribute.relatedLinesUncertain"/>
      <ref name="_teiatt.milestoneUnit.attribute.unit"/>
   </define>
   <define name="_teiatt.milestoneUnit.attribute.relatedLines">
      <optional>
         <attribute name="relatedLines" ns="http://www.faustedition.net/ns">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
            <text/>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.milestoneUnit.attribute.relatedLinesUncertain">
      <optional>
         <attribute name="relatedLinesUncertain" ns="http://www.faustedition.net/ns">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
            <choice>
               <value>true</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
               <value>false</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.milestoneUnit.attribute.unit">
      <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.</a:documentation>
         <data type="token">
            <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
         </data>
      </attribute>
   </define>
   <define name="_teip">
      <element name="p">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(paragraph) marks paragraphs in prose. [3.1. Paragraphs 7.2.5. Speech Contents]</a:documentation>
         <ref name="_teimacro.paraContent"/>
         <pattern xmlns="http://purl.oclc.org/dsdl/schematron"
                  id="faust-tei-p-abstractModel-structure-p-constraint-report-5">
            <rule context="tei:p">
               <report xmlns:rng="http://relaxng.org/ns/structure/1.0"
                       xmlns:ge="http://www.tei-c.org/ns/geneticEditions"
                       xmlns:svg="http://www.w3.org/2000/svg"
                       xmlns:f="http://www.faustedition.net/ns"
                       test="not(ancestor::tei:floatingText) and (ancestor::tei:p or ancestor::tei:ab)          and not(parent::tei:exemplum                |parent::tei:item                |parent::tei:note                |parent::tei:q                |parent::tei:quote                |parent::tei:remarks                |parent::tei:said                |parent::tei:sp                |parent::tei:stage                |parent::tei:cell                |parent::tei:figure                )">
        Abstract model violation: Paragraphs may not occur inside other paragraphs or ab elements.
      </report>
            </rule>
         </pattern>
         <pattern xmlns="http://purl.oclc.org/dsdl/schematron"
                  id="faust-tei-p-abstractModel-structure-l-constraint-report-6">
            <rule context="tei:p">
               <report xmlns:rng="http://relaxng.org/ns/structure/1.0"
                       xmlns:ge="http://www.tei-c.org/ns/geneticEditions"
                       xmlns:svg="http://www.w3.org/2000/svg"
                       xmlns:f="http://www.faustedition.net/ns"
                       test="ancestor::tei:l[not(.//tei:note//tei:p[. = current()])]">
        Abstract model violation: Lines may not contain higher-level structural elements such as div, p, or ab.
      </report>
            </rule>
         </pattern>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.declaring.attributes"/>
         <ref name="_teiatt.fragmentable.attributes"/>
         <ref name="_teiatt.written.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiforeign">
      <element name="foreign">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">identifies a word or phrase as belonging to some language other than that of the surrounding text. [3.3.2.1. Foreign Words or Expressions]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiemph">
      <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. [3.3.2.2. Emphatic Words and Phrases 3.3.2. Emphasis, Foreign Words, and Unusual Language]</a:documentation>
         <ref name="_teimacro.paraContent"/>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teihi">
      <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. [3.3.2.2. Emphatic Words and Phrases 3.3.2. Emphasis, Foreign Words, and Unusual Language]</a:documentation>
         <ref name="_teimacro.paraContent"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.written.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teidistinct">
      <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. [3.3.2.3. Other Linguistically Distinct Material]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <optional>
            <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="token">
                  <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
               </data>
            </attribute>
         </optional>
         <optional>
            <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="string"/>
            </attribute>
         </optional>
         <optional>
            <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="string"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="social">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies how the phrase is distinct diastratically</a:documentation>
               <data type="string"/>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teisaid">
      <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. [3.3.3. Quotation]</a:documentation>
         <ref name="_teimacro.specialPara"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.ascribed.directed.attributes"/>
         <optional>
            <attribute name="aloud">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">may be used to indicate whether the quoted matter is regarded as having been vocalized or signed.</a:documentation>
               <choice>
                  <data type="boolean"/>
                  <choice>
                     <value>unknown</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
                     <value>inapplicable</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
                  </choice>
               </choice>
            </attribute>
         </optional>
         <optional>
            <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"/>
                  <choice>
                     <value>unknown</value>
                     <a:documentation/>
                     <value>inapplicable</value>
                     <a:documentation/>
                  </choice>
               </choice>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teiquote">
      <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. [3.3.3. Quotation 4.3.1. Grouped Texts]</a:documentation>
         <ref name="_teimacro.specialPara"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.msExcerpt.attributes"/>
         <ref name="_teiatt.notated.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiq">
      <element name="q">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(quoted) contains material which is distinguished from the surrounding text using quotation marks or a similar method, 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. [3.3.3. Quotation]</a:documentation>
         <ref name="_teimacro.specialPara"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.ascribed.directed.attributes"/>
         <optional>
            <attribute name="type">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">may be used to indicate whether the offset passage is spoken or thought, or to characterize it more finely.
Suggested values include: 1] spoken; 2] thought; 3] written; 4] soCalled; 5] foreign; 6] distinct; 7] term; 8] emph; 9] mentioned</a:documentation>
               <choice>
                  <value>spoken</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">representation of speech</a:documentation>
                  <value>thought</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">representation of thought, e.g. internal monologue</a:documentation>
                  <value>written</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">quotation from a written source</a:documentation>
                  <value>soCalled</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">authorial distance</a:documentation>
                  <value>foreign</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
                  <value>distinct</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">linguistically distinct</a:documentation>
                  <value>term</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">technical term</a:documentation>
                  <value>emph</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">rhetorically emphasized</a:documentation>
                  <value>mentioned</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">refering to itself, not its normal referent</a:documentation>
                  <data type="token">
                     <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
                  </data>
               </choice>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teicit">
      <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. [3.3.3. Quotation 4.3.1. Grouped Texts 9.3.5.1. Examples]</a:documentation>
         <oneOrMore>
            <choice>
               <ref name="_teimodel.qLike"/>
               <ref name="_teimodel.egLike"/>
               <ref name="_teimodel.biblLike"/>
               <ref name="_teimodel.ptrLike"/>
               <ref name="_teimodel.global"/>
               <ref name="_teimodel.entryPart"/>
            </choice>
         </oneOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teimentioned">
      <element name="mentioned">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">marks words or phrases mentioned, not used. [3.3.3. Quotation]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teisoCalled">
      <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. [3.3.3. Quotation]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teidesc">
      <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, typically a documentation element or an entity. [22.4.1. Description of Components]</a:documentation>
         <ref name="_teimacro.limitedContent"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.translatable.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teigloss">
      <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. [3.3.4. Terms, Glosses, Equivalents, and Descriptions 22.4.1. Description of Components]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.declaring.attributes"/>
         <ref name="_teiatt.translatable.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.pointing.attributes"/>
         <ref name="_teiatt.cReferencing.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiterm">
      <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. [3.3.4. Terms, Glosses, Equivalents, and Descriptions]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.declaring.attributes"/>
         <ref name="_teiatt.pointing.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.canonical.attributes"/>
         <ref name="_teiatt.sortable.attributes"/>
         <ref name="_teiatt.cReferencing.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teisic">
      <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. [3.4.1. Apparent Errors]</a:documentation>
         <ref name="_teimacro.paraContent"/>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teicorr">
      <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. [3.4.1. Apparent Errors]</a:documentation>
         <ref name="_teimacro.paraContent"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.editLike.attributes"/>
         <ref name="_teiatt.typed.attribute.subtype"/>
         <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>
               <choice>
                  <value>correction</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Korrektur eines trivialen Fehlers.</a:documentation>
                  <value>emendation</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Emendation.</a:documentation>
               </choice>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teichoice">
      <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. [3.4. Simple Editorial Changes]</a:documentation>
         <oneOrMore>
            <choice>
               <ref name="_teimodel.choicePart"/>
               <ref name="_teichoice"/>
            </choice>
         </oneOrMore>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teireg">
      <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. [3.4.2. Regularization and
Normalization 12. Critical Apparatus]</a:documentation>
         <ref name="_teimacro.paraContent"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.editLike.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiorig">
      <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. [3.4.2. Regularization and
Normalization 12. Critical Apparatus]</a:documentation>
         <ref name="_teimacro.paraContent"/>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teigap">
      <element name="gap">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">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. [3.4.3. Additions, Deletions, and Omissions]</a:documentation>
         <zeroOrMore>
            <choice>
               <ref name="_teimodel.descLike"/>
               <ref name="_teimodel.certLike"/>
            </choice>
         </zeroOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.timed.attributes"/>
         <ref name="_teiatt.editLike.attributes"/>
         <ref name="_teiatt.dimensions.attributes"/>
         <optional>
            <attribute name="reason">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">gives the reason for omission
Suggested values include: 1] cancelled; 2] deleted; 3] editorial; 4] illegible; 5] inaudible; 6] irrelevant; 7] sampling</a:documentation>
               <list>
                  <oneOrMore>
                     <choice>
                        <value>cancelled</value>
                        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
                        <value>deleted</value>
                        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
                        <value>editorial</value>
                        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">for features omitted from transcription due to editorial policy</a:documentation>
                        <value>illegible</value>
                        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
                        <value>inaudible</value>
                        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
                        <value>irrelevant</value>
                        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
                        <value>sampling</value>
                        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
                        <data type="token">
                           <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
                        </data>
                     </choice>
                  </oneOrMore>
               </list>
            </attribute>
         </optional>
         <optional>
            <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="token">
                  <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
               </data>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teiadd">
      <element name="add">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(addition) contains letters, words, or phrases inserted in the source text by an author, scribe, or a previous annotator or corrector. [3.4.3. Additions, Deletions, and Omissions]</a:documentation>
         <ref name="_teimacro.paraContent"/>
         <ref name="_teiatt.changeRelated.attributes"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.transcriptional.attributes"/>
         <ref name="_teiatt.placement.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.dimensions.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teidel">
      <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, or a previous annotator or corrector. [3.4.3. Additions, Deletions, and Omissions]</a:documentation>
         <ref name="_teimacro.paraContent"/>
         <ref name="_teiatt.changeRelated.attributes"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.transcriptional.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.dimensions.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiunclear">
      <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. [11.3.3.1. Damage, Illegibility, and Supplied Text 3.4.3. Additions, Deletions, and Omissions]</a:documentation>
         <ref name="_teimacro.paraContent"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.editLike.attributes"/>
         <ref name="_teiatt.dimensions.attributes"/>
         <optional>
            <attribute name="reason">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates why the material is hard to transcribe.
Suggested values include: 1] illegible; 2] inaudible; 3] faded; 4] background_noise; 5] eccentric_ductus</a:documentation>
               <list>
                  <oneOrMore>
                     <choice>
                        <value>illegible</value>
                        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
                        <value>inaudible</value>
                        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
                        <value>faded</value>
                        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
                        <value>background_noise</value>
                        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
                        <value>eccentric_ductus</value>
                        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
                        <data type="token">
                           <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
                        </data>
                     </choice>
                  </oneOrMore>
               </list>
            </attribute>
         </optional>
         <optional>
            <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="token">
                  <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
               </data>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teiname">
      <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. [3.5.1. Referring Strings]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.personal.attributes"/>
         <ref name="_teiatt.datable.attributes"/>
         <ref name="_teiatt.editLike.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teirs">
      <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. [13.2.1. Personal Names 3.5.1. Referring Strings]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.naming.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiemail">
      <element name="email">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(electronic mail address) contains an email address identifying a location to which email messages can be delivered. [3.5.2. Addresses]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiaddress">
      <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. [3.5.2. Addresses 2.2.4. Publication, Distribution, Licensing, etc. 3.11.2.4. Imprint, Size of a Document, and Reprint Information]</a:documentation>
         <group>
      
            <zeroOrMore>
               <ref name="_teimodel.global"/>
            </zeroOrMore>
      
            <oneOrMore>
               <group>
        
                  <ref name="_teimodel.addrPart"/>
        
        
                  <zeroOrMore>
                     <ref name="_teimodel.global"/>
                  </zeroOrMore>
        
               </group>
            </oneOrMore>
         </group>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiaddrLine">
      <element name="addrLine">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(address line) contains one line of a postal address. [3.5.2. Addresses 2.2.4. Publication, Distribution, Licensing, etc. 3.11.2.4. Imprint, Size of a Document, and Reprint Information]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teistreet">
      <element name="street">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains 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. [3.5.2. Addresses]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teipostCode">
      <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. [3.5.2. Addresses]</a:documentation>
         <text/>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teipostBox">
      <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. [3.5.2. Addresses]</a:documentation>
         <text/>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teinum">
      <element name="num">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(number) contains a number, written in any form. [3.5.3. Numbers and
Measures]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.ranging.attributes"/>
         <optional>
            <attribute name="type">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the type of numeric value.
Suggested values include: 1] cardinal; 2] ordinal; 3] fraction; 4] percentage</a:documentation>
               <choice>
                  <value>cardinal</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">absolute number, e.g. 21, 21.5</a:documentation>
                  <value>ordinal</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">ordinal number, e.g. 21st</a:documentation>
                  <value>fraction</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">fraction, e.g. one half or three-quarters</a:documentation>
                  <value>percentage</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">a percentage</a:documentation>
                  <data type="token">
                     <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
                  </data>
               </choice>
            </attribute>
         </optional>
         <optional>
            <attribute name="value">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">supplies the value of the number in standard form.</a:documentation>
               <choice>
                  <data type="double"/>
                  <data type="token">
                     <param name="pattern">(\-?[\d]+/\-?[\d]+)</param>
                  </data>
                  <data type="decimal"/>
               </choice>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teimeasure">
      <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. [3.5.3. Numbers and
Measures]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.measurement.attributes"/>
         <optional>
            <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="token">
                  <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
               </data>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teimeasureGrp">
      <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. [10.3.4. Dimensions]</a:documentation>
         <zeroOrMore>
            <choice>
               <text/>
               <ref name="_teimodel.gLike"/>
               <ref name="_teimodel.measureLike"/>
            </choice>
         </zeroOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.measurement.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiunit">
      <element name="unit">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a symbol, a word or a phrase referring to a unit of measurement in any kind of formal or informal system. [3.5.3. Numbers and
Measures]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.measurement.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teidate">
      <element name="date">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a date in any format. [3.5.4. Dates and Times 2.2.4. Publication, Distribution, Licensing, etc. 2.6. The Revision Description 3.11.2.4. Imprint, Size of a Document, and Reprint Information 15.2.3. The Setting Description 13.3.6. Dates and Times]</a:documentation>
         <zeroOrMore>
            <choice>
               <text/>
               <ref name="_teimodel.gLike"/>
               <ref name="_teimodel.phrase"/>
               <ref name="_teimodel.global"/>
            </choice>
         </zeroOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.datable.attributes"/>
         <ref name="_teiatt.editLike.attributes"/>
         <ref name="_teiatt.dimensions.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teitime">
      <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. [3.5.4. Dates and Times]</a:documentation>
         <zeroOrMore>
            <choice>
               <text/>
               <ref name="_teimodel.gLike"/>
        
               <ref name="_teimodel.phrase"/>
               <ref name="_teimodel.global"/>
            </choice>
         </zeroOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.datable.attributes"/>
         <ref name="_teiatt.editLike.attributes"/>
         <ref name="_teiatt.dimensions.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiabbr">
      <element name="abbr">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(abbreviation) contains an abbreviation of any sort. [3.5.5. Abbreviations and Their Expansions]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attribute.subtype"/>
         <optional>
            <attribute name="type">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">allows the encoder to classify the abbreviation according to some convenient typology.
Sample values include: 1] suspension; 2] contraction; 3] brevigraph; 4] superscription; 5] acronym; 6] title; 7] organization; 8] geographic</a:documentation>
               <data type="token">
                  <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
               </data>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teiexpan">
      <element name="expan">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(expansion) contains the expansion of an abbreviation. [3.5.5. Abbreviations and Their Expansions]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.editLike.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiptr">
      <element name="ptr">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(pointer) defines a pointer to another location. [3.6. Simple Links and Cross-References 16.1. Links]</a:documentation>
         <empty/>
         <pattern xmlns="http://purl.oclc.org/dsdl/schematron"
                  id="faust-tei-ptr-ptrAtts-constraint-report-7">
            <rule context="tei:ptr">
               <report xmlns:rng="http://relaxng.org/ns/structure/1.0"
                       xmlns:ge="http://www.tei-c.org/ns/geneticEditions"
                       xmlns:svg="http://www.w3.org/2000/svg"
                       xmlns:f="http://www.faustedition.net/ns"
                       test="@target and @cRef">Only one of the
attributes @target and @cRef may be supplied on <name/>.</report>
            </rule>
         </pattern>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.pointing.attributes"/>
         <ref name="_teiatt.internetMedia.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.declaring.attributes"/>
         <ref name="_teiatt.cReferencing.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiref">
      <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. [3.6. Simple Links and Cross-References 16.1. Links]</a:documentation>
         <ref name="_teimacro.paraContent"/>
         <pattern xmlns="http://purl.oclc.org/dsdl/schematron"
                  id="faust-tei-ref-refAtts-constraint-report-8">
            <rule context="tei:ref">
               <report xmlns:rng="http://relaxng.org/ns/structure/1.0"
                       xmlns:ge="http://www.tei-c.org/ns/geneticEditions"
                       xmlns:svg="http://www.w3.org/2000/svg"
                       xmlns:f="http://www.faustedition.net/ns"
                       test="@target and @cRef">Only one of the
	attributes @target' and @cRef' may be supplied on <name/>
               </report>
            </rule>
         </pattern>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.pointing.attributes"/>
         <ref name="_teiatt.internetMedia.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.declaring.attributes"/>
         <ref name="_teiatt.cReferencing.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teilist">
      <element name="list">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains any sequence of items organized as a list. [3.7. Lists]</a:documentation>
         <group>
      
            <zeroOrMore>
               <choice>
          
                  <ref name="_teimodel.divTop"/>
          
          
                  <ref name="_teimodel.global"/>
          
               </choice>
            </zeroOrMore>
      
            <choice>
               <oneOrMore>
                  <group>
                     <ref name="_teiitem"/>
          
                     <zeroOrMore>
                        <ref name="_teimodel.global"/>
                     </zeroOrMore>
          
                  </group>
               </oneOrMore>
               <group>
          
                  <optional>
                     <ref name="_teiheadLabel"/>
                  </optional>
          
          
                  <optional>
                     <ref name="_teiheadItem"/>
                  </optional>
          
                  <oneOrMore>
                     <group>
                        <ref name="_teilabel"/>
            
                        <zeroOrMore>
                           <ref name="_teimodel.global"/>
                        </zeroOrMore>
            
                        <ref name="_teiitem"/>
            
                        <zeroOrMore>
                           <ref name="_teimodel.global"/>
                        </zeroOrMore>
            
                     </group>
                  </oneOrMore>
               </group>
            </choice>
      
            <zeroOrMore>
               <group>
          
                  <ref name="_teimodel.divBottom"/>
          
          
                  <zeroOrMore>
                     <ref name="_teimodel.global"/>
                  </zeroOrMore>
          
               </group>
            </zeroOrMore>
      
         </group>
         <pattern xmlns="http://purl.oclc.org/dsdl/schematron"
                  id="faust-tei-list-gloss-list-must-have-labels-constraint-rule-10">
            <sch:rule xmlns:sch="http://purl.oclc.org/dsdl/schematron"
                      xmlns="http://www.tei-c.org/ns/1.0"
                      xmlns:rng="http://relaxng.org/ns/structure/1.0"
                      xmlns:ge="http://www.tei-c.org/ns/geneticEditions"
                      xmlns:svg="http://www.w3.org/2000/svg"
                      xmlns:f="http://www.faustedition.net/ns"
                      context="tei:list[@type='gloss']">
	              <sch:assert test="tei:label">The content of a "gloss" list should include a sequence of one or more pairs of a label element followed by an item element</sch:assert>
            </sch:rule>
         </pattern>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.sortable.attributes"/>
         <ref name="_teiatt.typed.attribute.subtype"/>
         <optional>
            <attribute name="type">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">describes the nature of the items in the list.
Suggested values include: 1] gloss; 2] index; 3] instructions; 4] litany; 5] syllogism</a:documentation>
               <choice>
                  <value>gloss</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">each list item glosses some term or concept, which is given by a label element preceding the list item.</a:documentation>
                  <value>index</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">each list item is an entry in an index such as the alphabetical topical index at the back of a print volume.</a:documentation>
                  <value>instructions</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">each list item is a step in a sequence of instructions, as in a recipe.</a:documentation>
                  <value>litany</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">each list item is one of a sequence of petitions, supplications or invocations, typically in a religious ritual.</a:documentation>
                  <value>syllogism</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">each list item is part of an argument consisting of two or more propositions and a final conclusion derived from them.</a:documentation>
                  <data type="token">
                     <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
                  </data>
               </choice>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teiitem">
      <element name="item">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains one component of a list. [3.7. Lists 2.6. The Revision Description]</a:documentation>
         <ref name="_teimacro.specialPara"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.sortable.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teilabel">
      <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. Lists]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.placement.attributes"/>
         <ref name="_teiatt.written.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teihead">
      <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. Headings and Trailers]</a:documentation>
         <zeroOrMore>
            <choice>
               <text/>
               <ref name="_teilg"/>
               <ref name="_teimodel.gLike"/>
               <ref name="_teimodel.phrase"/>
               <ref name="_teimodel.inter"/>
               <ref name="_teimodel.lLike"/>
               <ref name="_teimodel.global"/>
            </choice>
         </zeroOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.placement.attributes"/>
         <ref name="_teiatt.written.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiheadLabel">
      <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. [3.7. Lists]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiheadItem">
      <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. [3.7. Lists]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teinote">
      <element name="note">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a note or annotation. [3.8.1. Notes and Simple Annotation 2.2.6. The Notes Statement 3.11.2.8. Notes and Statement of Language 9.3.5.4. Notes within Entries]</a:documentation>
         <zeroOrMore>
            <choice>
               <text/>
               <ref name="_teimodel.gLike"/>
               <ref name="_teimodel.phrase"/>
               <ref name="_teimodel.inter"/>
               <ref name="_teimodel.divPart"/>
               <ref name="_teimodel.global"/>
               <ref name="_teimodel.ptrLike"/>
               <ref name="_teiwit"/>
            </choice>
         </zeroOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.placement.attributes"/>
         <ref name="_teiatt.pointing.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.written.attributes"/>
         <optional>
            <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                       name="anchored"
                       a:defaultValue="true">
               <a:documentation>indicates whether the copy text shows the exact place of reference for the note.</a:documentation>
               <data type="boolean"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="targetEnd">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">points to the end of the span to which the note is attached, if the note is not embedded in the text at that point.</a:documentation>
               <list>
                  <oneOrMore>
                     <data type="anyURI"/>
                  </oneOrMore>
               </list>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teiindex">
      <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. [3.8.2. Index Entries]</a:documentation>
         <zeroOrMore>
            <group>
               <ref name="_teiterm"/>
        
               <optional>
                  <ref name="_teiindex"/>
               </optional>
        
            </group>
         </zeroOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.spanning.attributes"/>
         <optional>
            <attribute name="indexName">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">a single word which follows the rules defining a legal XML name (see ), supplying a name to specify which index (of several) the index entry belongs to.</a:documentation>
               <data type="Name"/>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teimedia">
      <element name="media">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the location of any form of external media such as an audio or video clip etc. [3.9. Graphics and Other Non-textual Components]</a:documentation>
         <zeroOrMore>
            <ref name="_teimodel.descLike"/>
         </zeroOrMore>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.media.attribute.width"/>
         <ref name="_teiatt.media.attribute.height"/>
         <ref name="_teiatt.media.attribute.scale"/>
         <ref name="_teiatt.resourced.attributes"/>
         <ref name="_teiatt.declaring.attributes"/>
         <ref name="_teiatt.timed.attributes"/>
         <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>
            <list>
               <oneOrMore>
                  <data type="token">
                     <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
                  </data>
               </oneOrMore>
            </list>
         </attribute>
         <empty/>
      </element>
   </define>
   <define name="_teigraphic">
      <element name="graphic">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the location of a graphic or illustration, either forming part of a text, or providing an image of it. [3.9. Graphics and Other Non-textual Components 11.1. Digital Facsimiles]</a:documentation>
         <zeroOrMore>
            <ref name="_teimodel.descLike"/>
         </zeroOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.media.attributes"/>
         <ref name="_teiatt.resourced.attributes"/>
         <ref name="_teiatt.declaring.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teibinaryObject">
      <element name="binaryObject">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">provides encoded binary data representing an inline graphic, audio, video or other object. [3.9. Graphics and Other Non-textual Components]</a:documentation>
         <text/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.media.attributes"/>
         <ref name="_teiatt.timed.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <optional>
            <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>
               <list>
                  <oneOrMore>
                     <data type="token">
                        <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
                     </data>
                  </oneOrMore>
               </list>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teimilestone">
      <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. [3.10.3. Milestone
Elements]</a:documentation>
         <empty/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.milestoneUnit.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.edition.attributes"/>
         <ref name="_teiatt.spanning.attributes"/>
         <ref name="_teiatt.breaking.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teigb">
      <element name="gb">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(gathering beginning) marks the beginning of a new gathering or quire in a transcribed codex. [3.10.3. Milestone
Elements]</a:documentation>
         <empty/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.spanning.attributes"/>
         <ref name="_teiatt.breaking.attributes"/>
         <ref name="_teiatt.edition.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teipb">
      <element name="pb">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(page beginning) marks the beginning of a new page in a paginated document. [3.10.3. Milestone
Elements]</a:documentation>
         <empty/>
         <ref name="_teiatt.global.facs.attributes"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.edition.attributes"/>
         <ref name="_teiatt.spanning.attributes"/>
         <ref name="_teiatt.breaking.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teilb">
      <element name="lb">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(line beginning) marks the beginning of a new (typographic) line in some edition or version of a text. [3.10.3. Milestone
Elements 7.2.5. Speech Contents]</a:documentation>
         <empty/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.edition.attributes"/>
         <ref name="_teiatt.spanning.attributes"/>
         <ref name="_teiatt.breaking.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teicb">
      <element name="cb">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(column beginning) marks the beginning of a new column of a text on a multi-column page. [3.10.3. Milestone
Elements]</a:documentation>
         <empty/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.edition.attributes"/>
         <ref name="_teiatt.spanning.attributes"/>
         <ref name="_teiatt.breaking.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teianalytic">
      <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. [3.11.2.1. Analytic, Monographic, and Series Levels]</a:documentation>
         <zeroOrMore>
            <choice>
               <ref name="_teiauthor"/>
               <ref name="_teieditor"/>
               <ref name="_teirespStmt"/>
               <ref name="_teititle"/>
               <ref name="_teimodel.ptrLike"/>
               <ref name="_teidate"/>
               <ref name="_teitextLang"/>
               <ref name="_teiidno"/>
               <ref name="_teiavailability"/>
            </choice>
         </zeroOrMore>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teimonogr">
      <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). [3.11.2.1. Analytic, Monographic, and Series Levels]</a:documentation>
         <group>
      
            <optional>
               <choice>
                  <group>
                     <choice>
                        <ref name="_teiauthor"/>
                        <ref name="_teieditor"/>
                        <ref name="_teimeeting"/>
                        <ref name="_teirespStmt"/>
                     </choice>
            
                     <zeroOrMore>
                        <choice>
                           <ref name="_teiauthor"/>
                           <ref name="_teieditor"/>
                           <ref name="_teimeeting"/>
                           <ref name="_teirespStmt"/>
                        </choice>
                     </zeroOrMore>
            
            
                     <oneOrMore>
                        <ref name="_teititle"/>
                     </oneOrMore>
            
            
                     <zeroOrMore>
                        <choice>
                           <ref name="_teimodel.ptrLike"/>
                           <ref name="_teiidno"/>
                           <ref name="_teitextLang"/>
                           <ref name="_teieditor"/>
                           <ref name="_teirespStmt"/>
                        </choice>
                     </zeroOrMore>
            
                  </group>
                  <group>
            
                     <oneOrMore>
                        <choice>
                           <ref name="_teititle"/>
                           <ref name="_teimodel.ptrLike"/>
                           <ref name="_teiidno"/>
                        </choice>
                     </oneOrMore>
            
            
                     <zeroOrMore>
                        <choice>
                           <ref name="_teitextLang"/>
                           <ref name="_teiauthor"/>
                           <ref name="_teieditor"/>
                           <ref name="_teimeeting"/>
                           <ref name="_teirespStmt"/>
                        </choice>
                     </zeroOrMore>
            
                  </group>
                  <group>
            
                     <ref name="_teiauthority"/>
                     <ref name="_teiidno"/>
                  </group>
               </choice>
            </optional>
      
      
            <zeroOrMore>
               <ref name="_teiavailability"/>
            </zeroOrMore>
      
      
            <zeroOrMore>
               <ref name="_teimodel.noteLike"/>
            </zeroOrMore>
      
            <zeroOrMore>
               <group>
                  <ref name="_teiedition"/>
        
                  <zeroOrMore>
                     <choice>
                        <ref name="_teiidno"/>
                        <ref name="_teimodel.ptrLike"/>
                        <ref name="_teieditor"/>
                        <ref name="_teisponsor"/>
                        <ref name="_teifunder"/>
                        <ref name="_teirespStmt"/>
                     </choice>
                  </zeroOrMore>
        
               </group>
            </zeroOrMore>
            <ref name="_teiimprint"/>
      
            <zeroOrMore>
               <choice>
                  <ref name="_teiimprint"/>
                  <ref name="_teiextent"/>
                  <ref name="_teibiblScope"/>
               </choice>
            </zeroOrMore>
      
         </group>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiseries">
      <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. [3.11.2.1. Analytic, Monographic, and Series Levels]</a:documentation>
         <zeroOrMore>
            <choice>
               <text/>
               <ref name="_teimodel.gLike"/>
               <ref name="_teititle"/>
               <ref name="_teimodel.ptrLike"/>
               <ref name="_teieditor"/>
               <ref name="_teirespStmt"/>
               <ref name="_teibiblScope"/>
               <ref name="_teiidno"/>
               <ref name="_teitextLang"/>
               <ref name="_teimodel.global"/>
               <ref name="_teiavailability"/>
            </choice>
         </zeroOrMore>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiauthor">
      <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. Titles, Authors, and Editors 2.2.1. The Title Statement]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.naming.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teieditor">
      <element name="editor">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a 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. [3.11.2.2. Titles, Authors, and Editors]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.naming.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teirespStmt">
      <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. May also be used to encode information about individuals or organizations which have played a role in the production or distribution of a bibliographic work. [3.11.2.2. Titles, Authors, and Editors 2.2.1. The Title Statement 2.2.2. The Edition Statement 2.2.5. The Series Statement]</a:documentation>
         <group>
            <choice>
               <group>
          
                  <oneOrMore>
                     <ref name="_teiresp"/>
                  </oneOrMore>
          
          
                  <oneOrMore>
                     <ref name="_teimodel.nameLike.agent"/>
                  </oneOrMore>
          
               </group>
               <group>
          
                  <oneOrMore>
                     <ref name="_teimodel.nameLike.agent"/>
                  </oneOrMore>
          
          
                  <oneOrMore>
                     <ref name="_teiresp"/>
                  </oneOrMore>
          
               </group>
            </choice>
            <zeroOrMore>
               <ref name="_teinote"/>
            </zeroOrMore>
         </group>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.canonical.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiresp">
      <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, or an organization's role in the production or distribution of a work. [3.11.2.2. Titles, Authors, and Editors 2.2.1. The Title Statement 2.2.2. The Edition Statement 2.2.5. The Series Statement]</a:documentation>
         <ref name="_teimacro.phraseSeq.limited"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.canonical.attributes"/>
         <ref name="_teiatt.datable.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teititle">
      <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. Titles, Authors, and Editors 2.2.1. The Title Statement 2.2.5. The Series Statement]</a:documentation>
         <ref name="_teimacro.paraContent"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.canonical.attributes"/>
         <ref name="_teiatt.typed.attribute.subtype"/>
         <ref name="_teiatt.datable.attributes"/>
         <optional>
            <attribute name="type">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">classifies the title according to some convenient typology.
Sample values include: 1] main; 2] sub (subordinate) ; 3] alt (alternate) ; 4] short; 5] desc (descriptive) </a:documentation>
               <data type="token">
                  <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
               </data>
            </attribute>
         </optional>
         <optional>
            <attribute name="level">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the bibliographic level for a title, that is, whether it identifies an article, book, journal, series, or unpublished material.</a:documentation>
               <choice>
                  <value>a</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(analytic) the title applies to an analytic item, such as an article, poem, or other work published as part of a larger item.</a:documentation>
                  <value>m</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(monographic) the title applies to a monograph such as a book or other item considered to be a distinct publication, including single volumes of multi-volume works</a:documentation>
                  <value>j</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(journal) the title applies to any serial or periodical publication such as a journal, magazine, or newspaper</a:documentation>
                  <value>s</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(series) the title applies to a series of otherwise distinct publications such as a collection</a:documentation>
                  <value>u</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(unpublished) the title applies to any unpublished material (including theses and dissertations unless published by a commercial press)</a:documentation>
               </choice>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teimeeting">
      <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. [3.11.2.2. Titles, Authors, and Editors]</a:documentation>
         <ref name="_teimacro.limitedContent"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.canonical.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiimprint">
      <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. [3.11.2.4. Imprint, Size of a Document, and Reprint Information]</a:documentation>
         <group>
      
            <zeroOrMore>
               <choice>
                  <ref name="_teiclassCode"/>
                  <ref name="_teicatRef"/>
               </choice>
            </zeroOrMore>
      
            <oneOrMore>
               <group>
                  <choice>
          
            
                     <ref name="_teimodel.imprintPart"/>
          
          
            
                     <ref name="_teimodel.dateLike"/>
          
                  </choice>
        
                  <zeroOrMore>
                     <ref name="_teirespStmt"/>
                  </zeroOrMore>
        
        
                  <zeroOrMore>
                     <ref name="_teimodel.global"/>
                  </zeroOrMore>
        
               </group>
            </oneOrMore>
         </group>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teipublisher">
      <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. [3.11.2.4. Imprint, Size of a Document, and Reprint Information 2.2.4. Publication, Distribution, Licensing, etc.]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.canonical.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teibiblScope">
      <element name="biblScope">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(scope of bibliographic reference) defines the scope of a bibliographic reference, for example as a list of page numbers, or a named subdivision of a larger work. [3.11.2.5. Scopes and Ranges in Bibliographic Citations]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.citing.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teicitedRange">
      <element name="citedRange">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(cited range) defines the range of cited content, often represented by pages or other units [3.11.2.5. Scopes and Ranges in Bibliographic Citations]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.pointing.attributes"/>
         <ref name="_teiatt.citing.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teipubPlace">
      <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. [3.11.2.4. Imprint, Size of a Document, and Reprint Information]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.naming.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teibibl">
      <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. [3.11.1. Methods of Encoding Bibliographic References and Lists of References 2.2.7. The Source Description 15.3.2. Declarable Elements]</a:documentation>
         <zeroOrMore>
            <choice>
               <text/>
               <ref name="_teimodel.gLike"/>
               <ref name="_teimodel.highlighted"/>
               <ref name="_teimodel.pPart.data"/>
               <ref name="_teimodel.pPart.edit"/>
               <ref name="_teimodel.segLike"/>
               <ref name="_teimodel.ptrLike"/>
               <ref name="_teimodel.biblPart"/>
               <ref name="_teimodel.global"/>
            </choice>
         </zeroOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.declarable.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.sortable.attributes"/>
         <ref name="_teiatt.docStatus.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teibiblStruct">
      <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. [3.11.1. Methods of Encoding Bibliographic References and Lists of References 2.2.7. The Source Description 15.3.2. Declarable Elements]</a:documentation>
         <group>
            <zeroOrMore>
               <ref name="_teianalytic"/>
            </zeroOrMore>      
            <oneOrMore>
               <group>
                  <ref name="_teimonogr"/>
                  <zeroOrMore>
                     <ref name="_teiseries"/>
                  </zeroOrMore>
               </group>
            </oneOrMore>
            <zeroOrMore>
               <choice>
                  <ref name="_teimodel.noteLike"/>
                  <ref name="_teimodel.ptrLike"/>
                  <ref name="_teirelatedItem"/>
                  <ref name="_teicitedRange"/>
               </choice>
            </zeroOrMore>
         </group>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.declarable.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.sortable.attributes"/>
         <ref name="_teiatt.docStatus.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teilistBibl">
      <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. [3.11.1. Methods of Encoding Bibliographic References and Lists of References 2.2.7. The Source Description 15.3.2. Declarable Elements]</a:documentation>
         <group>
      
            <zeroOrMore>
               <ref name="_teimodel.headLike"/>
            </zeroOrMore>
      
      
            <oneOrMore>
               <choice>
                  <ref name="_teimodel.biblLike"/>
                  <ref name="_teimodel.milestoneLike"/>
               </choice>
            </oneOrMore>
      
      
            <zeroOrMore>
               <choice>
                  <ref name="_teirelation"/>
                  <ref name="_teilistRelation"/>
               </choice>
            </zeroOrMore>
      
         </group>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.sortable.attributes"/>
         <ref name="_teiatt.declarable.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teirelatedItem">
      <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. [3.11.2.7. Related Items]</a:documentation>
         <optional>
            <choice>
               <ref name="_teimodel.biblLike"/>
               <ref name="_teimodel.ptrLike"/>
            </choice>
         </optional>
         <pattern xmlns="http://purl.oclc.org/dsdl/schematron"
                  id="faust-tei-relatedItem-targetorcontent1-constraint-report-9">
            <rule context="tei:relatedItem">
               <sch:report xmlns:sch="http://purl.oclc.org/dsdl/schematron"
                           xmlns="http://www.tei-c.org/ns/1.0"
                           xmlns:rng="http://relaxng.org/ns/structure/1.0"
                           xmlns:ge="http://www.tei-c.org/ns/geneticEditions"
                           xmlns:svg="http://www.w3.org/2000/svg"
                           xmlns:f="http://www.faustedition.net/ns"
                           test="@target and count( child::* ) &gt; 0">
If the @target attribute on <sch:name/> is used, the
relatedItem element must be empty</sch:report>
            </rule>
         </pattern>
         <pattern xmlns="http://purl.oclc.org/dsdl/schematron"
                  id="faust-tei-relatedItem-targetorcontent1-constraint-assert-7">
            <rule context="tei:relatedItem">
               <sch:assert xmlns:sch="http://purl.oclc.org/dsdl/schematron"
                           xmlns="http://www.tei-c.org/ns/1.0"
                           xmlns:rng="http://relaxng.org/ns/structure/1.0"
                           xmlns:ge="http://www.tei-c.org/ns/geneticEditions"
                           xmlns:svg="http://www.w3.org/2000/svg"
                           xmlns:f="http://www.faustedition.net/ns"
                           test="@target or child::*">A relatedItem element should have either a 'target' attribute
        or a child element to indicate the related bibliographic item</sch:assert>
            </rule>
         </pattern>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <optional>
            <attribute name="target">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">points to the related bibliographic element by means of an absolute or relative URI reference</a:documentation>
               <data type="anyURI"/>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teil">
      <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. [3.12.1. Core Tags for Verse 3.12. Passages of Verse or Drama 7.2.5. Speech Contents]</a:documentation>
         <zeroOrMore>
            <choice>
               <text/>
               <ref name="_teimodel.gLike"/>
               <ref name="_teimodel.phrase"/>
               <ref name="_teimodel.inter"/>
               <ref name="_teimodel.global"/>
            </choice>
         </zeroOrMore>
         <pattern xmlns="http://purl.oclc.org/dsdl/schematron"
                  id="faust-tei-l-abstractModel-structure-l-constraint-report-10">
            <rule context="tei:l">
               <report xmlns:rng="http://relaxng.org/ns/structure/1.0"
                       xmlns:ge="http://www.tei-c.org/ns/geneticEditions"
                       xmlns:svg="http://www.w3.org/2000/svg"
                       xmlns:f="http://www.faustedition.net/ns"
                       test="ancestor::tei:l[not(.//tei:note//tei:l[. = current()])]">
        Abstract model violation: Lines may not contain lines or lg elements.
      </report>
            </rule>
         </pattern>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.metrical.attributes"/>
         <ref name="_teiatt.enjamb.attributes"/>
         <ref name="_teiatt.fragmentable.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teilg">
      <element name="lg">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(line group) contains one or more verse lines functioning as a formal unit, e.g. a stanza, refrain, verse paragraph, etc. [3.12.1. Core Tags for Verse 3.12. Passages of Verse or Drama 7.2.5. Speech Contents]</a:documentation>
         <group>
      
            <zeroOrMore>
               <choice>
                  <ref name="_teimodel.divTop"/>
                  <ref name="_teimodel.global"/>
               </choice>
            </zeroOrMore>
      
            <choice>
               <ref name="_teimodel.lLike"/>
               <ref name="_teimodel.stageLike"/>
               <ref name="_teimodel.labelLike"/>
               <ref name="_teilg"/>
            </choice>
      
            <zeroOrMore>
               <choice>
                  <ref name="_teimodel.lLike"/>
                  <ref name="_teimodel.stageLike"/>
                  <ref name="_teimodel.labelLike"/>
                  <ref name="_teimodel.global"/>
                  <ref name="_teilg"/>
               </choice>
            </zeroOrMore>
      
            <zeroOrMore>
               <group>
        
                  <ref name="_teimodel.divBottom"/>
        
        
                  <zeroOrMore>
                     <ref name="_teimodel.global"/>
                  </zeroOrMore>
        
               </group>
            </zeroOrMore>
         </group>
         <pattern xmlns="http://purl.oclc.org/dsdl/schematron"
                  id="faust-tei-lg-atleast1oflggapl-constraint-assert-8">
            <rule context="tei:lg">
               <sch:assert xmlns:sch="http://purl.oclc.org/dsdl/schematron"
                           xmlns="http://www.tei-c.org/ns/1.0"
                           xmlns:rng="http://relaxng.org/ns/structure/1.0"
                           xmlns:ge="http://www.tei-c.org/ns/geneticEditions"
                           xmlns:svg="http://www.w3.org/2000/svg"
                           xmlns:f="http://www.faustedition.net/ns"
                           test="count(descendant::tei:lg|descendant::tei:l|descendant::tei:gap) &gt; 0">An lg element
        must contain at least one child l, lg or gap element.</sch:assert>
            </rule>
         </pattern>
         <pattern xmlns="http://purl.oclc.org/dsdl/schematron"
                  id="faust-tei-lg-abstractModel-structure-l-constraint-report-11">
            <rule context="tei:lg">
               <report xmlns:rng="http://relaxng.org/ns/structure/1.0"
                       xmlns:ge="http://www.tei-c.org/ns/geneticEditions"
                       xmlns:svg="http://www.w3.org/2000/svg"
                       xmlns:f="http://www.faustedition.net/ns"
                       test="ancestor::tei:l[not(.//tei:note//tei:lg[. = current()])]">
        Abstract model violation: Lines may not contain line groups.
      </report>
            </rule>
         </pattern>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.divLike.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.declaring.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teisp">
      <element name="sp">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(speech) contains an individual speech in a performance text, or a passage presented as such in a prose or verse text. [3.12.2. Core Tags for Drama 3.12. Passages of Verse or Drama 7.2.2. Speeches and Speakers]</a:documentation>
         <group>
      
            <zeroOrMore>
               <ref name="_teimodel.global"/>
            </zeroOrMore>
      
            <optional>
               <group>
                  <ref name="_teispeaker"/>
        
                  <zeroOrMore>
                     <ref name="_teimodel.global"/>
                  </zeroOrMore>
        
               </group>
            </optional>
            <oneOrMore>
               <group>
                  <choice>
                     <ref name="_teilg"/>
                     <ref name="_teimodel.lLike"/>
                     <ref name="_teimodel.pLike"/>
                     <ref name="_teimodel.listLike"/>
                     <ref name="_teimodel.stageLike"/>
                     <ref name="_teimodel.qLike"/>
                  </choice>
        
                  <zeroOrMore>
                     <ref name="_teimodel.global"/>
                  </zeroOrMore>
        
               </group>
            </oneOrMore>
         </group>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.ascribed.directed.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teispeaker">
      <element name="speaker">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a specialized form of heading or label, giving the name of one or more speakers in a dramatic text or fragment. [3.12.2. Core Tags for Drama]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teistage">
      <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. [3.12.2. Core Tags for Drama 3.12. Passages of Verse or Drama 7.2.4. Stage Directions]</a:documentation>
         <ref name="_teimacro.specialPara"/>
         <ref name="_teiatt.ascribed.directed.attributes"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.placement.attributes"/>
         <optional>
            <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>
               <list>
                  <zeroOrMore>
                     <choice>
                        <value>setting</value>
                        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">describes a setting.</a:documentation>
                        <value>entrance</value>
                        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">describes an entrance.</a:documentation>
                        <value>exit</value>
                        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">describes an exit.</a:documentation>
                        <value>business</value>
                        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">describes stage business.</a:documentation>
                        <value>novelistic</value>
                        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">is a narrative, motivating stage direction.</a:documentation>
                        <value>delivery</value>
                        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">describes how a character speaks.</a:documentation>
                        <value>modifier</value>
                        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">gives some detail about a character.</a:documentation>
                        <value>location</value>
                        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">describes a location.</a:documentation>
                        <value>mixed</value>
                        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">more than one of the above</a:documentation>
                        <data type="token">
                           <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
                        </data>
                     </choice>
                  </zeroOrMore>
               </list>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teiteiCorpus">
      <element name="teiCorpus">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains the whole of a TEI encoded corpus, comprising a single corpus header and one or more TEI elements, each containing a single text header and a text. [4. Default Text Structure 15.1. Varieties of Composite Text]</a:documentation>
         <group>
            <ref name="_teiteiHeader"/>
            <choice>
               <group>
          
                  <oneOrMore>
                     <ref name="_teimodel.resourceLike"/>
                  </oneOrMore>
          
          
                  <zeroOrMore>
                     <choice>
                        <ref name="_teiTEI"/>
                        <ref name="_teiteiCorpus"/>
                     </choice>
                  </zeroOrMore>
          
               </group>
        
               <oneOrMore>
                  <choice>
                     <ref name="_teiTEI"/>
                     <ref name="_teiteiCorpus"/>
                  </choice>
               </oneOrMore>
        
            </choice>
         </group>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <optional>
            <attribute name="version">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the version number of the TEI Guidelines against which this document is valid.</a:documentation>
               <data type="token">
                  <param name="pattern">[\d]+(\.[\d]+){0,2}</param>
               </data>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teidivGen">
      <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. [3.8.2. Index Entries]</a:documentation>
         <zeroOrMore>
            <ref name="_teimodel.headLike"/>
         </zeroOrMore>
         <ref name="_teiatt.global.attributes"/>
         <optional>
            <attribute name="type">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies what type of generated text division (e.g. index, table of contents, etc.) is to appear.
Sample values include: 1] index; 2] toc; 3] figlist; 4] tablist</a:documentation>
               <data type="token">
                  <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
               </data>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teitextLang">
      <element name="textLang">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(text language) describes the languages and writing systems identified within the bibliographic work being described, rather than its description. [3.11.2.4. Imprint, Size of a Document, and Reprint Information 10.6.6. Languages and Writing Systems]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <optional>
            <attribute name="mainLang">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(main language) supplies a code which identifies the chief language used in the bibliographic work.</a:documentation>
               <choice>
                  <data type="language"/>
                  <choice>
                     <value/>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
                  </choice>
               </choice>
            </attribute>
         </optional>
         <optional>
            <attribute name="otherLangs">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(other languages) one or more codes identifying any other languages used in the bibliographic work.</a:documentation>
               <list>
                  <zeroOrMore>
                     <choice>
                        <data type="language"/>
                        <choice>
                           <value/>
                           <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
                        </choice>
                     </choice>
                  </zeroOrMore>
               </list>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teiatt.patternReplacement.attributes">
      <ref name="_teiatt.patternReplacement.attribute.matchPattern"/>
      <ref name="_teiatt.patternReplacement.attribute.replacementPattern"/>
   </define>
   <define name="_teiatt.patternReplacement.attribute.matchPattern">
      <attribute name="matchPattern">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies a regular expression against which the values of other attributes can be matched.</a:documentation>
         <data type="token"/>
      </attribute>
   </define>
   <define name="_teiatt.patternReplacement.attribute.replacementPattern">
      <attribute name="replacementPattern">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies a replacement pattern, that is, the skeleton of a relative or absolute URI containing references to groups in the matchPattern which, once subpattern substitution has been performed, complete the URI.</a:documentation>
         <text/>
      </attribute>
   </define>
   <define name="_teiteiHeader">
      <element name="teiHeader">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(TEI header) supplies descriptive and declarative metadata associated with a digital resource or set of resources. [2.1.1. The TEI Header and Its Components 15.1. Varieties of Composite Text]</a:documentation>
         <group>
            <ref name="_teifileDesc"/>
      
            <zeroOrMore>
               <ref name="_teimodel.teiHeaderPart"/>
            </zeroOrMore>
      
      
            <optional>
               <ref name="_teirevisionDesc"/>
            </optional>
      
         </group>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teifileDesc">
      <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. The File Description 2.1.1. The TEI Header and Its Components]</a:documentation>
         <group>
            <group>
               <ref name="_teititleStmt"/>
        
               <optional>
                  <ref name="_teieditionStmt"/>
               </optional>
        
        
               <optional>
                  <ref name="_teiextent"/>
               </optional>
        
               <ref name="_teipublicationStmt"/>
        
               <optional>
                  <ref name="_teiseriesStmt"/>
               </optional>
        
        
               <optional>
                  <ref name="_teinotesStmt"/>
               </optional>
        
            </group>
      
            <oneOrMore>
               <ref name="_teisourceDesc"/>
            </oneOrMore>
      
         </group>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teititleStmt">
      <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. The Title Statement 2.2. The File Description]</a:documentation>
         <group>
      
            <oneOrMore>
               <ref name="_teititle"/>
            </oneOrMore>
      
      
            <zeroOrMore>
               <ref name="_teimodel.respLike"/>
            </zeroOrMore>
      
         </group>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teisponsor">
      <element name="sponsor">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the name of a sponsoring organization or institution. [2.2.1. The Title Statement]</a:documentation>
         <ref name="_teimacro.phraseSeq.limited"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.canonical.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teifunder">
      <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. [2.2.1. The Title Statement]</a:documentation>
         <ref name="_teimacro.phraseSeq.limited"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.canonical.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiprincipal">
      <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. [2.2.1. The Title Statement]</a:documentation>
         <ref name="_teimacro.phraseSeq.limited"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.canonical.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teieditionStmt">
      <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. [2.2.2. The Edition Statement 2.2. The File Description]</a:documentation>
         <choice>
      
            <oneOrMore>
               <ref name="_teimodel.pLike"/>
            </oneOrMore>
      
            <group>
               <ref name="_teiedition"/>
        
               <zeroOrMore>
                  <ref name="_teimodel.respLike"/>
               </zeroOrMore>
        
            </group>
         </choice>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiedition">
      <element name="edition">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">describes the particularities of one edition of a text. [2.2.2. The Edition Statement]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiextent">
      <element name="extent">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">describes the approximate size of a text stored on some carrier medium or of some other object, digital or non-digital, specified in any convenient units. [2.2.3. Type and Extent of File 2.2. The File Description 3.11.2.4. Imprint, Size of a Document, and Reprint Information 10.7.1. Object Description]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teipublicationStmt">
      <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. Publication, Distribution, Licensing, etc. 2.2. The File Description]</a:documentation>
         <choice>
      
	           <oneOrMore>
               <group>
	  
	                 <ref name="_teimodel.publicationStmtPart.agency"/>
	  
	  
	                 <zeroOrMore>
                     <ref name="_teimodel.publicationStmtPart.detail"/>
                  </zeroOrMore>
	  
	              </group>
            </oneOrMore>
      
      
	           <oneOrMore>
               <ref name="_teimodel.pLike"/>
            </oneOrMore>
      
         </choice>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teidistributor">
      <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. [2.2.4. Publication, Distribution, Licensing, etc.]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.canonical.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiauthority">
      <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 a work available, other than a publisher or distributor. [2.2.4. Publication, Distribution, Licensing, etc.]</a:documentation>
         <ref name="_teimacro.phraseSeq.limited"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.canonical.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiidno">
      <element name="idno">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(identifier) supplies any form of identifier used to identify some object, such as a bibliographic item, a person, a title, an organization, etc. in a standardized way. [2.2.4. Publication, Distribution, Licensing, etc. 2.2.5. The Series Statement 3.11.2.4. Imprint, Size of a Document, and Reprint Information]</a:documentation>
         <zeroOrMore>
            <choice>
               <text/>
               <ref name="_teimodel.gLike"/>
               <ref name="_teiidno"/>
            </choice>
         </zeroOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.sortable.attributes"/>
         <ref name="_teiatt.datable.attributes"/>
         <ref name="_teiatt.typed.attribute.subtype"/>
         <optional>
            <attribute name="type">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">categorizes the identifier, for example as an ISBN, Social Security number, etc.
Suggested values include: 1] ISBN; 2] ISSN; 3] DOI; 4] URI; 5] VIAF; 6] ESTC; 7] OCLC</a:documentation>
               <choice>
                  <value>ISBN</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">International Standard Book Number: a 13- or (if assigned prior to 2007) 10-digit identifying number assigned by the publishing industry to a published book or similar item, registered with the International ISBN Agency.</a:documentation>
                  <value>ISSN</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">International Standard Serial Number: an eight-digit number to uniquely identify a serial publication.</a:documentation>
                  <value>DOI</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Digital Object Identifier: a unique string of letters and numbers assigned to an electronic document.</a:documentation>
                  <value>URI</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Uniform Resource Identifier: a string of characters to uniquely identify a resource which usually contains indication of the means of accessing that resource, the name of its host, and its filepath.</a:documentation>
                  <value>VIAF</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">A data number in the Virtual Internet Authority File assigned to link different names in catalogs around the world for the same entity.</a:documentation>
                  <value>ESTC</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">English Short-Title Catalogue number: an identifying number assigned to a document in English printed in the British Isles or North America before 1801.</a:documentation>
                  <value>OCLC</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">OCLC control number (record number) for the union catalog record in WorldCat, a union catalog for member libraries in the Online Computer Library Center global cooperative.</a:documentation>
                  <data type="token">
                     <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
                  </data>
               </choice>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teiavailability">
      <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, any licence applying to it, etc. [2.2.4. Publication, Distribution, Licensing, etc.]</a:documentation>
         <oneOrMore>
            <choice>
               <ref name="_teimodel.availabilityPart"/>
               <ref name="_teimodel.pLike"/>
            </choice>
         </oneOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.declarable.attributes"/>
         <optional>
            <attribute name="status">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">supplies a code identifying the current availability of the text.</a:documentation>
               <choice>
                  <value>free</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">the text is freely available.</a:documentation>
                  <value>unknown</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">the status of the text is unknown.</a:documentation>
                  <value>restricted</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">the text is not freely available.</a:documentation>
               </choice>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teilicence">
      <element name="licence">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains information about a licence or other legal agreement applicable to the text. [2.2.4. Publication, Distribution, Licensing, etc.]</a:documentation>
         <ref name="_teimacro.specialPara"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.pointing.attributes"/>
         <ref name="_teiatt.datable.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiseriesStmt">
      <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. [2.2.5. The Series Statement 2.2. The File Description]</a:documentation>
         <choice>
      
            <oneOrMore>
               <ref name="_teimodel.pLike"/>
            </oneOrMore>
      
            <group>
        
               <oneOrMore>
                  <ref name="_teititle"/>
               </oneOrMore>
        
        
               <zeroOrMore>
                  <choice>
                     <ref name="_teieditor"/>
                     <ref name="_teirespStmt"/>
                  </choice>
               </zeroOrMore>
        
        
               <zeroOrMore>
                  <choice>
                     <ref name="_teiidno"/>
                     <ref name="_teibiblScope"/>
                  </choice>
               </zeroOrMore>
        
            </group>
         </choice>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teinotesStmt">
      <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. [2.2.6. The Notes Statement 2.2. The File Description]</a:documentation>
         <oneOrMore>
            <choice>
               <ref name="_teimodel.noteLike"/>
               <ref name="_teirelatedItem"/>
            </choice>
         </oneOrMore>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teisourceDesc">
      <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. The Source Description]</a:documentation>
         <choice>
      
            <oneOrMore>
               <ref name="_teimodel.pLike"/>
            </oneOrMore>
      
      
            <oneOrMore>
               <choice>
                  <ref name="_teimodel.biblLike"/>
                  <ref name="_teimodel.sourceDescPart"/>
                  <ref name="_teimodel.listLike"/>
               </choice>
            </oneOrMore>
      
         </choice>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.declarable.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teibiblFull">
      <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. [3.11.1. Methods of Encoding Bibliographic References and Lists of References 2.2. The File Description 2.2.7. The Source Description 15.3.2. Declarable Elements]</a:documentation>
         <choice>
            <group>
               <group>
                  <ref name="_teititleStmt"/>
                  <optional>
                     <ref name="_teieditionStmt"/>
                  </optional>
                  <optional>
                     <ref name="_teiextent"/>
                  </optional>
                  <ref name="_teipublicationStmt"/>
                  <optional>
                     <ref name="_teiseriesStmt"/>
                  </optional>
                  <optional>
                     <ref name="_teinotesStmt"/>
                  </optional>
               </group>
               <zeroOrMore>
                  <ref name="_teisourceDesc"/>
               </zeroOrMore>
            </group>
            <group>
               <ref name="_teifileDesc"/>
               <ref name="_teiprofileDesc"/>
            </group>
         </choice>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.declarable.attributes"/>
         <ref name="_teiatt.sortable.attributes"/>
         <ref name="_teiatt.docStatus.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiencodingDesc">
      <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. [2.3. The Encoding Description 2.1.1. The TEI Header and Its Components]</a:documentation>
         <oneOrMore>
            <choice>
               <ref name="_teimodel.encodingDescPart"/>
               <ref name="_teimodel.pLike"/>
            </choice>
         </oneOrMore>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teischemaRef">
      <element name="schemaRef">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(schema reference) describes or points to a related customization or schema file [2.3.9. The Schema Specification]</a:documentation>
         <optional>
            <ref name="_teimodel.descLike"/>
         </optional>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.resourced.attributes"/>
         <optional>
            <attribute name="key">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">the identifier used for the customization or schema</a:documentation>
               <data type="NCName"/>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teiprojectDesc">
      <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. [2.3.1. The Project Description 2.3. The Encoding Description 15.3.2. Declarable Elements]</a:documentation>
         <oneOrMore>
            <ref name="_teimodel.pLike"/>
         </oneOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.declarable.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teisamplingDecl">
      <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. [2.3.2. The Sampling Declaration 2.3. The Encoding Description 15.3.2. Declarable Elements]</a:documentation>
         <oneOrMore>
            <ref name="_teimodel.pLike"/>
         </oneOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.declarable.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teieditorialDecl">
      <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. [2.3.3. The Editorial Practices Declaration 2.3. The Encoding Description 15.3.2. Declarable Elements]</a:documentation>
         <oneOrMore>
            <choice>
               <ref name="_teimodel.pLike"/>
               <ref name="_teimodel.editorialDeclPart"/>
            </choice>
         </oneOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.declarable.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teicorrection">
      <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. [2.3.3. The Editorial Practices Declaration 15.3.2. Declarable Elements]</a:documentation>
         <oneOrMore>
            <ref name="_teimodel.pLike"/>
         </oneOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.declarable.attributes"/>
         <optional>
            <attribute name="status">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the degree of correction applied to the text.</a:documentation>
               <choice>
                  <value>high</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">the text has been thoroughly checked and proofread.</a:documentation>
                  <value>medium</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">the text has been checked at least once.</a:documentation>
                  <value>low</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">the text has not been checked.</a:documentation>
                  <value>unknown</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">the correction status of the text is unknown.</a:documentation>
               </choice>
            </attribute>
         </optional>
         <optional>
            <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>
               <choice>
                  <value>silent</value>
                  <a:documentation>corrections have been made silently</a:documentation>
                  <value>markup</value>
                  <a:documentation>corrections have been represented using markup</a:documentation>
               </choice>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teinormalization">
      <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. [2.3.3. The Editorial Practices Declaration 15.3.2. Declarable Elements]</a:documentation>
         <oneOrMore>
            <ref name="_teimodel.pLike"/>
         </oneOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.declarable.attributes"/>
         <optional>
            <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>
               <choice>
                  <value>silent</value>
                  <a:documentation>normalization made silently</a:documentation>
                  <value>markup</value>
                  <a:documentation>normalization represented using markup</a:documentation>
               </choice>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teiquotation">
      <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. [2.3.3. The Editorial Practices Declaration 15.3.2. Declarable Elements]</a:documentation>
         <zeroOrMore>
            <ref name="_teimodel.pLike"/>
         </zeroOrMore>
         <pattern xmlns="http://purl.oclc.org/dsdl/schematron"
                  id="faust-tei-quotation-quotationContents-constraint-report-12">
            <rule context="tei:quotation">
               <report xmlns:xi="http://www.w3.org/2001/XInclude"
                       xmlns:rng="http://relaxng.org/ns/structure/1.0"
                       xmlns:ge="http://www.tei-c.org/ns/geneticEditions"
                       xmlns:svg="http://www.w3.org/2000/svg"
                       xmlns:f="http://www.faustedition.net/ns"
                       test="not(@marks) and not (tei:p)">
On <name/>, either the @marks attribute should be used, or a paragraph of description provided</report>
            </rule>
         </pattern>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.declarable.attributes"/>
         <optional>
            <attribute name="marks">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(quotation marks) indicates whether or not quotation marks have been retained as content within the text.</a:documentation>
               <choice>
                  <value>none</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">no quotation marks have been retained</a:documentation>
                  <value>some</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">some quotation marks have been retained</a:documentation>
                  <value>all</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">all quotation marks have been retained</a:documentation>
               </choice>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teihyphenation">
      <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. [2.3.3. The Editorial Practices Declaration 15.3.2. Declarable Elements]</a:documentation>
         <oneOrMore>
            <ref name="_teimodel.pLike"/>
         </oneOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.declarable.attributes"/>
         <optional>
            <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>
               <choice>
                  <value>all</value>
                  <a:documentation>all end-of-line hyphenation has been retained, even though the lineation of the original may not have been.</a:documentation>
                  <value>some</value>
                  <a:documentation>end-of-line hyphenation has been retained in some cases.</a:documentation>
                  <value>hard</value>
                  <a:documentation>all soft end-of-line hyphenation has been removed: any remaining end-of-line hyphenation should be retained.</a:documentation>
                  <value>none</value>
                  <a:documentation>all end-of-line hyphenation has been removed: any remaining hyphenation occurred within the line.</a:documentation>
               </choice>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teisegmentation">
      <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. [2.3.3. The Editorial Practices Declaration 15.3.2. Declarable Elements]</a:documentation>
         <oneOrMore>
            <ref name="_teimodel.pLike"/>
         </oneOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.declarable.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teistdVals">
      <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. [2.3.3. The Editorial Practices Declaration 15.3.2. Declarable Elements]</a:documentation>
         <oneOrMore>
            <ref name="_teimodel.pLike"/>
         </oneOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.declarable.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiinterpretation">
      <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. [2.3.3. The Editorial Practices Declaration]</a:documentation>
         <oneOrMore>
            <ref name="_teimodel.pLike"/>
         </oneOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.declarable.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teipunctuation">
      <element name="punctuation">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies editorial practice adopted with respect to punctuation marks in the original. [2.3.3. The Editorial Practices Declaration 3.2. Treatment of Punctuation]</a:documentation>
         <zeroOrMore>
            <ref name="_teimodel.pLike"/>
         </zeroOrMore>
         <ref name="_teiatt.declarable.attributes"/>
         <ref name="_teiatt.global.attributes"/>
         <optional>
            <attribute name="marks">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates whether or not punctation marks have been retained as content within the text.</a:documentation>
               <choice>
                  <value>none</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">no punctuation marks have been retained</a:documentation>
                  <value>some</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">some punctuation marks have been retained</a:documentation>
                  <value>all</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">all punctuation marks have been retained</a:documentation>
               </choice>
            </attribute>
         </optional>
         <optional>
            <attribute name="placement">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the positioning of punctuation marks that are associated with marked up text as being encoded within the element surrounding the text or immediately before or after it.</a:documentation>
               <choice>
                  <value>internal</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">punctuation marks found at the start or end of a marked up text component are included within its surrounding element;</a:documentation>
                  <value>external</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">punctuation marks found at the start or end of a marked up text component appear immediately before or after the surrounding element</a:documentation>
               </choice>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teitagsDecl">
      <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. [2.3.4. The Tagging Declaration 2.3. The Encoding Description]</a:documentation>
         <group>      
            <zeroOrMore>
               <ref name="_teirendition"/>
            </zeroOrMore>
            <zeroOrMore>
               <ref name="_teinamespace"/>
            </zeroOrMore>
         </group>
         <ref name="_teiatt.global.attributes"/>
         <optional>
            <attribute name="partial">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates whether the element types listed exhaustively include all those found within text, or represent only a subset.</a:documentation>
               <data type="boolean"/>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teitagUsage">
      <element name="tagUsage">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">documents the usage of a specific element within a specified document. [2.3.4. The Tagging Declaration]</a:documentation>
         <ref name="_teimacro.limitedContent"/>
         <ref name="_teiatt.global.attributes"/>
         <attribute name="gi">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(generic identifier) specifies the name (generic identifier) of the element indicated by the tag, within the namespace indicated by the parent namespace element.</a:documentation>
            <data type="Name"/>
         </attribute>
         <optional>
            <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"/>
            </attribute>
         </optional>
         <optional>
            <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"/>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teinamespace">
      <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. [2.3.4. The Tagging Declaration]</a:documentation>
         <oneOrMore>
            <ref name="_teitagUsage"/>
         </oneOrMore>
         <ref name="_teiatt.global.attributes"/>
         <attribute name="name">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the full formal name of the namespace concerned.</a:documentation>
            <data type="anyURI"/>
         </attribute>
         <empty/>
      </element>
   </define>
   <define name="_teirendition">
      <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. [2.3.4. The Tagging Declaration]</a:documentation>
         <ref name="_teimacro.limitedContent"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.styleDef.attributes"/>
         <optional>
            <attribute name="scope">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">where CSS is used, provides a way of defining pseudo-elements, that is, styling rules applicable to specific sub-portions of an element.
Sample values include: 1] first-line; 2] first-letter; 3] before; 4] after</a:documentation>
               <data type="token">
                  <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
               </data>
            </attribute>
         </optional>
         <optional>
            <attribute name="selector">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a selector or series of selectors specifying the elements to which the contained style description applies, expressed in the language specified in the scheme attribute.</a:documentation>
               <data type="string"/>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teistyleDefDecl">
      <element name="styleDefDecl">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(style definition language declaration) specifies the name of the formal language in which style or renditional information is supplied elsewhere in the document. The specific version of the scheme may also be supplied. [2.3.5. The Default Style Definition Language Declaration]</a:documentation>
         <zeroOrMore>
            <ref name="_teimodel.pLike"/>
         </zeroOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.declarable.attributes"/>
         <ref name="_teiatt.styleDef.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teirefsDecl">
      <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. [2.3.6.3. Milestone Method 2.3. The Encoding Description 2.3.6. The Reference System Declaration]</a:documentation>
         <choice>
      
            <oneOrMore>
               <ref name="_teimodel.pLike"/>
            </oneOrMore>
      
      
            <oneOrMore>
               <ref name="_teicRefPattern"/>
            </oneOrMore>
      
      
            <oneOrMore>
               <ref name="_teirefState"/>
            </oneOrMore>
      
         </choice>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.declarable.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teicRefPattern">
      <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. [2.3.6.3. Milestone Method 2.3.6. The Reference System Declaration 2.3.6.2. Search-and-Replace Method]</a:documentation>
         <zeroOrMore>
            <ref name="_teimodel.pLike"/>
         </zeroOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.patternReplacement.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiprefixDef">
      <element name="prefixDef">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(prefix definition) defines a prefixing scheme used in data.pointer values, showing how abbreviated URIs using the scheme may be expanded into full URIs. [16.2.3. Using Abbreviated Pointers]</a:documentation>
         <zeroOrMore>
            <ref name="_teimodel.pLike"/>
         </zeroOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.patternReplacement.attributes"/>
         <attribute name="ident">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">supplies a name which functions as the prefix for an abbreviated pointing scheme such as a private URI scheme. The prefix constitutes the text preceding the first colon.</a:documentation>
            <data type="token">
               <param name="pattern">[a-z][a-z0-9\+\.\-]*</param>
            </data>
         </attribute>
         <empty/>
      </element>
   </define>
   <define name="_teilistPrefixDef">
      <element name="listPrefixDef">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(list of prefix definitions) contains a list of definitions of prefixing schemes used in data.pointer values, showing how abbreviated URIs using each scheme may be expanded into full URIs. [16.2.3. Using Abbreviated Pointers]</a:documentation>
         <oneOrMore>
            <choice>
               <ref name="_teiprefixDef"/>
               <ref name="_teilistPrefixDef"/>
            </choice>
         </oneOrMore>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teirefState">
      <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. [2.3.6.3. Milestone Method 2.3.6. The Reference System Declaration]</a:documentation>
         <empty/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.milestoneUnit.attributes"/>
         <ref name="_teiatt.edition.attributes"/>
         <optional>
            <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"/>
            </attribute>
         </optional>
         <optional>
            <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>
               <data type="string"/>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teiclassDecl">
      <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. [2.3.7. The Classification Declaration 2.3. The Encoding Description]</a:documentation>
         <oneOrMore>
            <ref name="_teitaxonomy"/>
         </oneOrMore>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teitaxonomy">
      <element name="taxonomy">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">defines a typology either implicitly, by means of a bibliographic citation, or explicitly by a structured taxonomy. [2.3.7. The Classification Declaration]</a:documentation>
         <choice>
      
      
      
      
      
      
      
      
            <choice>
	              <oneOrMore>
                  <choice>
                     <ref name="_teicategory"/>
                     <ref name="_teitaxonomy"/>
	                 </choice>
               </oneOrMore>
	              <group>
	                 <oneOrMore>
                     <choice>
                        <ref name="_teimodel.glossLike"/>
                        <ref name="_teimodel.descLike"/>
	                    </choice>
                  </oneOrMore>
	                 <zeroOrMore>
                     <choice>
                        <ref name="_teicategory"/>
                        <ref name="_teitaxonomy"/>
	                    </choice>
                  </zeroOrMore>
	              </group>
            </choice>
            <group>
               <ref name="_teimodel.biblLike"/>
               <zeroOrMore>
                  <choice>
                     <ref name="_teicategory"/>
                     <ref name="_teitaxonomy"/>
                  </choice>
               </zeroOrMore>
            </group>
         </choice>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teicategory">
      <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. [2.3.7. The Classification Declaration]</a:documentation>
         <group>
            <choice>
        
               <oneOrMore>
                  <ref name="_teicatDesc"/>
               </oneOrMore>
        
        
               <zeroOrMore>
                  <choice>
                     <ref name="_teimodel.descLike"/>
                     <ref name="_teimodel.glossLike"/>
                  </choice>
               </zeroOrMore>
        
            </choice>
      
            <zeroOrMore>
               <ref name="_teicategory"/>
            </zeroOrMore>
      
         </group>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teicatDesc">
      <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. [2.3.7. The Classification Declaration]</a:documentation>
         <zeroOrMore>
            <choice>
               <text/>
               <ref name="_teimodel.limitedPhrase"/>
               <ref name="_teimodel.catDescPart"/>
            </choice>
         </zeroOrMore>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teigeoDecl">
      <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. [2.3.8. The Geographic Coordinates Declaration]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.declarable.attributes"/>
         <optional>
            <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>
               <choice>
                  <value>WGS84</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>
                  <value>MGRS</value>
                  <a:documentation>(Military Grid Reference System) the values supplied are geospatial entity object codes, based on</a:documentation>
                  <value>OSGB36</value>
                  <a:documentation>(ordnance survey great britain) the value supplied is to be interpreted as a British National Grid Reference.</a:documentation>
                  <value>ED50</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="token">
                     <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
                  </data>
               </choice>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teiappInfo">
      <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. [2.3.10. The Application Information Element]</a:documentation>
         <oneOrMore>
            <ref name="_teimodel.applicationLike"/>
         </oneOrMore>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiapplication">
      <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. [2.3.10. The Application Information Element]</a:documentation>
         <group>
      
            <oneOrMore>
               <ref name="_teimodel.labelLike"/>
            </oneOrMore>
      
            <choice>
        
               <zeroOrMore>
                  <ref name="_teimodel.ptrLike"/>
               </zeroOrMore>
        
        
               <zeroOrMore>
                  <ref name="_teimodel.pLike"/>
               </zeroOrMore>
        
            </choice>
         </group>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.datable.attributes"/>
         <attribute name="ident">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">supplies an identifier for the application, independent of its version number or display name.</a:documentation>
            <data type="Name"/>
         </attribute>
         <attribute name="version">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">supplies a version number for the application, independent of its identifier or display name.</a:documentation>
            <data type="token">
               <param name="pattern">[\d]+[a-z]*[\d]*(\.[\d]+[a-z]*[\d]*){0,3}</param>
            </data>
         </attribute>
         <empty/>
      </element>
   </define>
   <define name="_teiprofileDesc">
      <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. [2.4. The Profile Description 2.1.1. The TEI Header and Its Components]</a:documentation>
         <zeroOrMore>
            <ref name="_teimodel.profileDescPart"/>
         </zeroOrMore>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teihandNote">
      <element name="handNote">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(note on hand) describes a particular style or hand distinguished within a manuscript. [10.7.2. Writing, Decoration, and Other Notations]</a:documentation>
         <ref name="_teimacro.specialPara"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.handFeatures.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiabstract">
      <element name="abstract">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a summary or formal abstract prefixed to an existing source document by the encoder. [2.4.4. Abstracts]</a:documentation>
         <oneOrMore>
            <choice>
               <ref name="_teimodel.pLike"/>
               <ref name="_teimodel.listLike"/>
            </choice>
         </oneOrMore>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teicreation">
      <element name="creation">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains information about the creation of a text. [2.4.1. Creation 2.4. The Profile Description]</a:documentation>
         <zeroOrMore>
            <choice>
               <text/>
               <ref name="_teimodel.limitedPhrase"/>
               <ref name="_teilistChange"/>
            </choice>
         </zeroOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.datable.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teilangUsage">
      <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. [2.4.2. Language Usage 2.4. The Profile Description 15.3.2. Declarable Elements]</a:documentation>
         <choice>
        
            <oneOrMore>
               <ref name="_teimodel.pLike"/>
            </oneOrMore>
         
          
            <oneOrMore>
               <ref name="_teilanguage"/>
            </oneOrMore>
        
         </choice>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.declarable.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teilanguage">
      <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. [2.4.2. Language Usage]</a:documentation>
         <ref name="_teimacro.phraseSeq.limited"/>
         <ref name="_teiatt.global.attributes"/>
         <attribute name="ident">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(identifier) Supplies a language code constructed as defined in BCP 47 which is used to identify the language documented by this element, and which is referenced by the global xml:lang attribute.</a:documentation>
            <choice>
               <data type="language"/>
               <choice>
                  <value/>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
               </choice>
            </choice>
         </attribute>
         <optional>
            <attribute name="usage">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the approximate percentage (by volume) of the text which uses this language.</a:documentation>
               <data type="nonNegativeInteger"/>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teitextClass">
      <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. [2.4.3. The Text Classification]</a:documentation>
         <zeroOrMore>
            <choice>
               <ref name="_teiclassCode"/>
               <ref name="_teicatRef"/>
               <ref name="_teikeywords"/>
            </choice>
         </zeroOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.declarable.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teikeywords">
      <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. [2.4.3. The Text Classification]</a:documentation>
         <choice>
      
            <oneOrMore>
               <ref name="_teiterm"/>
            </oneOrMore>
      
            <ref name="_teilist"/>
         </choice>
         <ref name="_teiatt.global.attributes"/>
         <optional>
            <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, for example by a taxonomy element, or by some other resource.</a:documentation>
               <data type="anyURI"/>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teiclassCode">
      <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. [2.4.3. The Text Classification]</a:documentation>
         <ref name="_teimacro.phraseSeq.limited"/>
         <ref name="_teiatt.global.attributes"/>
         <attribute name="scheme">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">identifies the classification system in use, as defined by, e.g. a taxonomy element, or some other resource.</a:documentation>
            <data type="anyURI"/>
         </attribute>
         <empty/>
      </element>
   </define>
   <define name="_teicatRef">
      <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. [2.4.3. The Text Classification]</a:documentation>
         <empty/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.pointing.attributes"/>
         <optional>
            <attribute name="scheme">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">identifies the classification scheme within which the set of categories concerned is defined, for example by a taxonomy element, or by some other resource.</a:documentation>
               <data type="anyURI"/>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teicalendarDesc">
      <element name="calendarDesc">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(calendar description) contains a description of the calendar system used in any dating expression found in the text. [2.4. The Profile Description 2.4.5. Calendar Description]</a:documentation>
         <oneOrMore>
            <ref name="_teicalendar"/>
         </oneOrMore>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teicalendar">
      <element name="calendar">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">describes a calendar or dating system used in a dating formula in the text. [2.4.5. Calendar Description]</a:documentation>
         <oneOrMore>
            <ref name="_teimodel.pLike"/>
         </oneOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.pointing.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teicorrespDesc">
      <element name="correspDesc">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(correspondence
    description) contains a description of the actions related to one act of correspondence. [2.4.6. Correspondence Description]</a:documentation>
         <choice>
      
            <oneOrMore>
               <ref name="_teimodel.correspDescPart"/>
            </oneOrMore>
      
      
            <oneOrMore>
               <ref name="_teimodel.pLike"/>
            </oneOrMore>
      
         </choice>
         <ref name="_teiatt.declarable.attributes"/>
         <ref name="_teiatt.canonical.attributes"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teicorrespAction">
      <element name="correspAction">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(correspondence action) contains a structured description of the place, the name of a person/organization and the date related to the sending/receiving of a message or any other action related to the correspondence. [2.4.6. Correspondence Description]</a:documentation>
         <choice>
            <oneOrMore>
               <ref name="_teimodel.correspActionPart"/>
            </oneOrMore>
            <oneOrMore>
               <ref name="_teimodel.pLike"/>
            </oneOrMore>
         </choice>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attribute.subtype"/>
         <ref name="_teiatt.sortable.attributes"/>
         <optional>
            <attribute name="type">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">describes the nature of the action.
Suggested values include: 1] sent; 2] received; 3] transmitted; 4] redirected; 5] forwarded</a:documentation>
               <choice>
                  <value>sent</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">information concerning the sending or dispatch of a message.</a:documentation>
                  <value>received</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">information concerning the receipt of a message.</a:documentation>
                  <value>transmitted</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">information concerning the transmission of a message, i.e. between the dispatch and the next receipt, redirect or forwarding.</a:documentation>
                  <value>redirected</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">information concerning the redirection of an unread message.</a:documentation>
                  <value>forwarded</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">information concerning the forwarding of a message.</a:documentation>
                  <data type="token">
                     <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
                  </data>
               </choice>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teicorrespContext">
      <element name="correspContext">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(correspondence context) provides references to preceding or following correspondence related to this piece of correspondence. [2.4.6. Correspondence Description]</a:documentation>
         <oneOrMore>
            <ref name="_teimodel.correspContextPart"/>
         </oneOrMore>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teixenoData">
      <element name="xenoData">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(non-TEI metadata) provides a container element into which metadata in non-TEI formats may be placed. [2.5. Non-TEI Metadata]</a:documentation>
         <choice>
            <text/>
            <ref name="anyElement-xenoData"/>
         </choice>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.declarable.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teirevisionDesc">
      <element name="revisionDesc">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(revision description) summarizes the revision history for a file. [2.6. The Revision Description 2.1.1. The TEI Header and Its Components]</a:documentation>
         <choice>
            <ref name="_teilist"/>
            <ref name="_teilistChange"/>
      
            <oneOrMore>
               <ref name="_teichange"/>
            </oneOrMore>
      
         </choice>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.docStatus.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teichange">
      <element name="change">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">documents a change or set of changes made during the production of a source document, or during the revision of an electronic file. [2.6. The Revision Description 2.4.1. Creation 11.7. Identifying Changes and Revisions]</a:documentation>
         <zeroOrMore>
            <choice>
               <ref name="_teimacro.specialPara"/>
               <ref name="_teilistChange"/>
            </choice>
         </zeroOrMore>
         <ref name="_teiatt.ascribed.attributes"/>
         <ref name="_teiatt.datable.attributes"/>
         <ref name="_teiatt.docStatus.attributes"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <optional>
            <attribute name="target">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">points to one or more elements that belong to this change.</a:documentation>
               <list>
                  <oneOrMore>
                     <data type="anyURI"/>
                  </oneOrMore>
               </list>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teiscriptNote">
      <element name="scriptNote">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">describes a particular script distinguished within the description of a manuscript or similar resource. [10.7.2. Writing, Decoration, and Other Notations]</a:documentation>
         <ref name="_teimacro.specialPara"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.handFeatures.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teilistChange">
      <element name="listChange">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">groups a number of change descriptions associated with either the creation of a source text or the revision of an encoded text. [2.6. The Revision Description 11.7. Identifying Changes and Revisions]</a:documentation>
         <oneOrMore>
            <choice>
               <ref name="_teilistChange"/>
               <ref name="_teichange"/>
            </choice>
         </oneOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.sortable.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <optional>
            <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                       name="ordered"
                       a:defaultValue="true">
               <a:documentation>indicates whether the ordering of its child change elements is to be considered significant or not</a:documentation>
               <data type="boolean"/>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teiTEI">
      <element name="TEI">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(TEI document) contains a single TEI-conformant document, combining a single TEI header with one or more members of the model.resourceLike class. Multiple TEI elements may be combined to form a teiCorpus element. [4. Default Text Structure 15.1. Varieties of Composite Text]</a:documentation>
         <group>
            <ref name="_teiteiHeader"/>
            <oneOrMore>
               <ref name="_teimodel.resourceLike"/>
            </oneOrMore>
         </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="xs"
             uri="http://www.w3.org/2001/XMLSchema"/>
         <ns xmlns="http://purl.oclc.org/dsdl/schematron"
             prefix="rng"
             uri="http://relaxng.org/ns/structure/1.0"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <optional>
            <attribute name="version">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the version number of the TEI Guidelines against which this document is valid.</a:documentation>
               <data type="token">
                  <param name="pattern">[\d]+(\.[\d]+){0,2}</param>
               </data>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teitext">
      <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. Default Text Structure 15.1. Varieties of Composite Text]</a:documentation>
         <group>
      
            <zeroOrMore>
               <ref name="_teimodel.global"/>
            </zeroOrMore>
      
            <optional>
               <group>
                  <ref name="_teifront"/>
        
                  <zeroOrMore>
                     <ref name="_teimodel.global"/>
                  </zeroOrMore>
        
               </group>
            </optional>
            <choice>
               <ref name="_teibody"/>
               <ref name="_teigroup"/>
            </choice>
      
            <zeroOrMore>
               <ref name="_teimodel.global"/>
            </zeroOrMore>
      
            <optional>
               <group>
                  <ref name="_teiback"/>
        
                  <zeroOrMore>
                     <ref name="_teimodel.global"/>
                  </zeroOrMore>
        
               </group>
            </optional>
         </group>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.declaring.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.written.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teibody">
      <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. Default Text Structure]</a:documentation>
         <group>
      
      
            <zeroOrMore>
               <ref name="_teimodel.global"/>
            </zeroOrMore>
      
      
      
            <optional>
               <group>
          
                  <ref name="_teimodel.divTop"/>
          
          
                  <zeroOrMore>
                     <choice>
                        <ref name="_teimodel.global"/>
                        <ref name="_teimodel.divTop"/>
                     </choice>
                  </zeroOrMore>
          
               </group>
            </optional>
      
      
      
            <optional>
               <group>
          
                  <ref name="_teimodel.divGenLike"/>
          
          
                  <zeroOrMore>
                     <choice>
                        <ref name="_teimodel.global"/>
                        <ref name="_teimodel.divGenLike"/>
                     </choice>
                  </zeroOrMore>
          
               </group>
            </optional>
      
      
        
            <choice>
          
          
               <oneOrMore>
                  <group>
              
                     <ref name="_teimodel.divLike"/>
              
              
                     <zeroOrMore>
                        <choice>
                           <ref name="_teimodel.global"/>
                           <ref name="_teimodel.divGenLike"/>
                        </choice>
                     </zeroOrMore>
              
                  </group>
               </oneOrMore>
          
          
          
               <oneOrMore>
                  <group>
              
                     <ref name="_teimodel.div1Like"/>
              
              
                     <zeroOrMore>
                        <choice>
                           <ref name="_teimodel.global"/>
                           <ref name="_teimodel.divGenLike"/>
                        </choice>
                     </zeroOrMore>
              
                  </group>
               </oneOrMore>
          
          
               <group>
                  <oneOrMore>
                     <group>
              
                        <ref name="_teimodel.common"/>
              
              
                        <zeroOrMore>
                           <ref name="_teimodel.global"/>
                        </zeroOrMore>
              
                     </group>
                  </oneOrMore>
            
                  <optional>
                     <choice>
                
                
                        <oneOrMore>
                           <group>
                    
                              <ref name="_teimodel.divLike"/>
                    
                    
                              <zeroOrMore>
                                 <choice>
                                    <ref name="_teimodel.global"/>
                                    <ref name="_teimodel.divGenLike"/>
                                 </choice>
                              </zeroOrMore>
                    
                           </group>
                        </oneOrMore>
                
                
                
                        <oneOrMore>
                           <group>
                    
                              <ref name="_teimodel.div1Like"/>
                    
                    
                              <zeroOrMore>
                                 <choice>
                                    <ref name="_teimodel.global"/>
                                    <ref name="_teimodel.divGenLike"/>
                                 </choice>
                              </zeroOrMore>
                    
                           </group>
                        </oneOrMore>
                
                     </choice>
                  </optional>
            
               </group>
            </choice>
        
      
      
      
            <zeroOrMore>
               <group>
          
                  <ref name="_teimodel.divBottom"/>
          
          
                  <zeroOrMore>
                     <ref name="_teimodel.global"/>
                  </zeroOrMore>
          
               </group>
            </zeroOrMore>
      
         </group>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.declaring.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teigroup">
      <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. [4. Default Text Structure 4.3.1. Grouped Texts 15.1. Varieties of Composite Text]</a:documentation>
         <group>
      
            <zeroOrMore>
               <choice>
                  <ref name="_teimodel.divTop"/>
                  <ref name="_teimodel.global"/>
               </choice>
            </zeroOrMore>
      
            <group>
               <choice>
                  <ref name="_teitext"/>
                  <ref name="_teigroup"/>
               </choice>
        
               <zeroOrMore>
                  <choice>
                     <ref name="_teitext"/>
                     <ref name="_teigroup"/>
                     <ref name="_teimodel.global"/>
                  </choice>
               </zeroOrMore>
        
            </group>
      
            <zeroOrMore>
               <ref name="_teimodel.divBottom"/>
            </zeroOrMore>
      
         </group>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.declaring.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teifloatingText">
      <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. [4.3.2. Floating Texts]</a:documentation>
         <group>
      
            <zeroOrMore>
               <ref name="_teimodel.global"/>
            </zeroOrMore>
      
            <optional>
               <group>
                  <ref name="_teifront"/>
        
                  <zeroOrMore>
                     <ref name="_teimodel.global"/>
                  </zeroOrMore>
        
               </group>
            </optional>
            <choice>
               <ref name="_teibody"/>
               <ref name="_teigroup"/>
            </choice>
      
            <zeroOrMore>
               <ref name="_teimodel.global"/>
            </zeroOrMore>
      
            <optional>
               <group>
                  <ref name="_teiback"/>
        
                  <zeroOrMore>
                     <ref name="_teimodel.global"/>
                  </zeroOrMore>
        
               </group>
            </optional>
         </group>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.declaring.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teidiv">
      <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. Divisions of the Body]</a:documentation>
         <group>
      
            <zeroOrMore>
               <choice>
                  <ref name="_teimodel.divTop"/>
          
                  <ref name="_teimodel.global"/>
               </choice>
            </zeroOrMore>
      
            <optional>
               <group>
                  <choice>
          
                     <oneOrMore>
                        <group>
                           <choice>
                              <ref name="_teimodel.divLike"/>
                              <ref name="_teimodel.divGenLike"/>
                           </choice>
              
                           <zeroOrMore>
                              <ref name="_teimodel.global"/>
                           </zeroOrMore>
              
                        </group>
                     </oneOrMore>
          
                     <group>
                        <oneOrMore>
                           <group>
              
                              <ref name="_teimodel.common"/>
              
              
                              <zeroOrMore>
                                 <ref name="_teimodel.global"/>
                              </zeroOrMore>
              
                           </group>
                        </oneOrMore>
                        <zeroOrMore>
                           <group>
                              <choice>
                                 <ref name="_teimodel.divLike"/>
                                 <ref name="_teimodel.divGenLike"/>
                              </choice>
              
                              <zeroOrMore>
                                 <ref name="_teimodel.global"/>
                              </zeroOrMore>
              
                           </group>
                        </zeroOrMore>
                     </group>
                  </choice>
                  <zeroOrMore>
                     <group>
          
                        <ref name="_teimodel.divBottom"/>
          
          
                        <zeroOrMore>
                           <ref name="_teimodel.global"/>
                        </zeroOrMore>
          
                     </group>
                  </zeroOrMore>
               </group>
            </optional>
         </group>
         <pattern xmlns="http://purl.oclc.org/dsdl/schematron"
                  id="faust-tei-div-abstractModel-structure-l-constraint-report-13">
            <rule context="tei:div">
               <report xmlns:rng="http://relaxng.org/ns/structure/1.0"
                       xmlns:ge="http://www.tei-c.org/ns/geneticEditions"
                       xmlns:svg="http://www.w3.org/2000/svg"
                       xmlns:f="http://www.faustedition.net/ns"
                       test="ancestor::tei:l">
        Abstract model violation: Lines may not contain higher-level structural elements such as div.
      </report>
            </rule>
         </pattern>
         <pattern xmlns="http://purl.oclc.org/dsdl/schematron"
                  id="faust-tei-div-abstractModel-structure-p-constraint-report-14">
            <rule context="tei:div">
               <report xmlns:rng="http://relaxng.org/ns/structure/1.0"
                       xmlns:ge="http://www.tei-c.org/ns/geneticEditions"
                       xmlns:svg="http://www.w3.org/2000/svg"
                       xmlns:f="http://www.faustedition.net/ns"
                       test="ancestor::tei:p or ancestor::tei:ab and not(ancestor::tei:floatingText)">
        Abstract model violation: p and ab may not contain higher-level structural elements such as div.
      </report>
            </rule>
         </pattern>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.divLike.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.declaring.attributes"/>
         <ref name="_teiatt.written.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teidiv1">
      <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. [4.1.2. Numbered Divisions]</a:documentation>
         <group>
      
            <zeroOrMore>
               <choice>
                  <ref name="_teimodel.divTop"/>
                  <ref name="_teimodel.global"/>
               </choice>
            </zeroOrMore>
      
            <optional>
               <group>
                  <choice>
                     <oneOrMore>
                        <group>
                           <choice>
                              <ref name="_teimodel.div2Like"/>
                              <ref name="_teimodel.divGenLike"/>
                           </choice>
            
                           <zeroOrMore>
                              <ref name="_teimodel.global"/>
                           </zeroOrMore>
            
                        </group>
                     </oneOrMore>
                     <group>
                        <oneOrMore>
                           <group>
              
                              <ref name="_teimodel.common"/>
              
              
                              <zeroOrMore>
                                 <ref name="_teimodel.global"/>
                              </zeroOrMore>
              
                           </group>
                        </oneOrMore>
                        <zeroOrMore>
                           <group>
                              <choice>
                                 <ref name="_teimodel.div2Like"/>
                                 <ref name="_teimodel.divGenLike"/>
                              </choice>
              
                              <zeroOrMore>
                                 <ref name="_teimodel.global"/>
                              </zeroOrMore>
              
                           </group>
                        </zeroOrMore>
                     </group>
                  </choice>
                  <zeroOrMore>
                     <group>
          
                        <ref name="_teimodel.divBottom"/>
          
          
                        <zeroOrMore>
                           <ref name="_teimodel.global"/>
                        </zeroOrMore>
          
                     </group>
                  </zeroOrMore>
               </group>
            </optional>
         </group>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.divLike.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.declaring.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teidiv2">
      <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. [4.1.2. Numbered Divisions]</a:documentation>
         <group>
      
            <zeroOrMore>
               <choice>
                  <ref name="_teimodel.divTop"/>
                  <ref name="_teimodel.global"/>
               </choice>
            </zeroOrMore>
      
            <optional>
               <group>
                  <choice>
                     <oneOrMore>
                        <group>
                           <choice>
                              <ref name="_teimodel.div3Like"/>
                              <ref name="_teimodel.divGenLike"/>
                           </choice>
            
                           <zeroOrMore>
                              <ref name="_teimodel.global"/>
                           </zeroOrMore>
            
                        </group>
                     </oneOrMore>
                     <group>
                        <oneOrMore>
                           <group>
              
                              <ref name="_teimodel.common"/>
              
              
                              <zeroOrMore>
                                 <ref name="_teimodel.global"/>
                              </zeroOrMore>
              
                           </group>
                        </oneOrMore>
                        <zeroOrMore>
                           <group>
                              <choice>
                                 <ref name="_teimodel.div3Like"/>
                                 <ref name="_teimodel.divGenLike"/>
                              </choice>
              
                              <zeroOrMore>
                                 <ref name="_teimodel.global"/>
                              </zeroOrMore>
              
                           </group>
                        </zeroOrMore>
                     </group>
                  </choice>
                  <zeroOrMore>
                     <group>
          
                        <ref name="_teimodel.divBottom"/>
          
          
                        <zeroOrMore>
                           <ref name="_teimodel.global"/>
                        </zeroOrMore>
          
                     </group>
                  </zeroOrMore>
               </group>
            </optional>
         </group>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.divLike.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.declaring.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teidiv3">
      <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. [4.1.2. Numbered Divisions]</a:documentation>
         <group>
      
            <zeroOrMore>
               <choice>
                  <ref name="_teimodel.divTop"/>
                  <ref name="_teimodel.global"/>
               </choice>
            </zeroOrMore>
      
            <optional>
               <group>
                  <choice>
                     <oneOrMore>
                        <group>
                           <choice>
                              <ref name="_teimodel.div4Like"/>
                              <ref name="_teimodel.divGenLike"/>
                           </choice>
            
                           <zeroOrMore>
                              <ref name="_teimodel.global"/>
                           </zeroOrMore>
            
                        </group>
                     </oneOrMore>
                     <group>
                        <oneOrMore>
                           <group>
              
                              <ref name="_teimodel.common"/>
              
              
                              <zeroOrMore>
                                 <ref name="_teimodel.global"/>
                              </zeroOrMore>
              
                           </group>
                        </oneOrMore>
                        <zeroOrMore>
                           <group>
                              <choice>
                                 <ref name="_teimodel.div4Like"/>
                                 <ref name="_teimodel.divGenLike"/>
                              </choice>
              
                              <zeroOrMore>
                                 <ref name="_teimodel.global"/>
                              </zeroOrMore>
              
                           </group>
                        </zeroOrMore>
                     </group>
                  </choice>
                  <zeroOrMore>
                     <group>
          
                        <ref name="_teimodel.divBottom"/>
          
          
                        <zeroOrMore>
                           <ref name="_teimodel.global"/>
                        </zeroOrMore>
          
                     </group>
                  </zeroOrMore>
               </group>
            </optional>
         </group>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.divLike.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.declaring.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teidiv4">
      <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. [4.1.2. Numbered Divisions]</a:documentation>
         <group>
      
            <zeroOrMore>
               <choice>
                  <ref name="_teimodel.divTop"/>
                  <ref name="_teimodel.global"/>
               </choice>
            </zeroOrMore>
      
            <optional>
               <group>
                  <choice>
                     <oneOrMore>
                        <group>
                           <choice>
                              <ref name="_teimodel.div5Like"/>
                              <ref name="_teimodel.divGenLike"/>
                           </choice>
            
                           <zeroOrMore>
                              <ref name="_teimodel.global"/>
                           </zeroOrMore>
            
                        </group>
                     </oneOrMore>
                     <group>
                        <oneOrMore>
                           <group>
              
                              <ref name="_teimodel.common"/>
              
              
                              <zeroOrMore>
                                 <ref name="_teimodel.global"/>
                              </zeroOrMore>
              
                           </group>
                        </oneOrMore>
                        <zeroOrMore>
                           <group>
                              <choice>
                                 <ref name="_teimodel.div5Like"/>
                                 <ref name="_teimodel.divGenLike"/>
                              </choice>
              
                              <zeroOrMore>
                                 <ref name="_teimodel.global"/>
                              </zeroOrMore>
              
                           </group>
                        </zeroOrMore>
                     </group>
                  </choice>
                  <zeroOrMore>
                     <group>
          
                        <ref name="_teimodel.divBottom"/>
          
          
                        <zeroOrMore>
                           <ref name="_teimodel.global"/>
                        </zeroOrMore>
          
                     </group>
                  </zeroOrMore>
               </group>
            </optional>
         </group>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.divLike.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.declaring.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teidiv5">
      <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. [4.1.2. Numbered Divisions]</a:documentation>
         <group>
      
            <zeroOrMore>
               <choice>
                  <ref name="_teimodel.divTop"/>
                  <ref name="_teimodel.global"/>
               </choice>
            </zeroOrMore>
      
            <optional>
               <group>
                  <choice>
                     <oneOrMore>
                        <group>
                           <choice>
                              <ref name="_teimodel.div6Like"/>
                              <ref name="_teimodel.divGenLike"/>
                           </choice>
            
                           <zeroOrMore>
                              <ref name="_teimodel.global"/>
                           </zeroOrMore>
            
                        </group>
                     </oneOrMore>
                     <group>
                        <oneOrMore>
                           <group>
              
                              <ref name="_teimodel.common"/>
              
              
                              <zeroOrMore>
                                 <ref name="_teimodel.global"/>
                              </zeroOrMore>
              
                           </group>
                        </oneOrMore>
                        <zeroOrMore>
                           <group>
                              <choice>
                                 <ref name="_teimodel.div6Like"/>
                                 <ref name="_teimodel.divGenLike"/>
                              </choice>
              
                              <zeroOrMore>
                                 <ref name="_teimodel.global"/>
                              </zeroOrMore>
              
                           </group>
                        </zeroOrMore>
                     </group>
                  </choice>
                  <zeroOrMore>
                     <group>
          
                        <ref name="_teimodel.divBottom"/>
          
          
                        <zeroOrMore>
                           <ref name="_teimodel.global"/>
                        </zeroOrMore>
          
                     </group>
                  </zeroOrMore>
               </group>
            </optional>
         </group>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.divLike.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.declaring.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teidiv6">
      <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. [4.1.2. Numbered Divisions]</a:documentation>
         <group>
      
            <zeroOrMore>
               <choice>
                  <ref name="_teimodel.divTop"/>
                  <ref name="_teimodel.global"/>
               </choice>
            </zeroOrMore>
      
            <optional>
               <group>
                  <choice>
                     <oneOrMore>
                        <group>
                           <choice>
                              <ref name="_teimodel.div7Like"/>
                              <ref name="_teimodel.divGenLike"/>
                           </choice>
            
                           <zeroOrMore>
                              <ref name="_teimodel.global"/>
                           </zeroOrMore>
            
                        </group>
                     </oneOrMore>
                     <group>
                        <oneOrMore>
                           <group>
              
                              <ref name="_teimodel.common"/>
              
              
                              <zeroOrMore>
                                 <ref name="_teimodel.global"/>
                              </zeroOrMore>
              
                           </group>
                        </oneOrMore>
                        <zeroOrMore>
                           <group>
                              <choice>
                                 <ref name="_teimodel.div7Like"/>
                                 <ref name="_teimodel.divGenLike"/>
                              </choice>
              
                              <zeroOrMore>
                                 <ref name="_teimodel.global"/>
                              </zeroOrMore>
              
                           </group>
                        </zeroOrMore>
                     </group>
                  </choice>
                  <zeroOrMore>
                     <group>
          
                        <ref name="_teimodel.divBottom"/>
          
          
                        <zeroOrMore>
                           <ref name="_teimodel.global"/>
                        </zeroOrMore>
          
                     </group>
                  </zeroOrMore>
               </group>
            </optional>
         </group>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.divLike.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.declaring.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teidiv7">
      <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. [4.1.2. Numbered Divisions]</a:documentation>
         <group>
      
            <zeroOrMore>
               <choice>
                  <ref name="_teimodel.divTop"/>
                  <ref name="_teimodel.global"/>
               </choice>
            </zeroOrMore>
      
            <optional>
               <group>
                  <oneOrMore>
                     <group>
          
                        <ref name="_teimodel.common"/>
          
          
                        <zeroOrMore>
                           <ref name="_teimodel.global"/>
                        </zeroOrMore>
          
                     </group>
                  </oneOrMore>
                  <zeroOrMore>
                     <group>
          
                        <ref name="_teimodel.divBottom"/>
          
          
                        <zeroOrMore>
                           <ref name="_teimodel.global"/>
                        </zeroOrMore>
          
                     </group>
                  </zeroOrMore>
               </group>
            </optional>
         </group>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.divLike.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.declaring.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teitrailer">
      <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. [4.2.4. Content of Textual Divisions 4.2. Elements Common to All Divisions]</a:documentation>
         <zeroOrMore>
            <choice>
	              <text/>
	              <ref name="_teilg"/>
	              <ref name="_teimodel.gLike"/>
	              <ref name="_teimodel.phrase"/>
	              <ref name="_teimodel.inter"/>
	              <ref name="_teimodel.lLike"/>
	              <ref name="_teimodel.global"/>
            </choice>
         </zeroOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teibyline">
      <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. [4.2.2. Openers and Closers 4.5. Front Matter]</a:documentation>
         <zeroOrMore>
            <choice>
               <text/>
               <ref name="_teimodel.gLike"/>
               <ref name="_teimodel.phrase"/>
               <ref name="_teidocAuthor"/>
               <ref name="_teimodel.global"/>
            </choice>
         </zeroOrMore>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teidateline">
      <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. [4.2.2. Openers and Closers]</a:documentation>
         <zeroOrMore>
            <choice>
               <text/>
               <ref name="_teimodel.gLike"/>
               <ref name="_teimodel.phrase"/>
               <ref name="_teimodel.global"/>
               <ref name="_teidocDate"/>
            </choice>
         </zeroOrMore>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiargument">
      <element name="argument">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a formal list or prose description of the topics addressed by a subdivision of a text. [4.2. Elements Common to All Divisions 4.6. Title Pages]</a:documentation>
         <group>
      
            <zeroOrMore>
               <choice>
                  <ref name="_teimodel.global"/>
                  <ref name="_teimodel.headLike"/>
               </choice>
            </zeroOrMore>
      
            <oneOrMore>
               <group>
        
                  <ref name="_teimodel.common"/>
        
        
                  <zeroOrMore>
                     <ref name="_teimodel.global"/>
                  </zeroOrMore>
        
               </group>
            </oneOrMore>
         </group>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiepigraph">
      <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 or end of a section or on a title page. [4.2.3. Arguments, Epigraphs, and Postscripts 4.2. Elements Common to All Divisions 4.6. Title Pages]</a:documentation>
         <zeroOrMore>
            <choice>
               <ref name="_teimodel.common"/>
               <ref name="_teimodel.global"/>
            </choice>
         </zeroOrMore>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiopener">
      <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. [4.2. Elements Common to All Divisions]</a:documentation>
         <zeroOrMore>
            <choice>
               <text/>
               <ref name="_teimodel.gLike"/>
               <ref name="_teimodel.phrase"/>
        
               <ref name="_teiargument"/>
               <ref name="_teibyline"/>
               <ref name="_teidateline"/>
               <ref name="_teiepigraph"/>
               <ref name="_teisalute"/>
               <ref name="_teisigned"/>
               <ref name="_teimodel.global"/>
            </choice>
         </zeroOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.written.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teicloser">
      <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. [4.2.2. Openers and Closers 4.2. Elements Common to All Divisions]</a:documentation>
         <zeroOrMore>
            <choice>
               <text/>
               <ref name="_teimodel.gLike"/>
               <ref name="_teisigned"/>
               <ref name="_teidateline"/>
               <ref name="_teisalute"/>
               <ref name="_teimodel.phrase"/>
               <ref name="_teimodel.global"/>
            </choice>
         </zeroOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.written.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teisalute">
      <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. [4.2.2. Openers and Closers]</a:documentation>
         <ref name="_teimacro.paraContent"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.written.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teisigned">
      <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. [4.2.2. Openers and Closers]</a:documentation>
         <ref name="_teimacro.paraContent"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.written.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teipostscript">
      <element name="postscript">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a postscript, e.g. to a letter. [4.2. Elements Common to All Divisions]</a:documentation>
         <group>
      
            <zeroOrMore>
               <choice>
                  <ref name="_teimodel.global"/>
                  <ref name="_teimodel.divTopPart"/>
               </choice>
            </zeroOrMore>
      
      
            <ref name="_teimodel.common"/>
      
      
            <zeroOrMore>
               <choice>
                  <ref name="_teimodel.global"/>
                  <ref name="_teimodel.common"/>
               </choice>
            </zeroOrMore>
      
            <zeroOrMore>
               <group>
        
                  <ref name="_teimodel.divBottomPart"/>
        
        
                  <zeroOrMore>
                     <ref name="_teimodel.global"/>
                  </zeroOrMore>
        
               </group>
            </zeroOrMore>
         </group>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.written.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teititlePage">
      <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. [4.6. Title Pages]</a:documentation>
         <group>
      
            <zeroOrMore>
               <ref name="_teimodel.global"/>
            </zeroOrMore>
      
      
            <ref name="_teimodel.titlepagePart"/>
      
      
            <zeroOrMore>
               <choice>
                  <ref name="_teimodel.titlepagePart"/>
                  <ref name="_teimodel.global"/>
               </choice>
            </zeroOrMore>
      
         </group>
         <ref name="_teiatt.global.attributes"/>
         <optional>
            <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="token">
                  <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
               </data>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teidocTitle">
      <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. [4.6. Title Pages]</a:documentation>
         <group>
      
            <zeroOrMore>
               <ref name="_teimodel.global"/>
            </zeroOrMore>
      
            <oneOrMore>
               <group>
                  <ref name="_teititlePart"/>
        
                  <zeroOrMore>
                     <ref name="_teimodel.global"/>
                  </zeroOrMore>
        
               </group>
            </oneOrMore>
         </group>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.canonical.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teititlePart">
      <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. [4.6. Title Pages]</a:documentation>
         <ref name="_teimacro.paraContent"/>
         <ref name="_teiatt.global.attributes"/>
         <optional>
            <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                       name="type"
                       a:defaultValue="main">
               <a:documentation>specifies the role of this subdivision of the title.
Suggested values include: 1] main; 2] sub (subordinate) ; 3] alt (alternate) ; 4] short; 5] desc (descriptive) </a:documentation>
               <choice>
                  <value>main</value>
                  <a:documentation>main title of the work</a:documentation>
                  <value>sub</value>
                  <a:documentation>(subordinate) subtitle of the work</a:documentation>
                  <value>alt</value>
                  <a:documentation>(alternate) alternative title of the work</a:documentation>
                  <value>short</value>
                  <a:documentation>abbreviated form of title</a:documentation>
                  <value>desc</value>
                  <a:documentation>(descriptive) descriptive paraphrase of the work</a:documentation>
                  <data type="token">
                     <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
                  </data>
               </choice>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teidocAuthor">
      <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). [4.6. Title Pages]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.canonical.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiimprimatur">
      <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. [4.6. Title Pages]</a:documentation>
         <ref name="_teimacro.paraContent"/>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teidocEdition">
      <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. [4.6. Title Pages]</a:documentation>
         <ref name="_teimacro.paraContent"/>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teidocImprint">
      <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. [4.6. Title Pages]</a:documentation>
         <zeroOrMore>
            <choice>
               <text/>
               <ref name="_teimodel.gLike"/>
               <ref name="_teimodel.phrase"/>
               <ref name="_teipubPlace"/>
               <ref name="_teidocDate"/>
               <ref name="_teipublisher"/>
               <ref name="_teimodel.global"/>
            </choice>
         </zeroOrMore>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teidocDate">
      <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 on a title page or in a dateline. [4.6. Title Pages]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <optional>
            <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>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teifront">
      <element name="front">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(front matter) contains any prefatory matter (headers, abstracts, title page, prefaces, dedications, etc.) found at the start of a document, before the main body. [4.6. Title Pages 4. Default Text Structure]</a:documentation>
         <group>
      
            <zeroOrMore>
               <choice>
                  <ref name="_teimodel.frontPart"/>
                  <ref name="_teimodel.pLike"/>
                  <ref name="_teimodel.pLike.front"/>
                  <ref name="_teimodel.global"/>
               </choice>
            </zeroOrMore>
            <optional>
               <group>
                  <choice>
          
                     <group>
                        <ref name="_teimodel.div1Like"/>
                        <zeroOrMore>
                           <choice>
                              <ref name="_teimodel.div1Like"/>
                              <ref name="_teimodel.frontPart"/>
                              <ref name="_teimodel.global"/>
                           </choice>
                        </zeroOrMore>
                     </group>
          
                     <group>
                        <ref name="_teimodel.divLike"/>
                        <zeroOrMore>
                           <choice>
                              <ref name="_teimodel.divLike"/>
                              <ref name="_teimodel.frontPart"/>
                              <ref name="_teimodel.global"/>
                           </choice>
                        </zeroOrMore>
                     </group>
                  </choice>
        
                  <optional>
                     <group>
                        <ref name="_teimodel.divBottom"/>
                        <zeroOrMore>
                           <choice>
                              <ref name="_teimodel.divBottom"/>
                              <ref name="_teimodel.global"/>
                           </choice>
                        </zeroOrMore>
                     </group>
                  </optional>
               </group>
            </optional>
         </group>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.declaring.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiback">
      <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. Back Matter 4. Default Text Structure]</a:documentation>
         <group>

            <zeroOrMore>
               <choice>
                  <ref name="_teimodel.frontPart"/>
                  <ref name="_teimodel.pLike.front"/>
                  <ref name="_teimodel.pLike"/>
                  <ref name="_teimodel.listLike"/>
                  <ref name="_teimodel.global"/>
               </choice>
            </zeroOrMore>



            <optional>
               <choice>
                  <group>

                     <ref name="_teimodel.div1Like"/>


                     <zeroOrMore>
                        <choice>
                           <ref name="_teimodel.frontPart"/>
                           <ref name="_teimodel.div1Like"/>
                           <ref name="_teimodel.global"/>
                        </choice>
                     </zeroOrMore>

                  </group>
                  <group>

                     <ref name="_teimodel.divLike"/>


                     <zeroOrMore>
                        <choice>
                           <ref name="_teimodel.frontPart"/>
                           <ref name="_teimodel.divLike"/>
                           <ref name="_teimodel.global"/>
                        </choice>
                     </zeroOrMore>

                  </group>
               </choice>
            </optional>



            <optional>
               <group>

                  <ref name="_teimodel.divBottomPart"/>


                  <zeroOrMore>
                     <choice>
                        <ref name="_teimodel.divBottomPart"/>
                        <ref name="_teimodel.global"/>
                     </choice>
                  </zeroOrMore>

               </group>
            </optional>

         </group>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.declaring.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiprecision">
      <element name="precision">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the numerical accuracy or precision associated with some aspect of the text markup. [21.2. Indications of Precision]</a:documentation>
         <zeroOrMore>
            <choice>
               <ref name="_teimodel.descLike"/>
               <ref name="_teimodel.certLike"/>
            </choice>
         </zeroOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.scoping.attributes"/>
         <ref name="_teiatt.ranging.attributes"/>
         <ref name="_teiatt.datable.attributes"/>
         <optional>
            <attribute name="precision">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">characterizes the precision of the element or attribute pointed to by the precision element.</a:documentation>
               <choice>
                  <value>high</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
                  <value>medium</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
                  <value>low</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
                  <value>unknown</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
               </choice>
            </attribute>
         </optional>
         <optional>
            <attribute name="stdDeviation">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">supplies a standard deviation associated with the value in question</a:documentation>
               <choice>
                  <data type="double"/>
                  <data type="token">
                     <param name="pattern">(\-?[\d]+/\-?[\d]+)</param>
                  </data>
                  <data type="decimal"/>
               </choice>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teicertainty">
      <element name="certainty">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the degree of certainty associated with some aspect of the text markup. [21.1.2. Structured Indications of Uncertainty]</a:documentation>
         <zeroOrMore>
            <choice>
               <ref name="_teimodel.descLike"/>
               <ref name="_teimodel.certLike"/>
            </choice>
         </zeroOrMore>
         <ref name="_teiatt.global.attribute.rend"/>
         <ref name="_teiatt.global.attribute.nx"/>
         <ref name="_teiatt.global.attribute.xmlid"/>
         <ref name="_teiatt.global.attribute.n"/>
         <ref name="_teiatt.global.attribute.xmllang"/>
         <ref name="_teiatt.global.attribute.xmlbase"/>
         <ref name="_teiatt.global.attribute.xmlspace"/>
         <ref name="_teiatt.global.linking.attribute.corresp"/>
         <ref name="_teiatt.global.linking.attribute.synch"/>
         <ref name="_teiatt.global.linking.attribute.sameAs"/>
         <ref name="_teiatt.global.linking.attribute.copyOf"/>
         <ref name="_teiatt.global.linking.attribute.next"/>
         <ref name="_teiatt.global.linking.attribute.prev"/>
         <ref name="_teiatt.global.linking.attribute.exclude"/>
         <ref name="_teiatt.global.linking.attribute.select"/>
         <ref name="_teiatt.global.change.attribute.change"/>
         <ref name="_teiatt.layoutAlignment.attribute.left"/>
         <ref name="_teiatt.layoutAlignment.attribute.left-right"/>
         <ref name="_teiatt.layoutAlignment.attribute.right"/>
         <ref name="_teiatt.layoutAlignment.attribute.right-left"/>
         <ref name="_teiatt.layoutAlignment.attribute.top"/>
         <ref name="_teiatt.layoutAlignment.attribute.top-bottom"/>
         <ref name="_teiatt.layoutAlignment.attribute.bottom"/>
         <ref name="_teiatt.layoutAlignment.attribute.bottom-top"/>
         <ref name="_teiatt.layoutAlignment.attribute.pos"/>
         <ref name="_teiatt.global.responsibility.attribute.resp"/>
         <ref name="_teiatt.scoping.attributes"/>
         <optional>
            <attribute name="cert">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(certainty) signifies the degree of certainty associated with the object pointed to by the certainty element.</a:documentation>
               <choice>
                  <value>high</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
                  <value>medium</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
                  <value>low</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
                  <value>unknown</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
               </choice>
            </attribute>
         </optional>
         <attribute name="locus">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates more exactly the aspect concerning which certainty is being expressed: specifically, whether the markup is correctly located, whether the correct element or attribute name has been used, or whether the content of the element or attribute is correct, etc.</a:documentation>
            <choice>
               <value>name</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">uncertainty concerns whether the name of the element or attribute used is correctly applied.</a:documentation>
               <value>start</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">uncertainty concerns whether the start of the element is correctly identified.</a:documentation>
               <value>end</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">uncertainty concerns whether the end of the element is correctly identified.</a:documentation>
               <value>location</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">uncertainty concerns both the start and the end of the element.</a:documentation>
               <value>value</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">uncertainty concerns the content (for an element) or the value (for an attribute)</a:documentation>
            </choice>
         </attribute>
         <optional>
            <attribute name="assertedValue">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">provides an alternative value for the aspect of the markup in question—an alternative generic identifier, transcription, or attribute value, or the identifier of an anchor element (to indicate an alternative starting or ending location). If an assertedValue is given, the confidence level specified by degree applies to the alternative markup specified by assertedValue; if none is given, it applies to the markup in the text.</a:documentation>
               <data type="token">
                  <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
               </data>
            </attribute>
         </optional>
         <optional>
            <attribute name="given">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates one or more element(s) characterizing the conditions which are assumed in the assignment of a degree of confidence.</a:documentation>
               <list>
                  <oneOrMore>
                     <data type="anyURI"/>
                  </oneOrMore>
               </list>
            </attribute>
         </optional>
         <optional>
            <attribute name="degree">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the degree of confidence assigned to the aspect of the markup named by the locus attribute.</a:documentation>
               <data type="double"/>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teirespons">
      <element name="respons">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(responsibility) identifies the individual(s) responsible for some aspect of the content or markup of particular element(s). [21.3. Attribution of Responsibility]</a:documentation>
         <zeroOrMore>
            <choice>
               <ref name="_teimodel.descLike"/>
               <ref name="_teimodel.certLike"/>
            </choice>
         </zeroOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.scoping.attributes"/>
         <attribute name="locus">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the specific aspect of the encoding (markup or content) for which responsibility is being assigned.</a:documentation>
            <list>
               <oneOrMore>
                  <choice>
                     <value>name</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">responsibility is being assigned concerning the name of the element or attribute used.</a:documentation>
                     <value>start</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">responsibility is being assigned concerning the start of the element concerned.</a:documentation>
                     <value>end</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">responsibility is being assigned concerning the end of the element concerned.</a:documentation>
                     <value>location</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">responsibility is being assigned concerning the location of the element concerned.</a:documentation>
                     <value>value</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">responsibility is being assigned concerning the content (for an element) or the value (for an attribute)</a:documentation>
                  </choice>
               </oneOrMore>
            </list>
         </attribute>
         <empty/>
      </element>
   </define>
   <define name="_teiatt.linguistic.attributes">
      <ref name="_teiatt.linguistic.attribute.lemma"/>
      <ref name="_teiatt.linguistic.attribute.lemmaRef"/>
      <ref name="_teiatt.linguistic.attribute.pos"/>
      <ref name="_teiatt.linguistic.attribute.msd"/>
      <ref name="_teiatt.linguistic.attribute.join"/>
   </define>
   <define name="_teiatt.linguistic.attribute.lemma">
      <optional>
         <attribute name="lemma">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">provides a lemma (base form) for the word, typically uninflected and serving both as an identifier (e.g. in dictionary contexts, as a headword), and as a basis for potential inflections.</a:documentation>
            <data type="string"/>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.linguistic.attribute.lemmaRef">
      <optional>
         <attribute name="lemmaRef">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">provides a pointer to a definition of the lemma for the word, for example in an online lexicon.</a:documentation>
            <data type="anyURI"/>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.linguistic.attribute.pos">
      <optional>
         <attribute 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 token (i.e. information on whether it is a noun, adjective, or verb), usually according to some official reference vocabulary (e.g. for German: STTS, for English: CLAWS, for Polish: NKJP, etc.).</a:documentation>
            <data type="string"/>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.linguistic.attribute.msd">
      <optional>
         <attribute name="msd">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(morphosyntactic description) supplies morphosyntactic information for a token, usually according to some official reference vocabulary (e.g. for German: STTS-large tagset; for a feature description system designed as (pragmatically) universal, see Universal Features).</a:documentation>
            <data type="string"/>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.linguistic.attribute.join">
      <optional>
         <attribute name="join">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">when present, it provides information on whether the token in question is adjacent to another, and if so, on which side. The definition of this attribute is adapted from ISO MAF (Morpho-syntactic Annotation Framework), ISO 24611:2012.</a:documentation>
            <choice>
               <value>no</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(the token is not adjacent to another) </a:documentation>
               <value>left</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(there is no whitespace on the left side of the token) </a:documentation>
               <value>right</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(there is no whitespace on the right side of the token) </a:documentation>
               <value>both</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(there is no whitespace on either side of the token) </a:documentation>
               <value>overlap</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(the token overlaps with another; other devices (specifying the extent and the area of overlap) are needed to more precisely locate this token in the character stream) </a:documentation>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="_teis">
      <element name="s">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(s-unit) contains a sentence-like division of a text. [17.1. Linguistic Segment Categories 8.4.1. Segmentation]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <pattern xmlns="http://purl.oclc.org/dsdl/schematron"
                  id="faust-tei-s-noNestedS-constraint-report-15">
            <rule context="tei:s">
               <report xmlns:rng="http://relaxng.org/ns/structure/1.0"
                       xmlns:ge="http://www.tei-c.org/ns/geneticEditions"
                       xmlns:svg="http://www.w3.org/2000/svg"
                       xmlns:f="http://www.faustedition.net/ns"
                       test="tei:s">You may not nest one s element within
      another: use seg instead</report>
            </rule>
         </pattern>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.segLike.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.notated.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teicl">
      <element name="cl">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(clause) represents a grammatical clause. [17.1. Linguistic Segment Categories]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.segLike.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.notated.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiphr">
      <element name="phr">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(phrase) represents a grammatical phrase. [17.1. Linguistic Segment Categories]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.segLike.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.notated.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiw">
      <element name="w">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(word) represents a grammatical (not necessarily orthographic) word. [17.1. Linguistic Segment Categories 17.4.2. Lightweight Linguistic Annotation]</a:documentation>
         <zeroOrMore>
            <choice>
               <text/>
               <ref name="_teimodel.gLike"/>
               <ref name="_teiseg"/>
               <ref name="_teiw"/>
               <ref name="_teim"/>
               <ref name="_teic"/>
               <ref name="_teipc"/>
               <ref name="_teimodel.global"/>
               <ref name="_teimodel.lPart"/>
               <ref name="_teimodel.hiLike"/>
               <ref name="_teimodel.pPart.edit"/>
            </choice>
         </zeroOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.segLike.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.linguistic.attributes"/>
         <ref name="_teiatt.notated.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teim">
      <element name="m">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(morpheme) represents a grammatical morpheme. [17.1. Linguistic Segment Categories]</a:documentation>
         <zeroOrMore>
            <choice>
               <text/>
               <ref name="_teimodel.gLike"/>
               <ref name="_teimodel.hiLike"/>
               <ref name="_teiseg"/>
               <ref name="_teim"/>
               <ref name="_teic"/>
               <ref name="_teimodel.global"/>
            </choice>
         </zeroOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.segLike.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.notated.attributes"/>
         <optional>
            <attribute name="baseForm">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">supplies the morpheme's base form.</a:documentation>
               <data type="token">
                  <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
               </data>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teic">
      <element name="c">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(character) represents a character. [17.1. Linguistic Segment Categories]</a:documentation>
         <ref name="_teimacro.xtext"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.segLike.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.notated.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teipc">
      <element name="pc">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(punctuation character) contains a character or string of characters regarded as constituting a single punctuation mark. [17.1.2. Below the Word Level 17.4.2. Lightweight Linguistic Annotation]</a:documentation>
         <zeroOrMore>
            <choice>
               <text/>
               <ref name="_teimodel.gLike"/>
               <ref name="_teic"/>
               <ref name="_teimodel.pPart.edit"/>
            </choice>
         </zeroOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.segLike.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.linguistic.attributes"/>
         <optional>
            <attribute name="force">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the extent to which this punctuation mark conventionally separates words or phrases</a:documentation>
               <choice>
                  <value>strong</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">the punctuation mark is a word separator</a:documentation>
                  <value>weak</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">the punctuation mark is not a word separator</a:documentation>
                  <value>inter</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">the punctuation mark may or may not be a word separator</a:documentation>
               </choice>
            </attribute>
         </optional>
         <optional>
            <attribute name="unit">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">provides a name for the kind of unit delimited by this punctuation mark.</a:documentation>
               <data type="token">
                  <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
               </data>
            </attribute>
         </optional>
         <optional>
            <attribute name="pre">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates whether this punctuation mark precedes or follows the unit it delimits.</a:documentation>
               <data type="boolean"/>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teispan">
      <element name="span">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">associates an interpretative annotation directly with a span of text. [17.3. Spans and Interpretations]</a:documentation>
         <ref name="_teimacro.phraseSeq.limited"/>
         <pattern xmlns="http://purl.oclc.org/dsdl/schematron"
                  id="faust-tei-span-targetfrom-constraint-report-16">
            <rule context="tei:span">
               <report xmlns:rng="http://relaxng.org/ns/structure/1.0"
                       xmlns:ge="http://www.tei-c.org/ns/geneticEditions"
                       xmlns:svg="http://www.w3.org/2000/svg"
                       xmlns:f="http://www.faustedition.net/ns"
                       test="@from and @target">
Only one of the attributes @target and @from may be supplied on <name/>
               </report>
            </rule>
         </pattern>
         <pattern xmlns="http://purl.oclc.org/dsdl/schematron"
                  id="faust-tei-span-targetto-constraint-report-17">
            <rule context="tei:span">
               <report xmlns:rng="http://relaxng.org/ns/structure/1.0"
                       xmlns:ge="http://www.tei-c.org/ns/geneticEditions"
                       xmlns:svg="http://www.w3.org/2000/svg"
                       xmlns:f="http://www.faustedition.net/ns"
                       test="@to and @target">
Only one of the attributes @target and @to may be supplied on <name/>
               </report>
            </rule>
         </pattern>
         <pattern xmlns="http://purl.oclc.org/dsdl/schematron"
                  id="faust-tei-span-tonotfrom-constraint-report-18">
            <rule context="tei:span">
               <report xmlns:rng="http://relaxng.org/ns/structure/1.0"
                       xmlns:ge="http://www.tei-c.org/ns/geneticEditions"
                       xmlns:svg="http://www.w3.org/2000/svg"
                       xmlns:f="http://www.faustedition.net/ns"
                       test="@to and not(@from)">
If @to is supplied on <name/>, @from must be supplied as well</report>
            </rule>
         </pattern>
         <pattern xmlns="http://purl.oclc.org/dsdl/schematron"
                  id="faust-tei-span-tofrom-constraint-report-19">
            <rule context="tei:span">
               <report xmlns:rng="http://relaxng.org/ns/structure/1.0"
                       xmlns:ge="http://www.tei-c.org/ns/geneticEditions"
                       xmlns:svg="http://www.w3.org/2000/svg"
                       xmlns:f="http://www.faustedition.net/ns"
                       test="contains(normalize-space(@to),' ') or contains(normalize-space(@from),' ')">
The attributes @to and @from on <name/> may each contain only a single value</report>
            </rule>
         </pattern>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.interpLike.attributes"/>
         <ref name="_teiatt.pointing.attributes"/>
         <optional>
            <attribute name="from">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">gives the identifier of the node which is the starting point of the span of text being annotated; if not accompanied by a to attribute, gives the identifier of the node of the entire span of text being annotated.</a:documentation>
               <data type="anyURI"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="to">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">gives the identifier of the node which is the end-point of the span of text being annotated.</a:documentation>
               <data type="anyURI"/>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teispanGrp">
      <element name="spanGrp">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(span group) collects together span tags. [17.3. Spans and Interpretations]</a:documentation>
         <zeroOrMore>
            <ref name="_teispan"/>
         </zeroOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.interpLike.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiinterp">
      <element name="interp">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(interpretation) summarizes a specific interpretative annotation which can be linked to a span of text. [17.3. Spans and Interpretations]</a:documentation>
         <zeroOrMore>
            <choice>
               <text/>
               <ref name="_teimodel.gLike"/>
               <ref name="_teimodel.descLike"/>
               <ref name="_teimodel.certLike"/>
            </choice>
         </zeroOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.interpLike.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiinterpGrp">
      <element name="interpGrp">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(interpretation group) collects together a set of related interpretations which share responsibility or type. [17.3. Spans and Interpretations]</a:documentation>
         <group>
      
            <zeroOrMore>
               <ref name="_teimodel.descLike"/>
            </zeroOrMore>
      
      
            <oneOrMore>
               <ref name="_teiinterp"/>
            </oneOrMore>
      
         </group>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.interpLike.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiset">
      <element name="set">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(setting) contains a description of the setting, time, locale, appearance, etc., of the action of a play, typically found in the front matter of a printed performance text (not a stage direction). [7.1. Front and Back Matter
 ]</a:documentation>
         <group>
      
            <zeroOrMore>
               <choice>
                  <ref name="_teimodel.headLike"/>
                  <ref name="_teimodel.global"/>
               </choice>
            </zeroOrMore>
      
            <zeroOrMore>
               <group>
          
                  <ref name="_teimodel.common"/>
          
                  <zeroOrMore>
                     <ref name="_teimodel.global"/>
                  </zeroOrMore>
          
               </group>
            </zeroOrMore>
      
         </group>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiprologue">
      <element name="prologue">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains the prologue to a drama, typically spoken by an actor out of character, possibly in association with a particular performance or venue. [7.1.2. Prologues and Epilogues 7.1. Front and Back Matter
 ]</a:documentation>
         <group>
      
            <zeroOrMore>
               <choice>
                  <ref name="_teimodel.divTop"/>
                  <ref name="_teimodel.global"/>
               </choice>
            </zeroOrMore>
      
            <oneOrMore>
               <group>
        
                  <ref name="_teimodel.common"/>
        
        
                  <zeroOrMore>
                     <ref name="_teimodel.global"/>
                  </zeroOrMore>
        
               </group>
            </oneOrMore>
            <zeroOrMore>
               <group>
        
                  <ref name="_teimodel.divBottom"/>
        
        
                  <zeroOrMore>
                     <ref name="_teimodel.global"/>
                  </zeroOrMore>
        
               </group>
            </zeroOrMore>
         </group>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiepilogue">
      <element name="epilogue">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains the epilogue to a drama, typically spoken by an actor out of character, possibly in association with a particular performance or venue. [7.1.2. Prologues and Epilogues 7.1. Front and Back Matter
 ]</a:documentation>
         <group>
      
            <zeroOrMore>
               <choice>
                  <ref name="_teimodel.divTop"/>
                  <ref name="_teimodel.global"/>
               </choice>
            </zeroOrMore>
      
            <oneOrMore>
               <group>
        
                  <ref name="_teimodel.common"/>
        
        
                  <zeroOrMore>
                     <ref name="_teimodel.global"/>
                  </zeroOrMore>
        
               </group>
            </oneOrMore>
            <zeroOrMore>
               <group>
        
                  <ref name="_teimodel.divBottom"/>
        
        
                  <zeroOrMore>
                     <ref name="_teimodel.global"/>
                  </zeroOrMore>
        
               </group>
            </zeroOrMore>
         </group>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiperformance">
      <element name="performance">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a section of front or back matter describing how a dramatic piece is to be performed in general or how it was performed on some specific occasion. [7.1.3. Records of Performances 7.1. Front and Back Matter
 ]</a:documentation>
         <group>
      
            <zeroOrMore>
               <choice>
                  <ref name="_teimodel.divTop"/>
                  <ref name="_teimodel.global"/>
               </choice>
            </zeroOrMore>
      
            <oneOrMore>
               <group>
        
                  <ref name="_teimodel.common"/>
        
        
                  <zeroOrMore>
                     <ref name="_teimodel.global"/>
                  </zeroOrMore>
        
               </group>
            </oneOrMore>
            <zeroOrMore>
               <group>
        
                  <ref name="_teimodel.divBottom"/>
        
        
                  <zeroOrMore>
                     <ref name="_teimodel.global"/>
                  </zeroOrMore>
        
               </group>
            </zeroOrMore>
         </group>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teicastList">
      <element name="castList">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(cast list) contains a single cast list or dramatis personae. [7.1.4. Cast Lists 7.1. Front and Back Matter
 ]</a:documentation>
         <group>
      
            <zeroOrMore>
               <choice>
                  <ref name="_teimodel.divTop"/>
                  <ref name="_teimodel.global"/>
               </choice>
            </zeroOrMore>
      
            <zeroOrMore>
               <group>
        
                  <ref name="_teimodel.common"/>
        
        
                  <zeroOrMore>
                     <ref name="_teimodel.global"/>
                  </zeroOrMore>
        
               </group>
            </zeroOrMore>
            <oneOrMore>
               <group>
                  <choice>
                     <ref name="_teicastItem"/>
                     <ref name="_teicastGroup"/>
                  </choice>
        
                  <zeroOrMore>
                     <ref name="_teimodel.global"/>
                  </zeroOrMore>
        
               </group>
            </oneOrMore>
            <zeroOrMore>
               <group>
        
                  <ref name="_teimodel.common"/>
        
        
                  <zeroOrMore>
                     <ref name="_teimodel.global"/>
                  </zeroOrMore>
        
               </group>
            </zeroOrMore>
         </group>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teicastGroup">
      <element name="castGroup">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(cast list grouping) groups one or more individual castItem elements within a cast list. [7.1.4. Cast Lists]</a:documentation>
         <group>
      
            <zeroOrMore>
               <choice>
                  <ref name="_teimodel.global"/>
                  <ref name="_teimodel.headLike"/>
               </choice>
            </zeroOrMore>
      
            <oneOrMore>
               <group>
                  <choice>
                     <ref name="_teicastItem"/>
                     <ref name="_teicastGroup"/>
                     <ref name="_teiroleDesc"/>
                  </choice>
        
                  <zeroOrMore>
                     <ref name="_teimodel.global"/>
                  </zeroOrMore>
        
               </group>
            </oneOrMore>
            <optional>
               <group>
                  <ref name="_teitrailer"/>
        
                  <zeroOrMore>
                     <ref name="_teimodel.global"/>
                  </zeroOrMore>
        
               </group>
            </optional>
         </group>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teicastItem">
      <element name="castItem">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(cast list item) contains a single entry within a cast list, describing either a single role or a list of non-speaking roles. [7.1.4. Cast Lists]</a:documentation>
         <zeroOrMore>
            <choice>
               <text/>
               <ref name="_teimodel.gLike"/>
               <ref name="_teimodel.castItemPart"/>
               <ref name="_teimodel.phrase"/>
               <ref name="_teimodel.global"/>
            </choice>
         </zeroOrMore>
         <ref name="_teiatt.global.attributes"/>
         <optional>
            <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                       name="type"
                       a:defaultValue="role">
               <a:documentation>characterizes the cast item.</a:documentation>
               <choice>
                  <value>role</value>
                  <a:documentation>the item describes a single role.</a:documentation>
                  <value>list</value>
                  <a:documentation>the item describes a list of non-speaking roles.</a:documentation>
               </choice>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teirole">
      <element name="role">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains the name of a dramatic role, as given in a cast list. [7.1.4. Cast Lists]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiroleDesc">
      <element name="roleDesc">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(role description) describes a character's role in a drama. [7.1.4. Cast Lists]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiactor">
      <element name="actor">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains the name of an actor appearing within a cast list. [7.1.4. Cast Lists]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.canonical.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teispGrp">
      <element name="spGrp">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(speech group) contains a group of speeches or songs in a performance text presented in a source as constituting a single unit or number. [7.2.3. Grouped Speeches]</a:documentation>
         <group>
      
            <zeroOrMore>
               <ref name="_teimodel.headLike"/>
            </zeroOrMore>
      
      
            <oneOrMore>
               <choice>
                  <ref name="_teimodel.global"/>
                  <ref name="_teisp"/>
                  <ref name="_teimodel.stageLike"/>
               </choice>
            </oneOrMore>
      
         </group>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.ascribed.directed.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teimove">
      <element name="move">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(movement) marks the actual movement of one or more characters. [7.2.4. Stage Directions]</a:documentation>
         <empty/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.ascribed.directed.attributes"/>
         <optional>
            <attribute name="type">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">characterizes the movement, for example as an entrance or exit.
Suggested values include: 1] entrance; 2] exit; 3] onStage</a:documentation>
               <choice>
                  <value>entrance</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">character is entering the stage.</a:documentation>
                  <value>exit</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">character is exiting the stage.</a:documentation>
                  <value>onStage</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">character moves on stage</a:documentation>
                  <data type="token">
                     <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
                  </data>
               </choice>
            </attribute>
         </optional>
         <optional>
            <attribute name="where">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the direction of a stage movement.
Sample values include: 1] L (left) ; 2] R (right) ; 3] C (center) </a:documentation>
               <list>
                  <oneOrMore>
                     <data type="token">
                        <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
                     </data>
                  </oneOrMore>
               </list>
            </attribute>
         </optional>
         <optional>
            <attribute name="perf">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(performance) identifies the performance or performances in which this movement occurred as specified by pointing to one or more performance elements.</a:documentation>
               <list>
                  <oneOrMore>
                     <data type="anyURI"/>
                  </oneOrMore>
               </list>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teiview">
      <element name="view">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">describes the visual context of some part of a screen play in terms of what the spectator sees, generally independent of any dialogue. [7.3.1. Technical Information 7.3. Other Types of Performance Text]</a:documentation>
         <ref name="_teimacro.specialPara"/>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teicamera">
      <element name="camera">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">describes a particular camera angle or viewpoint in a screen play. [7.3.1. Technical Information 7.3. Other Types of Performance Text]</a:documentation>
         <ref name="_teimacro.paraContent"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teisound">
      <element name="sound">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">describes a sound effect or musical sequence specified within a screen play or radio script. [7.3.1. Technical Information 7.3. Other Types of Performance Text]</a:documentation>
         <ref name="_teimacro.paraContent"/>
         <ref name="_teiatt.global.attributes"/>
         <optional>
            <attribute name="type">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">categorizes the sound in some respect, e.g. as music, special effect, etc.</a:documentation>
               <data type="token">
                  <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
               </data>
            </attribute>
         </optional>
         <optional>
            <attribute name="discrete">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates whether the sound overlaps the surrounding speeches or interrupts them.</a:documentation>
               <choice>
                  <data type="boolean"/>
                  <choice>
                     <value>unknown</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
                     <value>inapplicable</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
                  </choice>
               </choice>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teicaption">
      <element name="caption">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains the text of a caption or other text displayed as part of a film script or screenplay. [7.3.1. Technical Information 7.3. Other Types of Performance Text]</a:documentation>
         <ref name="_teimacro.paraContent"/>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teitech">
      <element name="tech">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(technical stage direction) describes a special-purpose stage direction that is not meant for the actors. [7.3.1. Technical Information]</a:documentation>
         <ref name="_teimacro.paraContent"/>
         <ref name="_teiatt.global.attributes"/>
         <optional>
            <attribute name="type">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">categorizes the technical stage direction.
Suggested values include: 1] light; 2] sound; 3] prop; 4] block</a:documentation>
               <choice>
                  <value>light</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">a lighting cue</a:documentation>
                  <value>sound</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">a sound cue</a:documentation>
                  <value>prop</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">a prop cue</a:documentation>
                  <value>block</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">a blocking instruction</a:documentation>
                  <data type="token">
                     <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
                  </data>
               </choice>
            </attribute>
         </optional>
         <optional>
            <attribute name="perf">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(performance) points to one or more performance elements documenting the performance or performances to which this technical direction applies.</a:documentation>
               <list>
                  <oneOrMore>
                     <data type="anyURI"/>
                  </oneOrMore>
               </list>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teiatt.global.linking.attributes">
      <ref name="_teiatt.global.linking.attribute.corresp"/>
      <ref name="_teiatt.global.linking.attribute.synch"/>
      <ref name="_teiatt.global.linking.attribute.sameAs"/>
      <ref name="_teiatt.global.linking.attribute.copyOf"/>
      <ref name="_teiatt.global.linking.attribute.next"/>
      <ref name="_teiatt.global.linking.attribute.prev"/>
      <ref name="_teiatt.global.linking.attribute.exclude"/>
      <ref name="_teiatt.global.linking.attribute.select"/>
   </define>
   <define name="_teiatt.global.linking.attribute.corresp">
      <optional>
         <attribute name="corresp">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(corresponds) points to elements that correspond to the current element in some way.</a:documentation>
            <list>
               <oneOrMore>
                  <data type="anyURI"/>
               </oneOrMore>
            </list>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.global.linking.attribute.synch">
      <optional>
         <attribute name="synch">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(synchronous) points to elements that are synchronous with the current element.</a:documentation>
            <list>
               <oneOrMore>
                  <data type="anyURI"/>
               </oneOrMore>
            </list>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.global.linking.attribute.sameAs">
      <optional>
         <attribute name="sameAs">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">points to an element that is the same as the current element.</a:documentation>
            <data type="anyURI"/>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.global.linking.attribute.copyOf">
      <optional>
         <attribute name="copyOf">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">points to an element of which the current element is a copy.</a:documentation>
            <data type="anyURI"/>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.global.linking.attribute.next">
      <optional>
         <attribute name="next">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">points to the next element of a virtual aggregate of which the current element is part.</a:documentation>
            <data type="anyURI"/>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.global.linking.attribute.prev">
      <optional>
         <attribute name="prev">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(previous) points to the previous element of a virtual aggregate of which the current element is part.</a:documentation>
            <data type="anyURI"/>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.global.linking.attribute.exclude">
      <optional>
         <attribute name="exclude">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">points to elements that are in exclusive alternation with the current element.</a:documentation>
            <list>
               <oneOrMore>
                  <data type="anyURI"/>
               </oneOrMore>
            </list>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.global.linking.attribute.select">
      <optional>
         <attribute name="select">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">selects one or more alternants; if one alternant is selected, the ambiguity or uncertainty is marked as resolved. If more than one alternant is selected, the degree of ambiguity or uncertainty is marked as reduced by the number of alternants not selected.</a:documentation>
            <list>
               <oneOrMore>
                  <data type="anyURI"/>
               </oneOrMore>
            </list>
         </attribute>
      </optional>
   </define>
   <define name="_teilink">
      <element name="link">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">defines an association or hypertextual link among elements or passages, of some type not more precisely specifiable by other elements. [16.1. Links]</a:documentation>
         <empty/>
         <pattern xmlns="http://purl.oclc.org/dsdl/schematron"
                  id="faust-tei-link-linkTargets3-constraint-assert-9">
            <rule context="tei:link">
               <sch:assert xmlns:sch="http://purl.oclc.org/dsdl/schematron"
                           xmlns="http://www.tei-c.org/ns/1.0"
                           xmlns:rng="http://relaxng.org/ns/structure/1.0"
                           xmlns:ge="http://www.tei-c.org/ns/geneticEditions"
                           xmlns:svg="http://www.w3.org/2000/svg"
                           xmlns:f="http://www.faustedition.net/ns"
                           test="contains(normalize-space(@target),' ')">You must supply at least two values for @target or  on <sch:name/>
               </sch:assert>
            </rule>
         </pattern>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.pointing.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teilinkGrp">
      <element name="linkGrp">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(link group) defines a collection of associations or hypertextual links. [16.1. Links]</a:documentation>
         <oneOrMore>
            <choice>
               <ref name="_teilink"/>
               <ref name="_teiptr"/>
            </choice>
         </oneOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.pointing.group.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiab">
      <element name="ab">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(anonymous block) contains any arbitrary component-level unit of text, acting as an anonymous container for phrase or inter level elements analogous to, but without the semantic baggage of, a paragraph. [16.3. Blocks, Segments, and Anchors]</a:documentation>
         <ref name="_teimacro.paraContent"/>
         <pattern xmlns="http://purl.oclc.org/dsdl/schematron"
                  id="faust-tei-ab-abstractModel-structure-ab-constraint-report-20">
            <rule context="tei:ab">
               <report xmlns:rng="http://relaxng.org/ns/structure/1.0"
                       xmlns:ge="http://www.tei-c.org/ns/geneticEditions"
                       xmlns:svg="http://www.w3.org/2000/svg"
                       xmlns:f="http://www.faustedition.net/ns"
                       test="not(ancestor::tei:floatingText) and (ancestor::tei:p or ancestor::tei:ab)          and not(parent::tei:exemplum         |parent::tei:item         |parent::tei:note         |parent::tei:q         |parent::tei:quote         |parent::tei:remarks         |parent::tei:said         |parent::tei:sp         |parent::tei:stage         |parent::tei:cell         |parent::tei:figure)">
        Abstract model violation: ab may not occur inside paragraphs or other ab elements.
      </report>
            </rule>
         </pattern>
         <pattern xmlns="http://purl.oclc.org/dsdl/schematron"
                  id="faust-tei-ab-abstractModel-structure-l-constraint-report-21">
            <rule context="tei:ab">
               <report xmlns:rng="http://relaxng.org/ns/structure/1.0"
                       xmlns:ge="http://www.tei-c.org/ns/geneticEditions"
                       xmlns:svg="http://www.w3.org/2000/svg"
                       xmlns:f="http://www.faustedition.net/ns"
                       test="ancestor::tei:l or ancestor::tei:lg">
        Abstract model violation: Lines may not contain higher-level divisions such as p or ab.
      </report>
            </rule>
         </pattern>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.declaring.attributes"/>
         <ref name="_teiatt.fragmentable.attributes"/>
         <ref name="_teiatt.written.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teianchor">
      <element name="anchor">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(anchor point) attaches an identifier to a point within a text, whether or not it corresponds with a textual element. [8.4.2. Synchronization and Overlap 16.5. Correspondence and Alignment]</a:documentation>
         <empty/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiseg">
      <element name="seg">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(arbitrary segment) represents any segmentation of text below the chunk level. [16.3. Blocks, Segments, and Anchors 6.2. Components of the Verse Line 7.2.5. Speech Contents]</a:documentation>
         <ref name="_teimacro.paraContent"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.segLike.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.written.attributes"/>
         <ref name="_teiatt.notated.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiwhen">
      <element name="when">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates a point in time either relative to other elements in the same timeline tag, or absolutely. [16.4.2. Placing Synchronous Events in Time]</a:documentation>
         <empty/>
         <ref name="_teiatt.global.attributes"/>
         <optional>
            <attribute name="absolute">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">supplies an absolute value for the time.</a:documentation>
               <choice>
                  <data type="date"/>
                  <data type="gYear"/>
                  <data type="gMonth"/>
                  <data type="gDay"/>
                  <data type="gYearMonth"/>
                  <data type="gMonthDay"/>
                  <data type="time"/>
                  <data type="dateTime"/>
               </choice>
            </attribute>
         </optional>
         <optional>
            <attribute name="unit">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the unit of time in which the interval value is expressed, if this is not inherited from the parent timeline.
Suggested values include: 1] d (days) ; 2] h (hours) ; 3] min (minutes) ; 4] s (seconds) ; 5] ms (milliseconds) </a:documentation>
               <choice>
                  <value>d</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(days) </a:documentation>
                  <value>h</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(hours) </a:documentation>
                  <value>min</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(minutes) </a:documentation>
                  <value>s</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(seconds) </a:documentation>
                  <value>ms</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(milliseconds) </a:documentation>
                  <data type="token">
                     <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
                  </data>
               </choice>
            </attribute>
         </optional>
         <optional>
            <attribute name="interval">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies a time interval either as a number or as one of the keywords defined by the datatype data.interval</a:documentation>
               <choice>
                  <data type="float"/>
                  <choice>
                     <value>regular</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
                     <value>irregular</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
                     <value>unknown</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
                  </choice>
               </choice>
            </attribute>
         </optional>
         <optional>
            <attribute name="since">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">identifies the reference point for determining the time of the current when element, which is obtained by adding the interval to the time of the reference point.</a:documentation>
               <data type="anyURI"/>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teitimeline">
      <element name="timeline">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">provides a set of ordered points in time which can be linked to elements of a spoken text to create a temporal alignment of that text. [16.4.2. Placing Synchronous Events in Time]</a:documentation>
         <oneOrMore>
            <ref name="_teiwhen"/>
         </oneOrMore>
         <ref name="_teiatt.global.attributes"/>
         <optional>
            <attribute name="origin">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">designates the origin of the timeline, i.e. the time at which it begins.</a:documentation>
               <data type="anyURI"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="unit">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the unit of time corresponding to the interval value of the timeline or of its constituent points in time.
Suggested values include: 1] d (days) ; 2] h (hours) ; 3] min (minutes) ; 4] s (seconds) ; 5] ms (milliseconds) </a:documentation>
               <choice>
                  <value>d</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(days) </a:documentation>
                  <value>h</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(hours) </a:documentation>
                  <value>min</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(minutes) </a:documentation>
                  <value>s</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(seconds) </a:documentation>
                  <value>ms</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(milliseconds) </a:documentation>
                  <data type="token">
                     <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
                  </data>
               </choice>
            </attribute>
         </optional>
         <optional>
            <attribute name="interval">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies a time interval either as a positive integral value or using one of a set of predefined codes.</a:documentation>
               <choice>
                  <data type="float"/>
                  <choice>
                     <value>regular</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
                     <value>irregular</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
                     <value>unknown</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
                  </choice>
               </choice>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teijoin">
      <element name="join">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">identifies a possibly fragmented segment of text, by pointing at the possibly discontiguous elements which compose it. [16.7. Aggregation]</a:documentation>
         <zeroOrMore>
            <choice>
               <ref name="_teimodel.descLike"/>
               <ref name="_teimodel.certLike"/>
            </choice>
         </zeroOrMore>
         <pattern xmlns="http://purl.oclc.org/dsdl/schematron"
                  id="faust-tei-join-joinTargets3-constraint-assert-10">
            <rule context="tei:join">
               <assert xmlns:rng="http://relaxng.org/ns/structure/1.0"
                       xmlns:ge="http://www.tei-c.org/ns/geneticEditions"
                       xmlns:svg="http://www.w3.org/2000/svg"
                       xmlns:f="http://www.faustedition.net/ns"
                       test="contains(@target,' ')">
You must supply at least two values for @target on <name/>
               </assert>
            </rule>
         </pattern>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.pointing.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <optional>
            <attribute name="result">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the name of an element which this aggregation may be understood to represent.</a:documentation>
               <data type="Name"/>
            </attribute>
         </optional>
         <optional>
            <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                       name="scope"
                       a:defaultValue="root">
               <a:documentation>indicates whether the targets to be joined include the entire element indicated (the entire subtree including its root), or just the children of the target (the branches of the subtree).</a:documentation>
               <choice>
                  <value>root</value>
                  <a:documentation>the rooted subtrees indicated by the target attribute are joined, each subtree become a child of the virtual element created by the join</a:documentation>
                  <value>branches</value>
                  <a:documentation>the children of the subtrees indicated by the target attribute become the children of the virtual element (i.e. the roots of the subtrees are discarded)</a:documentation>
               </choice>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teijoinGrp">
      <element name="joinGrp">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(join group) groups a collection of join elements and possibly pointers. [16.7. Aggregation]</a:documentation>
         <group>
      
            <zeroOrMore>
               <ref name="_teimodel.glossLike"/>
            </zeroOrMore>
      
      
            <oneOrMore>
               <choice>
                  <ref name="_teijoin"/>
                  <ref name="_teiptr"/>
               </choice>
            </oneOrMore>
      
         </group>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.pointing.group.attributes"/>
         <optional>
            <attribute name="result">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">supplies the default value for the result on each join included within the group.</a:documentation>
               <data type="Name"/>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teialt">
      <element name="alt">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(alternation) identifies an alternation or a set of choices among elements or passages. [16.8. Alternation]</a:documentation>
         <empty/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.pointing.attribute.targetLang"/>
         <ref name="_teiatt.pointing.attribute.evaluate"/>
         <ref name="_teiatt.typed.attributes"/>
         <optional>
            <attribute name="target">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the destination of the reference by supplying one or more URI References</a:documentation>
               <list>
                  <data type="anyURI"/>
                  <data type="anyURI"/>
                  <zeroOrMore>
                     <data type="anyURI"/>
                  </zeroOrMore>
               </list>
            </attribute>
         </optional>
         <optional>
            <attribute name="mode">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">states whether the alternations gathered in this collection are exclusive or inclusive.</a:documentation>
               <choice>
                  <value>excl</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(exclusive) indicates that the alternation is exclusive, i.e. that at most one of the alternatives occurs.</a:documentation>
                  <value>incl</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(inclusive) indicates that the alternation is not exclusive, i.e. that one or more of the alternatives occur.</a:documentation>
               </choice>
            </attribute>
         </optional>
         <optional>
            <attribute name="weights">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">If mode is excl, each weight states the probability that the corresponding alternative occurs. If mode is incl each weight states the probability that the corresponding alternative occurs given that at least one of the other alternatives occurs.</a:documentation>
               <list>
                  <data type="double"/>
                  <data type="double"/>
                  <zeroOrMore>
                     <data type="double"/>
                  </zeroOrMore>
               </list>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teialtGrp">
      <element name="altGrp">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(alternation group) groups a collection of alt elements and possibly pointers. [16.8. Alternation]</a:documentation>
         <zeroOrMore>
            <choice>
               <ref name="_teialt"/>
               <ref name="_teiptr"/>
            </choice>
         </zeroOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.pointing.group.attributes"/>
         <optional>
            <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                       name="mode"
                       a:defaultValue="excl">
               <a:documentation>states whether the alternations gathered in this collection are exclusive or inclusive.</a:documentation>
               <choice>
                  <value>excl</value>
                  <a:documentation>(exclusive) indicates that the alternation is exclusive, i.e. that at most one of the alternatives occurs.</a:documentation>
                  <value>incl</value>
                  <a:documentation>(inclusive) indicates that the alternation is not exclusive, i.e. that one or more of the alternatives occur.</a:documentation>
               </choice>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teiatt.msExcerpt.attributes">
      <ref name="_teiatt.msExcerpt.attribute.defective"/>
   </define>
   <define name="_teiatt.msExcerpt.attribute.defective">
      <optional>
         <attribute name="defective">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates whether the passage being quoted is defective, i.e. incomplete through loss or damage.</a:documentation>
            <choice>
               <data type="boolean"/>
               <choice>
                  <value>unknown</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
                  <value>inapplicable</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
               </choice>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.msClass.attributes">
      <ref name="_teiatt.msClass.attribute.class"/>
   </define>
   <define name="_teiatt.msClass.attribute.class">
      <optional>
         <attribute name="class">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">identifies the text types or classifications applicable to this item by pointing to other elements or resources defining the classification concerned. </a:documentation>
            <list>
               <oneOrMore>
                  <data type="anyURI"/>
               </oneOrMore>
            </list>
         </attribute>
      </optional>
   </define>
   <define name="_teimsDesc">
      <element name="msDesc">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(manuscript description) contains a description of a single identifiable manuscript or other text-bearing object. [10.1. Overview]</a:documentation>
         <group>
            <ref name="_teimsIdentifier"/>
            <zeroOrMore>
               <ref name="_teimodel.headLike"/>
            </zeroOrMore>
            <choice>
               <oneOrMore>
                  <ref name="_teimodel.pLike"/>
               </oneOrMore>
               <group>
                  <optional>
                     <ref name="_teimsContents"/>
                  </optional>
                  <optional>
                     <ref name="_teiphysDesc"/>
                  </optional>
                  <optional>
                     <ref name="_teihistory"/>
                  </optional>
                  <optional>
                     <ref name="_teiadditional"/>
                  </optional>
                  <choice>
                     <zeroOrMore>
                        <ref name="_teimsPart"/>
                     </zeroOrMore>
                     <zeroOrMore>
                        <ref name="_teimsFrag"/>
                     </zeroOrMore>
                  </choice>
               </group>
            </choice>
         </group>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.sortable.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.declaring.attributes"/>
         <ref name="_teiatt.docStatus.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teicatchwords">
      <element name="catchwords">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">describes the system used to ensure correct ordering of the quires making up a codex or incunable, typically by means of annotations at the foot of the page. [10.3.7. Catchwords, Signatures, Secundo Folio]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <pattern xmlns="http://purl.oclc.org/dsdl/schematron"
                  id="faust-tei-catchwords-catchword_in_msDesc-constraint-assert-11">
            <rule context="tei:catchwords">
               <sch:assert xmlns:sch="http://purl.oclc.org/dsdl/schematron"
                           xmlns="http://www.tei-c.org/ns/1.0"
                           xmlns:rng="http://relaxng.org/ns/structure/1.0"
                           xmlns:ge="http://www.tei-c.org/ns/geneticEditions"
                           xmlns:svg="http://www.w3.org/2000/svg"
                           xmlns:f="http://www.faustedition.net/ns"
                           test="ancestor::tei:msDesc"
                           role="nonfatal">WARNING: deprecated use of element — The <sch:name/> element will not be allowed outside of msDesc as of 2018-10-01.</sch:assert>
            </rule>
         </pattern>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teidimensions">
      <element name="dimensions">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a dimensional specification. [10.3.4. Dimensions]</a:documentation>
         <zeroOrMore>
            <choice>
               <ref name="_teidim"/>
               <ref name="_teimodel.dimLike"/>
            </choice>
         </zeroOrMore>
         <pattern xmlns="http://purl.oclc.org/dsdl/schematron"
                  id="faust-tei-dimensions-duplicateDim-constraint-report-22">
            <rule context="tei:dimensions">
               <report xmlns:rng="http://relaxng.org/ns/structure/1.0"
                       xmlns:ge="http://www.tei-c.org/ns/geneticEditions"
                       xmlns:svg="http://www.w3.org/2000/svg"
                       xmlns:f="http://www.faustedition.net/ns"
                       test="count(tei:width)&gt; 1">
The element <name/> may appear once only
      </report>
            </rule>
         </pattern>
         <pattern xmlns="http://purl.oclc.org/dsdl/schematron"
                  id="faust-tei-dimensions-duplicateDim-constraint-report-23">
            <rule context="tei:dimensions">
               <report xmlns:rng="http://relaxng.org/ns/structure/1.0"
                       xmlns:ge="http://www.tei-c.org/ns/geneticEditions"
                       xmlns:svg="http://www.w3.org/2000/svg"
                       xmlns:f="http://www.faustedition.net/ns"
                       test="count(tei:height)&gt; 1">
The element <name/> may appear once only
      </report>
            </rule>
         </pattern>
         <pattern xmlns="http://purl.oclc.org/dsdl/schematron"
                  id="faust-tei-dimensions-duplicateDim-constraint-report-24">
            <rule context="tei:dimensions">
               <report xmlns:rng="http://relaxng.org/ns/structure/1.0"
                       xmlns:ge="http://www.tei-c.org/ns/geneticEditions"
                       xmlns:svg="http://www.w3.org/2000/svg"
                       xmlns:f="http://www.faustedition.net/ns"
                       test="count(tei:depth)&gt; 1">
The element <name/> may appear once only
      </report>
            </rule>
         </pattern>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.dimensions.attributes"/>
         <optional>
            <attribute name="type">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates which aspect of the object is being measured.
Sample values include: 1] leaves; 2] ruled; 3] pricked; 4] written; 5] miniatures; 6] binding; 7] box</a:documentation>
               <data type="token">
                  <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
               </data>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teidim">
      <element name="dim">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains any single measurement forming part of a dimensional specification of some sort. [10.3.4. Dimensions]</a:documentation>
         <ref name="_teimacro.xtext"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.dimensions.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiheight">
      <element name="height">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a measurement measured along the axis at right angles to the bottom of the written surface, i.e. parallel to the spine for a codex or book. [10.3.4. Dimensions]</a:documentation>
         <ref name="_teimacro.xtext"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.dimensions.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teidepth">
      <element name="depth">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a measurement measured across the spine of a book or codex, or (for other text-bearing objects) perpendicular to the measurement given by the width element. [10.3.4. Dimensions]</a:documentation>
         <ref name="_teimacro.xtext"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.dimensions.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiwidth">
      <element name="width">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a measurement measured along the axis parallel to the bottom of the written surface, i.e. perpendicular to the spine of a book or codex. [10.3.4. Dimensions]</a:documentation>
         <ref name="_teimacro.xtext"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.dimensions.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiheraldry">
      <element name="heraldry">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a heraldic formula or phrase, typically found as part of a blazon, coat of arms, etc.  [10.3.8. Heraldry]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teilocus">
      <element name="locus">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">defines a location within a manuscript or manuscript part, usually as a (possibly discontinuous) sequence of folio references. [10.3.5. References to Locations within a Manuscript]</a:documentation>
         <zeroOrMore>
            <choice>
               <text/>
               <ref name="_teimodel.gLike"/>
               <ref name="_teihi"/>
               <ref name="_teilocus"/>
            </choice>
         </zeroOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.pointing.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <optional>
            <attribute name="scheme">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">identifies the foliation scheme in terms of which the location is being specified by pointing to some foliation element defining it, or to some other equivalent resource.</a:documentation>
               <data type="anyURI"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="from">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the starting point of the location in a normalized form, typically a page number.</a:documentation>
               <data type="token">
                  <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
               </data>
            </attribute>
         </optional>
         <optional>
            <attribute name="to">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the end-point of the location in a normalized form, typically as a page number.</a:documentation>
               <data type="token">
                  <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
               </data>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teilocusGrp">
      <element name="locusGrp">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">groups a number of locations which together form a distinct but discontinuous item within a manuscript or manuscript part, according to a specific foliation. [10.3.5. References to Locations within a Manuscript]</a:documentation>
         <oneOrMore>
            <ref name="_teilocus"/>
         </oneOrMore>
         <ref name="_teiatt.global.attributes"/>
         <optional>
            <attribute name="scheme">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">identifies the foliation scheme in terms of which all the locations contained by the group are specified by pointing to some foliation element defining it, or to some other equivalent resource.</a:documentation>
               <data type="anyURI"/>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teimaterial">
      <element name="material">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a word or phrase describing the material of which the object being described is composed. [10.3.2. Material and Object Type]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.canonical.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiobjectType">
      <element name="objectType">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a word or phrase describing the type of object being referred to. [10.3.2. Material and Object Type]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.canonical.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiorigDate">
      <element name="origDate">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(origin date) contains any form of date, used to identify the date of origin for a manuscript or manuscript part. [10.3.1. Origination]</a:documentation>
         <zeroOrMore>
            <choice>
               <text/>
               <ref name="_teimodel.gLike"/>
               <ref name="_teimodel.phrase"/>
               <ref name="_teimodel.global"/>
            </choice>
         </zeroOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.datable.attributes"/>
         <ref name="_teiatt.dimensions.attributes"/>
         <ref name="_teiatt.editLike.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiorigPlace">
      <element name="origPlace">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(origin place) contains any form of place name, used to identify the place of origin for a manuscript or manuscript part. [10.3.1. Origination]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.naming.attributes"/>
         <ref name="_teiatt.datable.attributes"/>
         <ref name="_teiatt.editLike.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teisecFol">
      <element name="secFol">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(second folio) marks the word or words taken from a fixed point in a codex (typically the beginning of the second leaf) in order to provide a unique identifier for it.  [10.3.7. Catchwords, Signatures, Secundo Folio]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <pattern xmlns="http://purl.oclc.org/dsdl/schematron"
                  id="faust-tei-secFol-secFol_in_msDesc-constraint-assert-12">
            <rule context="tei:secFol">
               <sch:assert xmlns:sch="http://purl.oclc.org/dsdl/schematron"
                           xmlns="http://www.tei-c.org/ns/1.0"
                           xmlns:rng="http://relaxng.org/ns/structure/1.0"
                           xmlns:ge="http://www.tei-c.org/ns/geneticEditions"
                           xmlns:svg="http://www.w3.org/2000/svg"
                           xmlns:f="http://www.faustedition.net/ns"
                           test="ancestor::tei:msDesc"
                           role="nonfatal">WARNING: deprecated use of element — The <sch:name/> element will not be allowed outside of msDesc as of 2018-10-01.</sch:assert>
            </rule>
         </pattern>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teisignatures">
      <element name="signatures">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains discussion of the leaf or quire signatures found within a codex. [10.3.7. Catchwords, Signatures, Secundo Folio]</a:documentation>
         <ref name="_teimacro.specialPara"/>
         <pattern xmlns="http://purl.oclc.org/dsdl/schematron"
                  id="faust-tei-signatures-signatures_in_msDesc-constraint-assert-13">
            <rule context="tei:signatures">
               <sch:assert xmlns:sch="http://purl.oclc.org/dsdl/schematron"
                           xmlns="http://www.tei-c.org/ns/1.0"
                           xmlns:rng="http://relaxng.org/ns/structure/1.0"
                           xmlns:ge="http://www.tei-c.org/ns/geneticEditions"
                           xmlns:svg="http://www.w3.org/2000/svg"
                           xmlns:f="http://www.faustedition.net/ns"
                           test="ancestor::tei:msDesc"
                           role="nonfatal">WARNING: deprecated use of element — The <sch:name/> element will not be allowed outside of msDesc as of 2018-10-01.</sch:assert>
            </rule>
         </pattern>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teistamp">
      <element name="stamp">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a word or phrase describing a stamp or similar device. [10.3.3. Watermarks and Stamps]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.datable.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiwatermark">
      <element name="watermark">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a word or phrase describing a watermark or similar device. [10.3.3. Watermarks and Stamps]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teimsIdentifier">
      <element name="msIdentifier">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(manuscript identifier) contains the information required to identify the manuscript being described. [10.4. The Manuscript Identifier]</a:documentation>
         <group>
            <group>
               <optional>
                  <ref name="_teiplaceName"/>
               </optional>
               <optional>
                  <ref name="_teibloc"/>
               </optional>
               <optional>
                  <ref name="_teicountry"/>
               </optional>
               <optional>
                  <ref name="_teiregion"/>
               </optional>
               <optional>
                  <ref name="_teisettlement"/>
               </optional>
               <optional>
                  <ref name="_teidistrict"/>
               </optional>
               <optional>
                  <ref name="_teigeogName"/>
               </optional>
        
               <optional>
                  <ref name="_teiinstitution"/>
               </optional>
        
        
               <optional>
                  <ref name="_teirepository"/>
               </optional>
        
        
               <zeroOrMore>
                  <ref name="_teicollection"/>
               </zeroOrMore>
        
        
               <optional>
                  <ref name="_teiidno"/>
               </optional>
        
            </group>
      
            <zeroOrMore>
               <choice>
                  <ref name="_teimsName"/>
                  <ref name="_teialtIdentifier"/>
               </choice>
            </zeroOrMore>
      
         </group>
         <pattern xmlns="http://purl.oclc.org/dsdl/schematron"
                  id="faust-tei-msIdentifier-msId_minimal-constraint-report-25">
            <rule context="tei:msIdentifier">
               <report xmlns:rng="http://relaxng.org/ns/structure/1.0"
                       xmlns:ge="http://www.tei-c.org/ns/geneticEditions"
                       xmlns:svg="http://www.w3.org/2000/svg"
                       xmlns:f="http://www.faustedition.net/ns"
                       test="not(parent::tei:msPart) and       (local-name(*[1])='idno' or       local-name(*[1])='altIdentifier' or       normalize-space(.)='')">An msIdentifier must contain either a repository or location of some type, or a manuscript name</report>
            </rule>
         </pattern>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiinstitution">
      <element name="institution">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains the name of an organization such as a university or library, with which a manuscript is identified, generally its holding institution. [10.4. The Manuscript Identifier]</a:documentation>
         <ref name="_teimacro.xtext"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.naming.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teirepository">
      <element name="repository">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains the name of a repository within which manuscripts are stored, possibly forming part of an institution. [10.4. The Manuscript Identifier]</a:documentation>
         <ref name="_teimacro.xtext"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.naming.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teicollection">
      <element name="collection">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains the name of a collection of manuscripts, not necessarily located within a single repository. [10.4. The Manuscript Identifier]</a:documentation>
         <ref name="_teimacro.xtext"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.naming.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teialtIdentifier">
      <element name="altIdentifier">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(alternative identifier) contains an alternative or former structured identifier used for a manuscript, such as a former catalogue number. [10.4. The Manuscript Identifier]</a:documentation>
         <group>
            <optional>
               <ref name="_teiplaceName"/>
            </optional>
            <optional>
               <ref name="_teibloc"/>
            </optional>
            <optional>
               <ref name="_teicountry"/>
            </optional>
            <optional>
               <ref name="_teiregion"/>
            </optional>
            <optional>
               <ref name="_teisettlement"/>
            </optional>
            <optional>
               <ref name="_teidistrict"/>
            </optional>
            <optional>
               <ref name="_teigeogName"/>
            </optional>
     
            <optional>
               <ref name="_teiinstitution"/>
            </optional>
     
     
            <optional>
               <ref name="_teirepository"/>
            </optional>
     
     
            <optional>
               <ref name="_teicollection"/>
            </optional>
     
            <ref name="_teiidno"/>
     
            <optional>
               <ref name="_teinote"/>
            </optional>
     
         </group>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teimsName">
      <element name="msName">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(alternative name) contains any form of unstructured alternative name used for a manuscript, such as an ocellus nominum, or nickname. [10.4. The Manuscript Identifier]</a:documentation>
         <zeroOrMore>
            <choice>
               <text/>
               <ref name="_teimodel.gLike"/>
               <ref name="_teirs"/>
               <ref name="_teiname"/>
            </choice>
         </zeroOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teicolophon">
      <element name="colophon">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains the colophon of a manuscript item: that is, a statement providing information regarding the date, place, agency, or reason for production of the manuscript. [10.6.1. The msItem and msItemStruct Elements]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.msExcerpt.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiexplicit">
      <element name="explicit">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains the explicit of a manuscript item, that is, the closing words of the text proper, exclusive of any rubric or colophon which might follow it. [10.6.1. The msItem and msItemStruct Elements]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.msExcerpt.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teifiliation">
      <element name="filiation">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains information concerning the manuscript's filiation, i.e. its relationship to other surviving manuscripts of the same text, its protographs, antigraphs and apographs. [10.6.1. The msItem and msItemStruct Elements]</a:documentation>
         <ref name="_teimacro.specialPara"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teifinalRubric">
      <element name="finalRubric">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains the string of words that denotes the end of a text division, often with an assertion as to its author and title, usually set off from the text itself by red ink, by a different size or type of script, or by some other such visual device. [10.6.1. The msItem and msItemStruct Elements]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.msExcerpt.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiincipit">
      <element name="incipit">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains the incipit of a manuscript item, that is the opening words of the text proper, exclusive of any rubric which might precede it, of sufficient length to identify the work uniquely; such incipits were, in former times, frequently used a means of reference to a work, in place of a title. [10.6.1. The msItem and msItemStruct Elements]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.msExcerpt.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teimsContents">
      <element name="msContents">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(manuscript contents) describes the intellectual content of a manuscript or manuscript part, either as a series of paragraphs or as a series of structured manuscript items. [10.6. Intellectual Content]</a:documentation>
         <choice>
      
            <oneOrMore>
               <ref name="_teimodel.pLike"/>
            </oneOrMore>
      
            <group>
        
               <optional>
                  <ref name="_teisummary"/>
               </optional>
        
        
               <optional>
                  <ref name="_teitextLang"/>
               </optional>
        
        
               <optional>
                  <ref name="_teititlePage"/>
               </optional>
        
        
               <zeroOrMore>
                  <choice>
                     <ref name="_teimsItem"/>
                     <ref name="_teimsItemStruct"/>
                  </choice>
               </zeroOrMore>
        
            </group>
         </choice>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.msExcerpt.attributes"/>
         <ref name="_teiatt.msClass.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teimsItem">
      <element name="msItem">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(manuscript item) describes an individual work or item within the intellectual content of a manuscript or manuscript part. [10.6.1. The msItem and msItemStruct Elements]</a:documentation>
         <group>
      
            <zeroOrMore>
               <choice>
                  <ref name="_teilocus"/>
                  <ref name="_teilocusGrp"/>
               </choice>
            </zeroOrMore>
      
            <choice>
        
               <oneOrMore>
                  <ref name="_teimodel.pLike"/>
               </oneOrMore>
        
        
               <oneOrMore>
                  <choice>
                     <ref name="_teimodel.titlepagePart"/>
                     <ref name="_teimodel.msItemPart"/>
                     <ref name="_teimodel.global"/>
                  </choice>
               </oneOrMore>
        
            </choice>
         </group>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.msExcerpt.attributes"/>
         <ref name="_teiatt.msClass.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teimsItemStruct">
      <element name="msItemStruct">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(structured manuscript item) contains a structured description for an individual work or item within the intellectual content of a manuscript or manuscript part. [10.6.1. The msItem and msItemStruct Elements]</a:documentation>
         <group>
      
            <optional>
               <choice>
                  <ref name="_teilocus"/>
                  <ref name="_teilocusGrp"/>
               </choice>
            </optional>
      
            <choice>
        
               <oneOrMore>
                  <ref name="_teimodel.pLike"/>
               </oneOrMore>
        
               <group>
          
                  <zeroOrMore>
                     <ref name="_teiauthor"/>
                  </zeroOrMore>
          
          
                  <zeroOrMore>
                     <ref name="_teirespStmt"/>
                  </zeroOrMore>
          
          
                  <zeroOrMore>
                     <ref name="_teititle"/>
                  </zeroOrMore>
          
          
                  <optional>
                     <ref name="_teirubric"/>
                  </optional>
          
          
                  <optional>
                     <ref name="_teiincipit"/>
                  </optional>
          
          
                  <zeroOrMore>
                     <ref name="_teimsItemStruct"/>
                  </zeroOrMore>
          
          
                  <optional>
                     <ref name="_teiexplicit"/>
                  </optional>
          
          
                  <optional>
                     <ref name="_teifinalRubric"/>
                  </optional>
          
          
                  <zeroOrMore>
                     <ref name="_teicolophon"/>
                  </zeroOrMore>
          
          
                  <zeroOrMore>
                     <ref name="_teidecoNote"/>
                  </zeroOrMore>
          
          
                  <zeroOrMore>
                     <ref name="_teilistBibl"/>
                  </zeroOrMore>
          
          
                  <zeroOrMore>
                     <choice>
                        <ref name="_teibibl"/>
                        <ref name="_teibiblStruct"/>
                     </choice>
                  </zeroOrMore>
          
                  <optional>
                     <ref name="_teifiliation"/>
                  </optional>
            
                  <zeroOrMore>
                     <ref name="_teimodel.noteLike"/>
                  </zeroOrMore>
          
          
                  <optional>
                     <ref name="_teitextLang"/>
                  </optional>
          
               </group>
            </choice>
         </group>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.msExcerpt.attributes"/>
         <ref name="_teiatt.msClass.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teirubric">
      <element name="rubric">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains the text of any rubric or heading attached to a particular manuscript item, that is, a string of words through which a manuscript signals the beginning of a text division, often with an assertion as to its author and title, which is in some way set off from the text itself, usually in red ink, or by use of different size or type of script, or some other such visual device. [10.6.1. The msItem and msItemStruct Elements]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.msExcerpt.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teisummary">
      <element name="summary">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains an overview of the available information concerning some aspect of an item (for example, its intellectual content, history, layout, typography etc.) as a complement or alternative to the more detailed information carried by more specific elements. [10.6. Intellectual Content]</a:documentation>
         <ref name="_teimacro.specialPara"/>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiphysDesc">
      <element name="physDesc">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(physical description) contains a full physical description of a manuscript or manuscript part, optionally subdivided using more specialized elements from the model.physDescPart class. [10.7. Physical Description]</a:documentation>
         <group>
      
            <zeroOrMore>
               <ref name="_teimodel.pLike"/>
            </zeroOrMore>
      
      
        
            <optional>
               <ref name="_teiobjectDesc"/>
            </optional>
            <optional>
               <ref name="_teihandDesc"/>
            </optional>
            <optional>
               <ref name="_teitypeDesc"/>
            </optional>
            <optional>
               <ref name="_teiscriptDesc"/>
            </optional>
            <optional>
               <ref name="_teimusicNotation"/>
            </optional>
            <optional>
               <ref name="_teidecoDesc"/>
            </optional>
            <optional>
               <ref name="_teiadditions"/>
            </optional>
            <optional>
               <ref name="_teibindingDesc"/>
            </optional>
            <optional>
               <ref name="_teisealDesc"/>
            </optional>
            <optional>
               <ref name="_teiaccMat"/>
            </optional>
      
         </group>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiobjectDesc">
      <element name="objectDesc">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a description of the physical components making up the object which is being described. [10.7.1. Object Description]</a:documentation>
         <choice>
      
            <oneOrMore>
               <ref name="_teimodel.pLike"/>
            </oneOrMore>
      
            <group>
        
               <optional>
                  <ref name="_teisupportDesc"/>
               </optional>
        
        
               <optional>
                  <ref name="_teilayoutDesc"/>
               </optional>
        
            </group>
         </choice>
         <ref name="_teiatt.global.attributes"/>
         <optional>
            <attribute name="form">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">a short project-specific name identifying the physical form of the carrier, for example as a codex, roll, fragment, partial leaf, cutting etc.</a:documentation>
               <data type="token">
                  <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
               </data>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teisupportDesc">
      <element name="supportDesc">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(support description) groups elements describing the physical support for the written part of a manuscript. [10.7.1. Object Description]</a:documentation>
         <choice>
      
            <oneOrMore>
               <ref name="_teimodel.pLike"/>
            </oneOrMore>
      
            <group>
        
               <optional>
                  <ref name="_teisupport"/>
               </optional>
        
        
               <optional>
                  <ref name="_teiextent"/>
               </optional>
        
        
               <zeroOrMore>
                  <ref name="_teifoliation"/>
               </zeroOrMore>
        
        
               <optional>
                  <ref name="_teicollation"/>
               </optional>
        
        
               <optional>
                  <ref name="_teicondition"/>
               </optional>
        
            </group>
         </choice>
         <ref name="_teiatt.global.attributes"/>
         <optional>
            <attribute name="material">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">a short project-defined name for the material composing the majority of the support
Suggested values include: 1] paper; 2] parch (parchment) ; 3] mixed</a:documentation>
               <choice>
                  <value>paper</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
                  <value>parch</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(parchment) </a:documentation>
                  <value>mixed</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
                  <data type="token">
                     <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
                  </data>
               </choice>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teisupport">
      <element name="support">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a description of the materials etc. which make up the physical support for the written part of a manuscript. [10.7.1. Object Description]</a:documentation>
         <ref name="_teimacro.specialPara"/>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teicollation">
      <element name="collation">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a description of how the leaves or bifolia are physically arranged. [10.7.1. Object Description]</a:documentation>
         <ref name="_teimacro.specialPara"/>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teifoliation">
      <element name="foliation">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">describes the numbering system or systems used to count the leaves or pages in a codex. [10.7.1.4. Foliation]</a:documentation>
         <ref name="_teimacro.specialPara"/>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teicondition">
      <element name="condition">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a description of the physical condition of the manuscript. [10.7.1.5. Condition]</a:documentation>
         <ref name="_teimacro.specialPara"/>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teilayoutDesc">
      <element name="layoutDesc">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(layout description) collects the set of layout descriptions applicable to a manuscript. [10.7.2. Writing, Decoration, and Other Notations]</a:documentation>
         <choice>
      
            <oneOrMore>
               <ref name="_teimodel.pLike"/>
            </oneOrMore>
      
            <group>
        
               <optional>
                  <ref name="_teisummary"/>
               </optional>
        
        
               <oneOrMore>
                  <ref name="_teilayout"/>
               </oneOrMore>
        
            </group>
         </choice>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teilayout">
      <element name="layout">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">describes how text is laid out on the page, including information about any ruling, pricking, or other evidence of page-preparation techniques. [10.7.2. Writing, Decoration, and Other Notations]</a:documentation>
         <ref name="_teimacro.specialPara"/>
         <ref name="_teiatt.global.attributes"/>
         <optional>
            <attribute name="columns">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the number of columns per page</a:documentation>
               <list>
                  <data type="nonNegativeInteger"/>
                  <optional>
                     <data type="nonNegativeInteger"/>
                  </optional>
               </list>
            </attribute>
         </optional>
         <optional>
            <attribute name="streams">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(textual streams) indicates the number of streams per page, each of which contains an independent textual stream</a:documentation>
               <list>
                  <data type="nonNegativeInteger"/>
                  <optional>
                     <data type="nonNegativeInteger"/>
                  </optional>
               </list>
            </attribute>
         </optional>
         <optional>
            <attribute name="ruledLines">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the number of ruled lines per column</a:documentation>
               <list>
                  <data type="nonNegativeInteger"/>
                  <optional>
                     <data type="nonNegativeInteger"/>
                  </optional>
               </list>
            </attribute>
         </optional>
         <optional>
            <attribute name="writtenLines">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the number of written lines per column</a:documentation>
               <list>
                  <data type="nonNegativeInteger"/>
                  <optional>
                     <data type="nonNegativeInteger"/>
                  </optional>
               </list>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teihandDesc">
      <element name="handDesc">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(description of hands) contains a description of all the different hands used in a manuscript. [10.7.2. Writing, Decoration, and Other Notations]</a:documentation>
         <choice>
      
            <oneOrMore>
               <ref name="_teimodel.pLike"/>
            </oneOrMore>
      
            <group>
        
               <optional>
                  <ref name="_teisummary"/>
               </optional>
        
        
               <oneOrMore>
                  <ref name="_teihandNote"/>
               </oneOrMore>
        
            </group>
         </choice>
         <ref name="_teiatt.global.attributes"/>
         <optional>
            <attribute name="hands">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the number of distinct hands identified within the manuscript</a:documentation>
               <data type="nonNegativeInteger"/>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teitypeDesc">
      <element name="typeDesc">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a description of the typefaces or other aspects of the printing of an incunable or other printed source. [10.7.2.1. Writing]</a:documentation>
         <choice>
      
            <oneOrMore>
               <ref name="_teimodel.pLike"/>
            </oneOrMore>
      
            <group>
        
               <optional>
                  <ref name="_teisummary"/>
               </optional>
        
        
               <oneOrMore>
                  <ref name="_teitypeNote"/>
               </oneOrMore>
        
            </group>
         </choice>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teitypeNote">
      <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. [10.7.2. Writing, Decoration, and Other Notations]</a:documentation>
         <ref name="_teimacro.specialPara"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.handFeatures.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiscriptDesc">
      <element name="scriptDesc">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a description of the scripts used in a manuscript or similar source. [10.7.2.1. Writing]</a:documentation>
         <choice>
      
            <oneOrMore>
               <ref name="_teimodel.pLike"/>
            </oneOrMore>
      
            <group>
        
               <optional>
                  <ref name="_teisummary"/>
               </optional>
        
        
               <oneOrMore>
                  <ref name="_teiscriptNote"/>
               </oneOrMore>
        
            </group>
         </choice>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teimusicNotation">
      <element name="musicNotation">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains description of type of musical notation. [10.7.2. Writing, Decoration, and Other Notations]</a:documentation>
         <ref name="_teimacro.specialPara"/>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teidecoDesc">
      <element name="decoDesc">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(decoration description) contains a description of the decoration of a manuscript, either as a sequence of paragraphs, or as a sequence of topically organized decoNote elements. [10.7.3. Bindings, Seals, and Additional Material]</a:documentation>
         <choice>
      
            <oneOrMore>
               <ref name="_teimodel.pLike"/>
            </oneOrMore>
      
            <group>
        
               <optional>
                  <ref name="_teisummary"/>
               </optional>
        
        
               <oneOrMore>
                  <ref name="_teidecoNote"/>
               </oneOrMore>
        
            </group>
         </choice>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teidecoNote">
      <element name="decoNote">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(note on decoration) contains a note describing either a decorative component of a manuscript, or a fairly homogenous class of such components. [10.7.3. Bindings, Seals, and Additional Material]</a:documentation>
         <ref name="_teimacro.specialPara"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiadditions">
      <element name="additions">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a description of any significant additions found within a manuscript, such as marginalia or other annotations. [10.7.2. Writing, Decoration, and Other Notations]</a:documentation>
         <ref name="_teimacro.specialPara"/>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teibindingDesc">
      <element name="bindingDesc">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(binding description) describes the present and former bindings of a manuscript, either as a series of paragraphs or as a series of distinct binding elements, one for each binding of the manuscript. [10.7.3.1. Binding Descriptions]</a:documentation>
         <choice>
      
            <oneOrMore>
               <choice>
                  <ref name="_teimodel.pLike"/>
                  <ref name="_teidecoNote"/>
                  <ref name="_teicondition"/>
               </choice>
            </oneOrMore>
      
      
            <oneOrMore>
               <ref name="_teibinding"/>
            </oneOrMore>
      
         </choice>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teibinding">
      <element name="binding">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a description of one binding, i.e. type of covering, boards, etc. applied to a manuscript. [10.7.3.1. Binding Descriptions]</a:documentation>
         <oneOrMore>
            <choice>
               <ref name="_teimodel.pLike"/>
               <ref name="_teicondition"/>
               <ref name="_teidecoNote"/>
            </choice>
         </oneOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.datable.attributes"/>
         <optional>
            <attribute name="contemporary">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies whether or not the binding is contemporary with the majority of its contents</a:documentation>
               <choice>
                  <data type="boolean"/>
                  <choice>
                     <value>unknown</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
                     <value>inapplicable</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
                  </choice>
               </choice>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teisealDesc">
      <element name="sealDesc">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(seal description) describes the seals or similar items related to the object described, either as a series of paragraphs or as a series of seal elements. [10.7.3.2. Seals]</a:documentation>
         <choice>
      
            <oneOrMore>
               <ref name="_teimodel.pLike"/>
            </oneOrMore>
      
            <group>
        
               <optional>
                  <ref name="_teisummary"/>
               </optional>
        
        
               <oneOrMore>
                  <choice>
                     <ref name="_teidecoNote"/>
                     <ref name="_teiseal"/>
                     <ref name="_teicondition"/>
                  </choice>
               </oneOrMore>
        
            </group>
         </choice>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiseal">
      <element name="seal">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a description of one seal or similar applied to the object described [10.7.3.2. Seals]</a:documentation>
         <oneOrMore>
            <choice>
               <ref name="_teimodel.pLike"/>
               <ref name="_teidecoNote"/>
            </choice>
         </oneOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.datable.attributes"/>
         <optional>
            <attribute name="contemporary">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies whether or not the seal is contemporary with the item to which it is affixed</a:documentation>
               <choice>
                  <data type="boolean"/>
                  <choice>
                     <value>unknown</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
                     <value>inapplicable</value>
                     <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
                  </choice>
               </choice>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teiaccMat">
      <element name="accMat">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(accompanying material) contains details of any significant additional material which may be closely associated with the manuscript being described, such as non-contemporaneous documents or fragments bound in with the manuscript at some earlier historical period. [10.7.3.3. Accompanying Material]</a:documentation>
         <ref name="_teimacro.specialPara"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teihistory">
      <element name="history">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">groups elements describing the full history of a manuscript or manuscript part. [10.8. History]</a:documentation>
         <choice>
      
            <oneOrMore>
               <ref name="_teimodel.pLike"/>
            </oneOrMore>
      
            <group>
        
               <optional>
                  <ref name="_teisummary"/>
               </optional>
        
        
               <optional>
                  <ref name="_teiorigin"/>
               </optional>
        
        
               <zeroOrMore>
                  <ref name="_teiprovenance"/>
               </zeroOrMore>
        
        
               <optional>
                  <ref name="_teiacquisition"/>
               </optional>
        
            </group>
         </choice>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiorigin">
      <element name="origin">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains any descriptive or other information concerning the origin of a manuscript or manuscript part. [10.8. History]</a:documentation>
         <ref name="_teimacro.specialPara"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.editLike.attributes"/>
         <ref name="_teiatt.datable.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiprovenance">
      <element name="provenance">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains any descriptive or other information concerning a single identifiable episode during the history of a manuscript or manuscript part, after its creation but before its acquisition. [10.8. History]</a:documentation>
         <ref name="_teimacro.specialPara"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.datable.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiacquisition">
      <element name="acquisition">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains any descriptive or other information concerning the process by which a manuscript or manuscript part entered the holding institution. [10.8. History]</a:documentation>
         <ref name="_teimacro.specialPara"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.datable.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiadditional">
      <element name="additional">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">groups additional information, combining bibliographic information about a manuscript, or surrogate copies of it with curatorial or administrative information. [10.9. Additional Information]</a:documentation>
         <group>
      
            <optional>
               <ref name="_teiadminInfo"/>
            </optional>
      
      
            <optional>
               <ref name="_teisurrogates"/>
            </optional>
      
      
            <optional>
               <ref name="_teilistBibl"/>
            </optional>
      
         </group>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiadminInfo">
      <element name="adminInfo">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(administrative information) contains information about the present custody and availability of the manuscript, and also about the record description itself. [10.9.1. Administrative Information]</a:documentation>
         <group>
      
            <optional>
               <ref name="_teirecordHist"/>
            </optional>
      
      
            <optional>
               <ref name="_teiavailability"/>
            </optional>
      
      
            <optional>
               <ref name="_teicustodialHist"/>
            </optional>
      
      
            <optional>
               <ref name="_teimodel.noteLike"/>
            </optional>
        
      
         </group>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teirecordHist">
      <element name="recordHist">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(recorded history) provides information about the source and revision status of the parent manuscript description itself. [10.9.1. Administrative Information]</a:documentation>
         <choice>
      
            <oneOrMore>
               <ref name="_teimodel.pLike"/>
            </oneOrMore>
      
            <group>
               <ref name="_teisource"/>
        
               <zeroOrMore>
                  <ref name="_teichange"/>
               </zeroOrMore>
        
            </group>
         </choice>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teisource">
      <element name="source">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">describes the original source for the information contained with a manuscript description. [10.9.1.1. Record History]</a:documentation>
         <ref name="_teimacro.specialPara"/>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teicustodialHist">
      <element name="custodialHist">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(custodial history) contains a description of a manuscript's custodial history, either as running prose or as a series of dated custodial events. [10.9.1.2. Availability and Custodial History]</a:documentation>
         <choice>
      
            <oneOrMore>
               <ref name="_teimodel.pLike"/>
            </oneOrMore>
      
      
            <oneOrMore>
               <ref name="_teicustEvent"/>
            </oneOrMore>
      
         </choice>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teicustEvent">
      <element name="custEvent">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(custodial event) describes a single event during the custodial history of a manuscript. [10.9.1.2. Availability and Custodial History]</a:documentation>
         <ref name="_teimacro.specialPara"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.datable.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teisurrogates">
      <element name="surrogates">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains information about any representations of the manuscript being described which may exist in the holding institution or elsewhere. [10.9. Additional Information]</a:documentation>
         <ref name="_teimacro.specialPara"/>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teimsPart">
      <element name="msPart">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(manuscript part) contains information about an originally distinct manuscript or part of a manuscript, which is now part of a composite manuscript. [10.10. Manuscript Parts]</a:documentation>
         <group>
            <ref name="_teimsIdentifier"/>
            <zeroOrMore>
               <ref name="_teimodel.headLike"/>
            </zeroOrMore>
            <choice>
               <oneOrMore>
                  <ref name="_teimodel.pLike"/>
               </oneOrMore>
               <group>
                  <optional>
                     <ref name="_teimsContents"/>
                  </optional>
                  <optional>
                     <ref name="_teiphysDesc"/>
                  </optional>
                  <optional>
                     <ref name="_teihistory"/>
                  </optional>
                  <optional>
                     <ref name="_teiadditional"/>
                  </optional>
                  <zeroOrMore>
                     <ref name="_teimsPart"/>
                  </zeroOrMore>
               </group>
            </choice>
         </group>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teimsFrag">
      <element name="msFrag">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(manuscript fragment) contains information about a fragment of a scattered manuscript now held as a single unit or bound into a larger manuscript. [10.11. Manuscript Fragments]</a:documentation>
         <group>
            <choice>
                <ref name="_teialtIdentifier"/>
                <ref name="_teimsIdentifier"/>
            </choice>
            <zeroOrMore>
               <ref name="_teimodel.headLike"/>
            </zeroOrMore>
            <choice>
                <oneOrMore>
                  <ref name="_teimodel.pLike"/>
               </oneOrMore>
                <group>
                    <optional>
                     <ref name="_teimsContents"/>
                  </optional>
                    <optional>
                     <ref name="_teiphysDesc"/>
                  </optional>
                    <optional>
                     <ref name="_teihistory"/>
                  </optional>
                    <optional>
                     <ref name="_teiadditional"/>
                  </optional>
                </group>
            </choice>
        </group>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teimodel.rdgLike">
      <choice>
         <ref name="_teirdg"/>
      </choice>
   </define>
   <define name="_teimodel.rdgPart">
      <choice>
         <ref name="_teispeaker"/>
         <ref name="_teiwit"/>
         <ref name="_teiwitStart"/>
         <ref name="_teiwitEnd"/>
         <ref name="_teilacunaStart"/>
         <ref name="_teilacunaEnd"/>
      </choice>
   </define>
   <define name="_teiatt.rdgPart.attributes">
      <ref name="_teiatt.rdgPart.attribute.wit"/>
   </define>
   <define name="_teiatt.rdgPart.attribute.wit">
      <optional>
         <attribute name="wit">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(witness or witnesses) contains a space-delimited list of one or more sigla indicating the witnesses to this reading beginning or ending at this point.</a:documentation>
            <list>
               <oneOrMore>
                  <data type="anyURI"/>
               </oneOrMore>
            </list>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.witnessed.attributes">
      <ref name="_teiatt.witnessed.attribute.wit"/>
   </define>
   <define name="_teiatt.witnessed.attribute.wit">
      <optional>
         <attribute name="wit">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(witness or witnesses) contains a space-delimited list of one or more pointers indicating the witnesses which attest to a given reading.</a:documentation>
            <list>
               <oneOrMore>
                  <data type="anyURI"/>
               </oneOrMore>
            </list>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.textCritical.attributes">
      <ref name="_teiatt.written.attributes"/>
      <ref name="_teiatt.textCritical.attribute.type"/>
      <ref name="_teiatt.textCritical.attribute.cause"/>
      <ref name="_teiatt.textCritical.attribute.varSeq"/>
      <ref name="_teiatt.textCritical.attribute.require"/>
   </define>
   <define name="_teiatt.textCritical.attribute.type">
      <optional>
         <attribute name="type">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
            <list>
               <oneOrMore>
                  <data type="token">
                     <param name="pattern">substantive|ortographic|(type_[1-8][a-z]{0,2}\*?)</param>
                  </data>
               </oneOrMore>
            </list>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.textCritical.attribute.cause">
      <optional>
         <attribute name="cause">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">classifies the cause for the variant reading, according to any appropriate typology of possible origins.
Sample values include: 1] homeoteleuton; 2] homeoarchy; 3] paleographicConfusion; 4] haplography; 5] dittography; 6] falseEmendation</a:documentation>
            <data type="token">
               <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
            </data>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.textCritical.attribute.varSeq">
      <optional>
         <attribute name="varSeq">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(variant sequence) provides a number indicating the position of this reading in a sequence, when there is reason to presume a sequence to the variants. </a:documentation>
            <data type="nonNegativeInteger"/>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.textCritical.attribute.require">
      <optional>
         <attribute name="require">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">points to other readings that are required when adopting the current reading or lemma.</a:documentation>
            <list>
               <oneOrMore>
                  <data type="anyURI"/>
               </oneOrMore>
            </list>
         </attribute>
      </optional>
   </define>
   <define name="_teiapp">
      <element name="app">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(apparatus entry) contains one entry in a critical apparatus, with an optional lemma and usually one or more readings or notes on the relevant passage. [12.1.1. The Apparatus Entry]</a:documentation>
         <group>
            <optional>
               <ref name="_teilem"/>
            </optional>
            <zeroOrMore>
               <choice>
                  <ref name="_teimodel.rdgLike"/>
                  <ref name="_teimodel.noteLike"/>
                  <ref name="_teiwit"/>      
                  <ref name="_teirdgGrp"/>      
               </choice>
            </zeroOrMore>
         </group>
         <ref name="_teiatt.global.attributes"/>
         <optional>
            <attribute name="type">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">classifies the variation contained in this element according to some convenient typology.</a:documentation>
               <data type="token">
                  <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
               </data>
            </attribute>
         </optional>
         <optional>
            <attribute name="from">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">identifies the beginning of the lemma in the base text.</a:documentation>
               <data type="anyURI"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="to">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">identifies the endpoint of the lemma in the base text.</a:documentation>
               <data type="anyURI"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="loc">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(location) indicates the location of the variation, when the location-referenced method of apparatus markup is used.</a:documentation>
               <list>
                  <oneOrMore>
                     <data type="token">
                        <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
                     </data>
                  </oneOrMore>
               </list>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teilistApp">
      <element name="listApp">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(list of apparatus entries) contains a list of apparatus entries. [12.2. Linking the Apparatus to the Text]</a:documentation>
         <group>
      
            <zeroOrMore>
               <ref name="_teimodel.headLike"/>
            </zeroOrMore>
      
      
            <oneOrMore>
               <choice>
                  <ref name="_teiapp"/>
                  <ref name="_teilistApp"/>
               </choice>
            </oneOrMore>
      
         </group>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.sortable.attributes"/>
         <ref name="_teiatt.declarable.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teilem">
      <element name="lem">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(lemma) contains the lemma, or base text, of a textual variation. [12.1. The Apparatus Entry, Readings, and Witnesses]</a:documentation>
         <zeroOrMore>
            <choice>
               <text/>
               <ref name="_teimodel.divLike"/>
               <ref name="_teimodel.divPart"/>
               <ref name="_teimodel.gLike"/>
               <ref name="_teimodel.phrase"/>
               <ref name="_teimodel.inter"/>
               <ref name="_teimodel.global"/>
               <ref name="_teimodel.rdgPart"/>
            </choice>
         </zeroOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.textCritical.attributes"/>
         <ref name="_teiatt.witnessed.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teirdg">
      <element name="rdg">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(reading) contains a single reading within a textual variation. [12.1. The Apparatus Entry, Readings, and Witnesses]</a:documentation>
         <zeroOrMore>
            <choice>
               <text/>
               <ref name="_teimodel.divLike"/>
               <ref name="_teimodel.divPart"/>
               <ref name="_teimodel.gLike"/>
               <ref name="_teimodel.phrase"/>
               <ref name="_teimodel.inter"/>
               <ref name="_teimodel.global"/>
               <ref name="_teimodel.rdgPart"/>
            </choice>
         </zeroOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.textCritical.attributes"/>
         <ref name="_teiatt.witnessed.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teirdgGrp">
      <element name="rdgGrp">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(reading group) within a textual variation, groups two or more readings perceived to have a genetic relationship or other affinity. [12.1. The Apparatus Entry, Readings, and Witnesses]</a:documentation>
         <oneOrMore>
            <choice>
               <group>
                  <ref name="_teirdgGrp"/>
                  <optional>
                     <ref name="_teiwit"/>
                  </optional>
               </group>
          
               <zeroOrMore>
                  <group>
                     <optional>
                        <group>
                           <ref name="_teilem"/>
                           <optional>
                              <ref name="_teiwit"/>
                           </optional>
                        </group>
                     </optional>
              
                     <group>
                        <ref name="_teimodel.rdgLike"/>
                        <optional>
                           <ref name="_teiwit"/>
                        </optional>
                     </group>
                  </group>
               </zeroOrMore>
          
               <zeroOrMore>
                  <ref name="_teimodel.noteLike"/>
               </zeroOrMore>
          
            </choice>
         </oneOrMore>
         <pattern xmlns="http://purl.oclc.org/dsdl/schematron"
                  id="faust-tei-rdgGrp-only1lem-constraint-assert-14">
            <rule context="tei:rdgGrp">
               <sch:assert xmlns:sch="http://purl.oclc.org/dsdl/schematron"
                           xmlns="http://www.tei-c.org/ns/1.0"
                           xmlns:rng="http://relaxng.org/ns/structure/1.0"
                           xmlns:ge="http://www.tei-c.org/ns/geneticEditions"
                           xmlns:svg="http://www.w3.org/2000/svg"
                           xmlns:f="http://www.faustedition.net/ns"
                           test="count(tei:lem) &lt; 2">Only one &lt;lem&gt; element may appear within a &lt;rdgGrp&gt;</sch:assert>
            </rule>
         </pattern>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.textCritical.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiwitDetail">
      <element name="witDetail">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(witness detail) gives further information about a particular witness, or witnesses, to a particular reading. [12.1. The Apparatus Entry, Readings, and Witnesses]</a:documentation>
         <zeroOrMore>
            <choice>
               <text/>
               <ref name="_teimodel.gLike"/>
               <ref name="_teimodel.phrase"/>
               <ref name="_teimodel.global"/>
               <ref name="_teibibl"/>
            </choice>
         </zeroOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.placement.attributes"/>
         <ref name="_teiatt.pointing.attributes"/>
         <attribute name="wit">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(witnesses) indicates the sigil or sigla identifying the witness or witnesses to which the detail refers.</a:documentation>
            <list>
               <oneOrMore>
                  <data type="anyURI"/>
               </oneOrMore>
            </list>
         </attribute>
         <optional>
            <attribute name="type">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">describes the type of information given about the witness.</a:documentation>
               <data type="token">
                  <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
               </data>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teiwit">
      <element name="wit">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a list of one or more sigla of witnesses attesting a given reading, in a textual variation. [12.1.4. Witness Information]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.rdgPart.attributes"/>
         <optional>
            <attribute name="is-base" ns="http://www.faustedition.net/ns">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">If present and true, this witness is the base for the text at the corresponding place</a:documentation>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teilistWit">
      <element name="listWit">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(witness list) lists definitions for all the witnesses referred to by a critical apparatus, optionally grouped hierarchically. [12.1. The Apparatus Entry, Readings, and Witnesses]</a:documentation>
         <group>
      
      
            <optional>
               <ref name="_teimodel.headLike"/>
            </optional>
      
      
            <oneOrMore>
               <choice>
                  <ref name="_teiwitness"/>
                  <ref name="_teilistWit"/>
               </choice>
            </oneOrMore>
        
      
         </group>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.sortable.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiwitness">
      <element name="witness">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains either a description of a single witness referred to within the critical apparatus, or a list of witnesses which is to be referred to by a single sigil. [12.1. The Apparatus Entry, Readings, and Witnesses]</a:documentation>
         <ref name="_teimacro.limitedContent"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.sortable.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiwitStart">
      <element name="witStart">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(fragmented witness start) indicates the beginning, or resumption, of the text of a fragmentary witness. [12.1.5. Fragmentary Witnesses]</a:documentation>
         <empty/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.rdgPart.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiwitEnd">
      <element name="witEnd">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(fragmented witness end) indicates the end, or suspension, of the text of a fragmentary witness. [12.1.5. Fragmentary Witnesses]</a:documentation>
         <empty/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.rdgPart.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teilacunaStart">
      <element name="lacunaStart">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the beginning of a lacuna in the text of a mostly complete textual witness. [12.1.5. Fragmentary Witnesses]</a:documentation>
         <empty/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.rdgPart.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teilacunaEnd">
      <element name="lacunaEnd">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the end of a lacuna in a mostly complete textual witness. [12.1.5. Fragmentary Witnesses]</a:documentation>
         <empty/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.rdgPart.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teivariantEncoding">
      <element name="variantEncoding">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">declares the method used to encode text-critical variants. [12.1.1. The Apparatus Entry]</a:documentation>
         <empty/>
         <ref name="_teiatt.global.attributes"/>
         <attribute name="method">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates which method is used to encode the apparatus of variants.</a:documentation>
            <choice>
               <value>location-referenced</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">apparatus uses line numbers or other canonical reference scheme referenced in a base text.</a:documentation>
               <value>double-end-point</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">apparatus indicates the precise locations of the beginning and ending of each lemma relative to a base text.</a:documentation>
               <value>parallel-segmentation</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">alternate readings of a passage are given in parallel in the text; no notion of a base text is necessary.</a:documentation>
            </choice>
         </attribute>
         <attribute name="location">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates whether the apparatus appears within the running text or external to it.</a:documentation>
            <choice>
               <value>internal</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">apparatus appears within the running text.</a:documentation>
               <value>external</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">apparatus appears outside the base text.</a:documentation>
            </choice>
         </attribute>
         <pattern xmlns="http://purl.oclc.org/dsdl/schematron"
                  id="faust-tei-variantEncoding-location-variantEncodingLocation-constraint-rule-11">
            <sch:rule xmlns:sch="http://purl.oclc.org/dsdl/schematron"
                      xmlns="http://www.tei-c.org/ns/1.0"
                      xmlns:rng="http://relaxng.org/ns/structure/1.0"
                      xmlns:ge="http://www.tei-c.org/ns/geneticEditions"
                      xmlns:svg="http://www.w3.org/2000/svg"
                      xmlns:f="http://www.faustedition.net/ns"
                      context="tei:variantEncoding">
               <sch:assert test="(@location != 'external') or (@method != 'parallel-segmentation')">
              The @location value "external" is inconsistent with the
              parallel-segmentation method of apparatus markup.</sch:assert>
            </sch:rule>
         </pattern>
         <empty/>
      </element>
   </define>
   <define name="_teiatt.global.facs.attributes">
      <ref name="_teiatt.global.facs.attribute.facs"/>
   </define>
   <define name="_teiatt.global.facs.attribute.facs">
      <optional>
         <attribute name="facs">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(facsimile) points to all or part of an image which corresponds with the content of the element.</a:documentation>
            <list>
               <oneOrMore>
                  <data type="anyURI"/>
               </oneOrMore>
            </list>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.global.change.attributes">
      <ref name="_teiatt.global.change.attribute.change"/>
   </define>
   <define name="_teiatt.global.change.attribute.change">
      <optional>
         <attribute name="change">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">points to one or more change elements documenting a state or revision campaign to which the element bearing this attribute and its children have been assigned by the encoder.</a:documentation>
            <list>
               <oneOrMore>
                  <data type="anyURI"/>
               </oneOrMore>
            </list>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.coordinated.attributes">
      <ref name="_teiatt.coordinated.attribute.start"/>
      <ref name="_teiatt.coordinated.attribute.ulx"/>
      <ref name="_teiatt.coordinated.attribute.uly"/>
      <ref name="_teiatt.coordinated.attribute.lrx"/>
      <ref name="_teiatt.coordinated.attribute.lry"/>
      <ref name="_teiatt.coordinated.attribute.points"/>
   </define>
   <define name="_teiatt.coordinated.attribute.start">
      <optional>
         <attribute name="start">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the element within a transcription of the text containing at least the start of the writing represented by this zone or surface.</a:documentation>
            <data type="anyURI"/>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.coordinated.attribute.ulx">
      <optional>
         <attribute name="ulx">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">gives the x coordinate value for the upper left corner of a rectangular space.</a:documentation>
            <choice>
               <data type="double"/>
               <data type="token">
                  <param name="pattern">(\-?[\d]+/\-?[\d]+)</param>
               </data>
               <data type="decimal"/>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.coordinated.attribute.uly">
      <optional>
         <attribute name="uly">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">gives the y coordinate value for the upper left corner of a rectangular space.</a:documentation>
            <choice>
               <data type="double"/>
               <data type="token">
                  <param name="pattern">(\-?[\d]+/\-?[\d]+)</param>
               </data>
               <data type="decimal"/>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.coordinated.attribute.lrx">
      <optional>
         <attribute name="lrx">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">gives the x coordinate value for the lower right corner of a rectangular space.</a:documentation>
            <choice>
               <data type="double"/>
               <data type="token">
                  <param name="pattern">(\-?[\d]+/\-?[\d]+)</param>
               </data>
               <data type="decimal"/>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.coordinated.attribute.lry">
      <optional>
         <attribute name="lry">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">gives the y coordinate value for the lower right corner of a rectangular space.</a:documentation>
            <choice>
               <data type="double"/>
               <data type="token">
                  <param name="pattern">(\-?[\d]+/\-?[\d]+)</param>
               </data>
               <data type="decimal"/>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.coordinated.attribute.points">
      <optional>
         <attribute name="points">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">identifies a two dimensional area within the bounding box specified by the other attributes by means of a series of pairs of numbers, each of which gives the x,y coordinates of a point on a line enclosing the area.</a:documentation>
            <list>
               <data type="token">
                  <param name="pattern">(\-?[0-9]+\.?[0-9]*,\-?[0-9]+\.?[0-9]*)</param>
               </data>
               <data type="token">
                  <param name="pattern">(\-?[0-9]+\.?[0-9]*,\-?[0-9]+\.?[0-9]*)</param>
               </data>
               <data type="token">
                  <param name="pattern">(\-?[0-9]+\.?[0-9]*,\-?[0-9]+\.?[0-9]*)</param>
               </data>
               <zeroOrMore>
                  <data type="token">
                     <param name="pattern">(\-?[0-9]+\.?[0-9]*,\-?[0-9]+\.?[0-9]*)</param>
                  </data>
               </zeroOrMore>
            </list>
         </attribute>
      </optional>
   </define>
   <define name="_teifacsimile">
      <element name="facsimile">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a representation of some written source in the form of a set of images rather than as transcribed or encoded text. [11.1. Digital Facsimiles]</a:documentation>
         <group>
      
            <optional>
               <ref name="_teifront"/>
            </optional>
      
      
            <oneOrMore>
               <choice>
                  <ref name="_teimodel.graphicLike"/>
                  <ref name="_teisurface"/>
                  <ref name="_teisurfaceGrp"/>
               </choice>
            </oneOrMore>
      
      
            <optional>
               <ref name="_teiback"/>
            </optional>
      
         </group>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.declaring.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teisourceDoc">
      <element name="sourceDoc">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a transcription or other representation of a single source document potentially forming part of a dossier génétique or collection of sources. [11.1. Digital Facsimiles 11.2.2. Embedded Transcription]</a:documentation>
         <oneOrMore>
            <choice>
               <ref name="_teimodel.global"/>
               <ref name="_teimodel.graphicLike"/>
               <ref name="_teisurface"/>
               <ref name="_teisurfaceGrp"/>
            </choice>
         </oneOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.declaring.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teisurface">
      <element name="surface">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">defines a written surface as a two-dimensional coordinate space, optionally grouping one or more graphic representations of that space, zones of interest within that space, and transcriptions of the writing within them. [11.1. Digital Facsimiles 11.2.2. Embedded Transcription]</a:documentation>
         <group>
      
            <zeroOrMore>
               <choice>
                  <ref name="_teimodel.global"/>
                  <ref name="_teimodel.labelLike"/>
                  <ref name="_teimodel.graphicLike"/>
               </choice>
            </zeroOrMore>
      
            <zeroOrMore>
               <group>
        
                  <choice>
                     <ref name="_teizone"/>
                     <ref name="_teiline"/>
                     <ref name="_teipath"/>
                     <ref name="_teisurface"/>
                     <ref name="_teisurfaceGrp"/>
                  </choice>
        
        
                  <zeroOrMore>
                     <ref name="_teimodel.global"/>
                  </zeroOrMore>
        
               </group>
            </zeroOrMore>
         </group>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.coordinated.attributes"/>
         <ref name="_teiatt.declaring.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <optional>
            <attribute name="attachment">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">describes the method by which this surface is or was connected to the main surface
Sample values include: 1] glued; 2] pinned; 3] sewn</a:documentation>
               <data type="token">
                  <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
               </data>
            </attribute>
         </optional>
         <optional>
            <attribute name="flipping">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates whether the surface is attached and folded in such a way as to provide two writing surfaces</a:documentation>
               <data type="boolean"/>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teisurfaceGrp">
      <element name="surfaceGrp">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">defines any kind of useful grouping of written surfaces, for example the recto and verso of a single leaf, which the encoder wishes to treat as a single unit. [11.1. Digital Facsimiles]</a:documentation>
         <oneOrMore>
            <choice>
               <ref name="_teimodel.global"/>
               <ref name="_teisurface"/>
               <ref name="_teisurfaceGrp"/>
            </choice>
         </oneOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.declaring.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teizone">
      <element name="zone">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">defines any two-dimensional area within a surface element. [11.1. Digital Facsimiles 11.2.2. Embedded Transcription]</a:documentation>
         <zeroOrMore>
            <choice>
               <text/>
               <ref name="_teimodel.graphicLike"/>
               <ref name="_teimodel.global"/>
               <ref name="_teisurface"/>
               <ref name="_teimodel.linePart"/>
            </choice>
         </zeroOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.coordinated.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.written.attributes"/>
         <optional>
            <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                       name="rotate"
                       a:defaultValue="0">
               <a:documentation>indicates the amount by which this zone has been rotated clockwise, with respect to the normal orientation of the parent surface element as implied by the dimensions given in the msDesc element or by the coordinates of the surface itself. The orientation is expressed in arc degrees.</a:documentation>
               <data type="nonNegativeInteger"/>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teipath">
      <element name="path">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">defines any line passing through two or more points within a surface element. [11.1. Digital Facsimiles 11.2.2. Embedded Transcription]</a:documentation>
         <empty/>
         <pattern xmlns="http://purl.oclc.org/dsdl/schematron"
                  id="faust-tei-path-pathmustnotbeclosed-constraint-rule-12">
            <sch:rule xmlns:sch="http://purl.oclc.org/dsdl/schematron"
                      xmlns="http://www.tei-c.org/ns/1.0"
                      xmlns:rng="http://relaxng.org/ns/structure/1.0"
                      xmlns:ge="http://www.tei-c.org/ns/geneticEditions"
                      xmlns:svg="http://www.w3.org/2000/svg"
                      xmlns:f="http://www.faustedition.net/ns"
                      context="tei:path[@points]">
        
               <sch:let name="firstPair" value="tokenize( normalize-space( @points ), ' ')[1]"/>
               <sch:let name="lastPair"
                        value="tokenize( normalize-space( @points ), ' ')[last()]"/>
               <sch:let name="firstX" value="xs:float( substring-before( $firstPair, ',') )"/>
               <sch:let name="firstY" value="xs:float( substring-after( $firstPair, ',') )"/>
               <sch:let name="lastX" value="xs:float( substring-before( $lastPair, ',') )"/>
               <sch:let name="lastY" value="xs:float( substring-after( $lastPair, ',') )"/>
               <sch:report test="$firstX eq $lastX  and  $firstY eq $lastY">The first and
          last elements of this path are the same. To specify a closed polygon, use
          the zone element rather than the path element. </sch:report>
            </sch:rule>
         </pattern>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.coordinated.attribute.start"/>
         <ref name="_teiatt.coordinated.attribute.ulx"/>
         <ref name="_teiatt.coordinated.attribute.uly"/>
         <ref name="_teiatt.coordinated.attribute.lrx"/>
         <ref name="_teiatt.coordinated.attribute.lry"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.written.attributes"/>
         <optional>
            <attribute name="points">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">identifies a line within the container or bounding box specified by the parent element by means of a series of two or more pairs of numbers, each of which gives the x,y coordinates of a point on the line.</a:documentation>
               <list>
                  <data type="token">
                     <param name="pattern">(\-?[0-9]+\.?[0-9]*,\-?[0-9]+\.?[0-9]*)</param>
                  </data>
                  <data type="token">
                     <param name="pattern">(\-?[0-9]+\.?[0-9]*,\-?[0-9]+\.?[0-9]*)</param>
                  </data>
                  <zeroOrMore>
                     <data type="token">
                        <param name="pattern">(\-?[0-9]+\.?[0-9]*,\-?[0-9]+\.?[0-9]*)</param>
                     </data>
                  </zeroOrMore>
               </list>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teiaddSpan">
      <element name="addSpan">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(added span of text) marks the beginning of a longer sequence of text added by an author, scribe, annotator or corrector (see also add). [11.3.1.4. Additions and Deletions]</a:documentation>
         <empty/>
         <pattern xmlns="http://purl.oclc.org/dsdl/schematron"
                  id="faust-tei-addSpan-spanTo-constraint-assert-16">
            <rule context="tei:addSpan">
               <sch:assert xmlns:sch="http://purl.oclc.org/dsdl/schematron"
                           xmlns="http://www.tei-c.org/ns/1.0"
                           xmlns:rng="http://relaxng.org/ns/structure/1.0"
                           xmlns:ge="http://www.tei-c.org/ns/geneticEditions"
                           xmlns:svg="http://www.w3.org/2000/svg"
                           xmlns:f="http://www.faustedition.net/ns"
                           test="@spanTo">The @spanTo attribute of <sch:name/> is required.</sch:assert>
            </rule>
         </pattern>
         <pattern xmlns="http://purl.oclc.org/dsdl/schematron"
                  id="faust-tei-addSpan-spanTo_fr-constraint-assert-17">
            <rule context="tei:addSpan">
               <sch:assert xmlns:sch="http://purl.oclc.org/dsdl/schematron"
                           xmlns="http://www.tei-c.org/ns/1.0"
                           xmlns:rng="http://relaxng.org/ns/structure/1.0"
                           xmlns:ge="http://www.tei-c.org/ns/geneticEditions"
                           xmlns:svg="http://www.w3.org/2000/svg"
                           xmlns:f="http://www.faustedition.net/ns"
                           test="@spanTo">L'attribut spanTo est requis.</sch:assert>
            </rule>
         </pattern>
         <ref name="_teiatt.changeRelated.attributes"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.transcriptional.attributes"/>
         <ref name="_teiatt.placement.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.spanning.attributes"/>
         <ref name="_teiatt.dimensions.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teidamage">
      <element name="damage">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains an area of damage to the text witness. [11.3.3.1. Damage, Illegibility, and Supplied Text]</a:documentation>
         <ref name="_teimacro.paraContent"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.damaged.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teidamageSpan">
      <element name="damageSpan">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(damaged span of text) marks the beginning of a longer sequence of text which is damaged in some way but still legible. [11.3.3.1. Damage, Illegibility, and Supplied Text]</a:documentation>
         <empty/>
         <pattern xmlns="http://purl.oclc.org/dsdl/schematron"
                  id="faust-tei-damageSpan-spanTo-constraint-assert-18">
            <rule context="tei:damageSpan">
               <assert xmlns:rng="http://relaxng.org/ns/structure/1.0"
                       xmlns:ge="http://www.tei-c.org/ns/geneticEditions"
                       xmlns:svg="http://www.w3.org/2000/svg"
                       xmlns:f="http://www.faustedition.net/ns"
                       test="@spanTo">
The @spanTo attribute of <name/> is required.</assert>
            </rule>
         </pattern>
         <pattern xmlns="http://purl.oclc.org/dsdl/schematron"
                  id="faust-tei-damageSpan-spanTo_fr-constraint-assert-19">
            <rule context="tei:damageSpan">
               <assert xmlns:rng="http://relaxng.org/ns/structure/1.0"
                       xmlns:ge="http://www.tei-c.org/ns/geneticEditions"
                       xmlns:svg="http://www.w3.org/2000/svg"
                       xmlns:f="http://www.faustedition.net/ns"
                       test="@spanTo">L'attribut spanTo est requis.</assert>
            </rule>
         </pattern>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.damaged.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.spanning.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teidelSpan">
      <element name="delSpan">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(deleted span of text) marks the beginning of a longer sequence of text deleted, marked as deleted, or otherwise signaled as superfluous or spurious by an author, scribe, annotator, or corrector. [11.3.1.4. Additions and Deletions]</a:documentation>
         <empty/>
         <pattern xmlns="http://purl.oclc.org/dsdl/schematron"
                  id="faust-tei-delSpan-spanTo-constraint-assert-20">
            <rule context="tei:delSpan">
               <assert xmlns:rng="http://relaxng.org/ns/structure/1.0"
                       xmlns:ge="http://www.tei-c.org/ns/geneticEditions"
                       xmlns:svg="http://www.w3.org/2000/svg"
                       xmlns:f="http://www.faustedition.net/ns"
                       test="@spanTo">The @spanTo attribute of <name/> is required.</assert>
            </rule>
         </pattern>
         <pattern xmlns="http://purl.oclc.org/dsdl/schematron"
                  id="faust-tei-delSpan-spanTo_fr-constraint-assert-21">
            <rule context="tei:delSpan">
               <assert xmlns:rng="http://relaxng.org/ns/structure/1.0"
                       xmlns:ge="http://www.tei-c.org/ns/geneticEditions"
                       xmlns:svg="http://www.w3.org/2000/svg"
                       xmlns:f="http://www.faustedition.net/ns"
                       test="@spanTo">L'attribut spanTo est requis.</assert>
            </rule>
         </pattern>
         <ref name="_teiatt.changeRelated.attributes"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.transcriptional.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.spanning.attributes"/>
         <ref name="_teiatt.dimensions.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiex">
      <element name="ex">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(editorial expansion) contains a sequence of letters added by an editor or transcriber when expanding an abbreviation. [11.3.1.2. Abbreviation and Expansion]</a:documentation>
         <ref name="_teimacro.xtext"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.editLike.attributes"/>
         <ref name="_teiatt.dimensions.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teifw">
      <element name="fw">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(forme work) contains a running head (e.g. a header, footer), catchword, or similar material appearing on the current page. [11.6. Headers, Footers, and Similar Matter]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.placement.attributes"/>
         <ref name="_teiatt.written.attributes"/>
         <optional>
            <attribute name="type">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">classifies the material encoded according to some useful typology.
Sample values include: 1] header; 2] footer; 3] pageNum (page number) ; 4] lineNum (line number) ; 5] sig (signature) ; 6] catch (catchword) </a:documentation>
               <data type="token">
                  <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
               </data>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teihandNotes">
      <element name="handNotes">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains one or more handNote elements documenting the different hands identified within the source texts. [11.3.2.1. Document Hands]</a:documentation>
         <oneOrMore>
            <ref name="_teihandNote"/>
         </oneOrMore>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teihandShift">
      <element name="handShift">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">marks the beginning of a sequence of text written in a new hand, or the beginning of a scribal stint. [11.3.2.1. Document Hands]</a:documentation>
         <empty/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.handFeatures.attributes"/>
         <optional>
            <attribute name="new">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates a handNote element describing the hand concerned.</a:documentation>
               <data type="anyURI"/>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teiam">
      <element name="am">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(abbreviation marker) contains a sequence of letters or signs present in an abbreviation which are omitted or replaced in the expanded form of the abbreviation. [11.3.1.2. Abbreviation and Expansion]</a:documentation>
         <zeroOrMore>
            <choice>
               <text/>
               <ref name="_teimodel.gLike"/>
               <ref name="_teimodel.pPart.transcriptional"/>
            </choice>
         </zeroOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.editLike.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teirestore">
      <element name="restore">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates restoration of text to an earlier state by cancellation of an editorial or authorial marking or instruction. [11.3.1.6. Cancellation of Deletions and Other Markings]</a:documentation>
         <ref name="_teimacro.paraContent"/>
         <ref name="_teiatt.changeRelated.attributes"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.transcriptional.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.dimensions.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teispace">
      <element name="space">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the location of a significant space in the text. [11.5.1. Space]</a:documentation>
         <zeroOrMore>
            <choice>
               <ref name="_teimodel.descLike"/>
               <ref name="_teimodel.certLike"/>
            </choice>
         </zeroOrMore>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.metrical.attributes"/>
         <ref name="_teiatt.global.attribute.rend"/>
         <ref name="_teiatt.global.attribute.nx"/>
         <ref name="_teiatt.global.attribute.xmlid"/>
         <ref name="_teiatt.global.attribute.n"/>
         <ref name="_teiatt.global.attribute.xmllang"/>
         <ref name="_teiatt.global.attribute.xmlbase"/>
         <ref name="_teiatt.global.attribute.xmlspace"/>
         <ref name="_teiatt.global.linking.attribute.corresp"/>
         <ref name="_teiatt.global.linking.attribute.synch"/>
         <ref name="_teiatt.global.linking.attribute.sameAs"/>
         <ref name="_teiatt.global.linking.attribute.copyOf"/>
         <ref name="_teiatt.global.linking.attribute.next"/>
         <ref name="_teiatt.global.linking.attribute.prev"/>
         <ref name="_teiatt.global.linking.attribute.exclude"/>
         <ref name="_teiatt.global.linking.attribute.select"/>
         <ref name="_teiatt.global.change.attribute.change"/>
         <ref name="_teiatt.layoutAlignment.attribute.left"/>
         <ref name="_teiatt.layoutAlignment.attribute.left-right"/>
         <ref name="_teiatt.layoutAlignment.attribute.right"/>
         <ref name="_teiatt.layoutAlignment.attribute.right-left"/>
         <ref name="_teiatt.layoutAlignment.attribute.top"/>
         <ref name="_teiatt.layoutAlignment.attribute.top-bottom"/>
         <ref name="_teiatt.layoutAlignment.attribute.bottom"/>
         <ref name="_teiatt.layoutAlignment.attribute.bottom-top"/>
         <ref name="_teiatt.layoutAlignment.attribute.pos"/>
         <ref name="_teiatt.global.responsibility.attribute.cert"/>
         <ref name="_teiatt.dimensions.attributes"/>
         <optional>
            <attribute name="resp">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(responsible party) (responsible party) indicates the individual responsible for identifying and measuring the space</a:documentation>
               <list>
                  <oneOrMore>
                     <data type="anyURI"/>
                  </oneOrMore>
               </list>
            </attribute>
         </optional>
         <optional>
            <attribute name="dim">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(dimension) indicates whether the space is horizontal or vertical.</a:documentation>
               <choice>
                  <value>horizontal</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">the space is horizontal.</a:documentation>
                  <value>vertical</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">the space is vertical.</a:documentation>
               </choice>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teisubst">
      <element name="subst">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(substitution) groups one or more deletions with one or more additions when the combination is to be regarded as a single intervention in the text. [11.3.1.5. Substitutions]</a:documentation>
         <oneOrMore>
            <choice>
               <ref name="_teiadd"/>
               <ref name="_teidel"/>
               <ref name="_teimodel.milestoneLike"/>
            </choice>
         </oneOrMore>
         <pattern xmlns="http://purl.oclc.org/dsdl/schematron"
                  id="faust-tei-subst-substContents1-constraint-assert-22">
            <rule context="tei:subst">
               <assert xmlns:rng="http://relaxng.org/ns/structure/1.0"
                       xmlns:ge="http://www.tei-c.org/ns/geneticEditions"
                       xmlns:svg="http://www.w3.org/2000/svg"
                       xmlns:f="http://www.faustedition.net/ns"
                       test="child::tei:add and child::tei:del">
                  <name/> must have at least one child add and at least one child del</assert>
            </rule>
         </pattern>
         <ref name="_teiatt.changeRelated.attributes"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.transcriptional.attributes"/>
         <ref name="_teiatt.dimensions.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teisubstJoin">
      <element name="substJoin">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(substitution join) identifies a series of possibly fragmented additions, deletions or other revisions on a manuscript that combine to make up a single intervention in the text [11.3.1.5. Substitutions]</a:documentation>
         <zeroOrMore>
            <choice>
               <ref name="_teimodel.descLike"/>
               <ref name="_teimodel.certLike"/>
            </choice>
         </zeroOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.pointing.attributes"/>
         <ref name="_teiatt.transcriptional.attributes"/>
         <ref name="_teiatt.dimensions.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teisupplied">
      <element name="supplied">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">signifies text supplied by the transcriber or editor for any reason; for example because the original cannot be read due to physical damage, or because of an obvious omission by the author or scribe. [11.3.3.1. Damage, Illegibility, and Supplied Text]</a:documentation>
         <ref name="_teimacro.paraContent"/>
         <ref name="_teiatt.global.source.attributes"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.editLike.attributes"/>
         <ref name="_teiatt.dimensions.attributes"/>
         <optional>
            <attribute name="reason">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">one or more words indicating why the text has had to be supplied, e.g. overbinding, faded-ink, lost-folio, omitted-in-original.</a:documentation>
               <list>
                  <oneOrMore>
                     <data type="token">
                        <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
                     </data>
                  </oneOrMore>
               </list>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teisurplus">
      <element name="surplus">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">marks text present in the source which the editor believes to be superfluous or redundant. [11.3.3.1. Damage, Illegibility, and Supplied Text]</a:documentation>
         <ref name="_teimacro.paraContent"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.editLike.attributes"/>
         <ref name="_teiatt.dimensions.attributes"/>
         <optional>
            <attribute name="reason">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">one or more words indicating why this text is believed to be superfluous, e.g. repeated, interpolated etc.</a:documentation>
               <list>
                  <oneOrMore>
                     <data type="token">
                        <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
                     </data>
                  </oneOrMore>
               </list>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teisecl">
      <element name="secl">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(secluded text) Secluded. Marks text present in the source which the editor believes to be genuine but out of its original place (which is unknown). [11.3.1.7. Text Omitted from or Supplied in the Transcription]</a:documentation>
         <ref name="_teimacro.paraContent"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.editLike.attributes"/>
         <ref name="_teiatt.dimensions.attributes"/>
         <optional>
            <attribute name="reason">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">one or more words indicating why this text has been secluded, e.g. interpolated etc.</a:documentation>
               <list>
                  <oneOrMore>
                     <data type="token">
                        <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
                     </data>
                  </oneOrMore>
               </list>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teiline">
      <element name="line">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains the transcription of a topographic line in the source document [11.2.2. Embedded Transcription]</a:documentation>
         <zeroOrMore>
            <choice>
               <text/>
               <ref name="_teimodel.global"/>
               <ref name="_teimodel.gLike"/>
               <ref name="_teimodel.linePart"/>
            </choice>
         </zeroOrMore>
         <ref name="_teiatt.typed.attribute.subtype"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.coordinated.attributes"/>
         <ref name="_teiatt.written.attributes"/>
         <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>
               <choice>
                  <value>inter</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(interlineare Zeile) </a:documentation>
                  <value>uncounted</value>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(nicht gezählte Zeile) </a:documentation>
               </choice>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teilistTranspose">
      <element name="listTranspose">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">supplies a list of transpositions, each of which is indicated at some point in a document typically by means of metamarks. [11.3.4.5. Transpositions]</a:documentation>
         <oneOrMore>
            <ref name="_teitranspose"/>
         </oneOrMore>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teimetamark">
      <element name="metamark">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains or describes any kind of graphic or written signal within a document the function of which is to determine how it should be read rather than forming part of the actual content of the document. [11.3.4.2. Metamarks]</a:documentation>
         <ref name="_teimacro.specialPara"/>
         <ref name="_teiatt.written.attributes"/>
         <ref name="_teiatt.spanning.attributes"/>
         <ref name="_teiatt.placement.attributes"/>
         <ref name="_teiatt.global.attributes"/>
         <optional>
            <attribute name="function">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">describes the function (for example status, insertion, deletion, transposition) of the metamark.</a:documentation>
               <data type="token">
                  <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
               </data>
            </attribute>
         </optional>
         <optional>
            <attribute name="target">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">identifies one or more elements to which the metamark applies.</a:documentation>
               <list>
                  <oneOrMore>
                     <data type="anyURI"/>
                  </oneOrMore>
               </list>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teimod">
      <element name="mod">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">represents any kind of modification identified within a single document. [11.3.4.1. Generic Modification]</a:documentation>
         <ref name="_teimacro.paraContent"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.transcriptional.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.spanning.attributes"/>
         <ref name="_teiatt.dimensions.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiredo">
      <element name="redo">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates one or more cancelled interventions in a document which have subsequently been marked as reaffirmed or repeated. [11.3.4.4. Confirmation, Cancellation, and Reinstatement of Modifications]</a:documentation>
         <empty/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.spanning.attributes"/>
         <ref name="_teiatt.transcriptional.attributes"/>
         <ref name="_teiatt.dimensions.attributes"/>
         <optional>
            <attribute name="target">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">points to one or more elements representing the interventions which are being reasserted.</a:documentation>
               <list>
                  <oneOrMore>
                     <data type="anyURI"/>
                  </oneOrMore>
               </list>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teiretrace">
      <element name="retrace">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a sequence of writing which has been retraced, for example by over-inking, to clarify or fix it. [11.3.4.3. Fixation and Clarification]</a:documentation>
         <ref name="_teimacro.paraContent"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.spanning.attributes"/>
         <ref name="_teiatt.transcriptional.attributes"/>
         <ref name="_teiatt.dimensions.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teitranspose">
      <element name="transpose">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">describes a single textual transposition as an ordered list of at least two pointers specifying the order in which the elements indicated should be re-combined. [11.3.4.5. Transpositions]</a:documentation>
         <group>
            <ref name="_teiptr"/>
            <oneOrMore>
               <ref name="_teiptr"/>
            </oneOrMore>
         </group>
         <ref name="_teiatt.changeRelated.attributes"/>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiundo">
      <element name="undo">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates one or more marked-up interventions in a document which have subsequently been marked for cancellation. [11.3.4.4. Confirmation, Cancellation, and Reinstatement of Modifications]</a:documentation>
         <empty/>
         <ref name="_teiatt.changeRelated.attributes"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.spanning.attributes"/>
         <ref name="_teiatt.transcriptional.attributes"/>
         <ref name="_teiatt.dimensions.attributes"/>
         <optional>
            <attribute name="target">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">points to one or more elements representing the interventions which are to be reverted or undone.</a:documentation>
               <list>
                  <oneOrMore>
                     <data type="anyURI"/>
                  </oneOrMore>
               </list>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teiatt.metrical.attributes">
      <ref name="_teiatt.metrical.attribute.met"/>
      <ref name="_teiatt.metrical.attribute.real"/>
      <ref name="_teiatt.metrical.attribute.rhyme"/>
   </define>
   <define name="_teiatt.metrical.attribute.met">
      <optional>
         <attribute name="met">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(metrical structure, conventional) contains a user-specified encoding for the conventional metrical structure of the element.</a:documentation>
            <data type="token"/>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.metrical.attribute.real">
      <optional>
         <attribute name="real">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(metrical structure, realized) contains a user-specified encoding for the actual realization of the conventional metrical structure applicable to the element.</a:documentation>
            <data type="token"/>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.metrical.attribute.rhyme">
      <optional>
         <attribute name="rhyme">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(rhyme scheme) specifies the rhyme scheme applicable to a group of verse lines.</a:documentation>
            <data type="token"/>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.enjamb.attributes">
      <ref name="_teiatt.enjamb.attribute.enjamb"/>
   </define>
   <define name="_teiatt.enjamb.attribute.enjamb">
      <optional>
         <attribute name="enjamb">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(enjambement) indicates that the end of a verse line is marked by enjambement.
Sample values include: 1] no; 2] yes; 3] weak; 4] strong</a:documentation>
            <data type="token">
               <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
            </data>
         </attribute>
      </optional>
   </define>
   <define name="_teimetDecl">
      <element name="metDecl">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(metrical notation declaration) documents the notation employed to represent a metrical pattern when this is specified as the value of a met, real, or rhyme attribute on any structural element of a metrical text (e.g. lg, l, or seg). [6.6. Metrical Notation Declaration 6.4. Rhyme and Metrical Analysis]</a:documentation>
         <choice>
      
            <oneOrMore>
               <choice>
                  <ref name="_teimodel.pLike"/>
                  <ref name="_teimodel.noteLike"/>
               </choice>
            </oneOrMore>
      
      
            <oneOrMore>
               <ref name="_teimetSym"/>
            </oneOrMore>
      
         </choice>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.declarable.attributes"/>
         <optional>
            <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                       name="type"
                       a:defaultValue="met real">
               <a:documentation>indicates whether the notation conveys the abstract metrical form, its actual prosodic realization, or the rhyme scheme, or some combination thereof.</a:documentation>
               <list>
                  <choice>
                     <value>met</value>
                     <a:documentation>(met attribute) declaration applies to the abstract metrical form recorded on the met attribute</a:documentation>
                     <value>real</value>
                     <a:documentation>(real attribute) declaration applies to the actual realization of the conventional metrical structure recorded on the real attribute</a:documentation>
                     <value>rhyme</value>
                     <a:documentation>declaration applies to the rhyme scheme recorded on the rhyme attribute</a:documentation>
                  </choice>
                  <optional>
                     <choice>
                        <value>met</value>
                        <a:documentation>(met attribute) declaration applies to the abstract metrical form recorded on the met attribute</a:documentation>
                        <value>real</value>
                        <a:documentation>(real attribute) declaration applies to the actual realization of the conventional metrical structure recorded on the real attribute</a:documentation>
                        <value>rhyme</value>
                        <a:documentation>declaration applies to the rhyme scheme recorded on the rhyme attribute</a:documentation>
                     </choice>
                  </optional>
                  <optional>
                     <choice>
                        <value>met</value>
                        <a:documentation>(met attribute) declaration applies to the abstract metrical form recorded on the met attribute</a:documentation>
                        <value>real</value>
                        <a:documentation>(real attribute) declaration applies to the actual realization of the conventional metrical structure recorded on the real attribute</a:documentation>
                        <value>rhyme</value>
                        <a:documentation>declaration applies to the rhyme scheme recorded on the rhyme attribute</a:documentation>
                     </choice>
                  </optional>
               </list>
            </attribute>
         </optional>
         <optional>
            <attribute name="pattern">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(regular expression pattern) specifies a regular expression defining any value that is legal for this notation.</a:documentation>
               <data type="token"/>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teimetSym">
      <element name="metSym">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(metrical notation symbol) documents the intended significance of a particular character or character sequence within a metrical notation, either explicitly or in terms of other metSym elements in the same metDecl. [6.6. Metrical Notation Declaration]</a:documentation>
         <ref name="_teimacro.phraseSeq.limited"/>
         <ref name="_teiatt.global.attributes"/>
         <attribute name="value">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the character or character sequence being documented.</a:documentation>
            <list>
               <oneOrMore>
                  <data type="token">
                     <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
                  </data>
               </oneOrMore>
            </list>
         </attribute>
         <optional>
            <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                       name="terminal"
                       a:defaultValue="true">
               <a:documentation>specifies whether the symbol is defined in terms of other symbols (terminal is set to false) or in prose (terminal is set to true).</a:documentation>
               <data type="boolean"/>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teicaesura">
      <element name="caesura">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">marks the point at which a metrical line may be divided. [6.2. Components of the Verse Line]</a:documentation>
         <empty/>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teirhyme">
      <element name="rhyme">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">marks the rhyming part of a metrical line. [6.5. Rhyme]</a:documentation>
         <ref name="_teimacro.paraContent"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <optional>
            <attribute name="label">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">provides a label (usually a single letter) to identify which part of a rhyme scheme this rhyming string instantiates.</a:documentation>
               <data type="token">
                  <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
               </data>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teig">
      <element name="g">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(character or glyph) represents a glyph, or a non-standard character. [5. Characters, Glyphs, and Writing Modes]</a:documentation>
         <text/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <optional>
            <attribute name="ref">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">points to a description of the character or glyph intended.</a:documentation>
               <data type="anyURI"/>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teichar">
      <element name="char">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(character) provides descriptive information about a character. [5.2. Markup Constructs for Representation of Characters and Glyphs]</a:documentation>
         <group>
      
            <optional>
               <ref name="_teicharName"/>
            </optional>
      
      
            <zeroOrMore>
               <ref name="_teimodel.descLike"/>
            </zeroOrMore>
      
      
            <zeroOrMore>
               <ref name="_teicharProp"/>
            </zeroOrMore>
      
      
            <zeroOrMore>
               <ref name="_teimapping"/>
            </zeroOrMore>
      
      
            <zeroOrMore>
               <ref name="_teifigure"/>
            </zeroOrMore>
      
      
            <zeroOrMore>
               <ref name="_teimodel.graphicLike"/>
            </zeroOrMore>
      
      
            <zeroOrMore>
               <ref name="_teimodel.noteLike"/>
            </zeroOrMore>
      
         </group>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teicharName">
      <element name="charName">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(character name) contains the name of a character, expressed following Unicode conventions. [5.2. Markup Constructs for Representation of Characters and Glyphs]</a:documentation>
         <text/>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teicharProp">
      <element name="charProp">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(character property) provides a name and value for some property of the parent character or glyph. [5.2. Markup Constructs for Representation of Characters and Glyphs]</a:documentation>
         <group>
            <choice>
               <ref name="_teiunicodeName"/>
               <ref name="_teilocalName"/>
            </choice>
            <ref name="_teivalue"/>
         </group>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teicharDecl">
      <element name="charDecl">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(character declarations) provides information about nonstandard characters and glyphs. [5.2. Markup Constructs for Representation of Characters and Glyphs]</a:documentation>
         <group>
      
            <optional>
               <ref name="_teidesc"/>
            </optional>
      
      
            <oneOrMore>
               <choice>
                  <ref name="_teichar"/>
                  <ref name="_teiglyph"/>
               </choice>
            </oneOrMore>
      
         </group>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiglyph">
      <element name="glyph">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(character glyph) provides descriptive information about a character glyph. [5.2. Markup Constructs for Representation of Characters and Glyphs]</a:documentation>
         <group>
      
            <optional>
               <ref name="_teiglyphName"/>
            </optional>
      
      
            <zeroOrMore>
               <ref name="_teimodel.descLike"/>
            </zeroOrMore>
      
      
            <zeroOrMore>
               <ref name="_teicharProp"/>
            </zeroOrMore>
      
      
            <zeroOrMore>
               <ref name="_teimapping"/>
            </zeroOrMore>
      
      
            <zeroOrMore>
               <ref name="_teifigure"/>
            </zeroOrMore>
      
      
            <zeroOrMore>
               <ref name="_teimodel.graphicLike"/>
            </zeroOrMore>
      
      
            <zeroOrMore>
               <ref name="_teimodel.noteLike"/>
            </zeroOrMore>
      
         </group>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiglyphName">
      <element name="glyphName">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(character glyph name) contains the name of a glyph, expressed following Unicode conventions for character names. [5.2. Markup Constructs for Representation of Characters and Glyphs]</a:documentation>
         <text/>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teilocalName">
      <element name="localName">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(locally-defined property name) contains a locally defined name for some property. [5.2.1. Character Properties]</a:documentation>
         <text/>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teimapping">
      <element name="mapping">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(character mapping) contains one or more characters which are related to the parent character or glyph in some respect, as specified by the type attribute. [5.2. Markup Constructs for Representation of Characters and Glyphs]</a:documentation>
         <ref name="_teimacro.xtext"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiunicodeName">
      <element name="unicodeName">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(unicode property name) contains the name of a registered Unicode normative or informative property. [5.2.1. Character Properties]</a:documentation>
         <text/>
         <ref name="_teiatt.global.attributes"/>
         <optional>
            <attribute name="version">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the version number of the Unicode Standard in which this property name is defined.</a:documentation>
               <data type="token">
                  <param name="pattern">[\d]+(\.[\d]+){0,2}</param>
               </data>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teivalue">
      <element name="value">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a single value for some property, attribute, or other analysis. [5.2.1. Character Properties]</a:documentation>
         <ref name="_teimacro.xtext"/>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiatt.datable.custom.attributes">
      <ref name="_teiatt.datable.custom.attribute.when-custom"/>
      <ref name="_teiatt.datable.custom.attribute.notBefore-custom"/>
      <ref name="_teiatt.datable.custom.attribute.notAfter-custom"/>
      <ref name="_teiatt.datable.custom.attribute.from-custom"/>
      <ref name="_teiatt.datable.custom.attribute.to-custom"/>
      <ref name="_teiatt.datable.custom.attribute.datingPoint"/>
      <ref name="_teiatt.datable.custom.attribute.datingMethod"/>
   </define>
   <define name="_teiatt.datable.custom.attribute.when-custom">
      <optional>
         <attribute name="when-custom">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">supplies the value of a date or time in some custom standard form.</a:documentation>
            <list>
               <oneOrMore>
                  <data type="token">
                     <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
                  </data>
               </oneOrMore>
            </list>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.datable.custom.attribute.notBefore-custom">
      <optional>
         <attribute name="notBefore-custom">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the earliest possible date for the event in some custom standard form.</a:documentation>
            <list>
               <oneOrMore>
                  <data type="token">
                     <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
                  </data>
               </oneOrMore>
            </list>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.datable.custom.attribute.notAfter-custom">
      <optional>
         <attribute name="notAfter-custom">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the latest possible date for the event in some custom standard form.</a:documentation>
            <list>
               <oneOrMore>
                  <data type="token">
                     <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
                  </data>
               </oneOrMore>
            </list>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.datable.custom.attribute.from-custom">
      <optional>
         <attribute name="from-custom">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the starting point of the period in some custom standard form.</a:documentation>
            <list>
               <oneOrMore>
                  <data type="token">
                     <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
                  </data>
               </oneOrMore>
            </list>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.datable.custom.attribute.to-custom">
      <optional>
         <attribute name="to-custom">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the ending point of the period in some custom standard form.</a:documentation>
            <list>
               <oneOrMore>
                  <data type="token">
                     <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
                  </data>
               </oneOrMore>
            </list>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.datable.custom.attribute.datingPoint">
      <optional>
         <attribute name="datingPoint">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">supplies a pointer to some location defining a named point in time with reference to which the datable item is understood to have occurred</a:documentation>
            <data type="anyURI"/>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.datable.custom.attribute.datingMethod">
      <optional>
         <attribute name="datingMethod">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">supplies a pointer to a calendar element or other means of interpreting the values of the custom dating attributes.</a:documentation>
            <data type="anyURI"/>
         </attribute>
      </optional>
   </define>
   <define name="_teimodel.persNamePart">
      <choice>
         <ref name="_teisurname"/>
         <ref name="_teiforename"/>
         <ref name="_teigenName"/>
         <ref name="_teinameLink"/>
         <ref name="_teiaddName"/>
         <ref name="_teiroleName"/>
      </choice>
   </define>
   <define name="_teimodel.persNamePart_alternation">
      <choice>
         <ref name="_teisurname"/>
         <ref name="_teiforename"/>
         <ref name="_teigenName"/>
         <ref name="_teinameLink"/>
         <ref name="_teiaddName"/>
         <ref name="_teiroleName"/>
      </choice>
   </define>
   <define name="_teimodel.persNamePart_sequence">
      <ref name="_teisurname"/>
      <ref name="_teiforename"/>
      <ref name="_teigenName"/>
      <ref name="_teinameLink"/>
      <ref name="_teiaddName"/>
      <ref name="_teiroleName"/>
   </define>
   <define name="_teimodel.persNamePart_sequenceOptional">
      <optional>
         <ref name="_teisurname"/>
      </optional>
      <optional>
         <ref name="_teiforename"/>
      </optional>
      <optional>
         <ref name="_teigenName"/>
      </optional>
      <optional>
         <ref name="_teinameLink"/>
      </optional>
      <optional>
         <ref name="_teiaddName"/>
      </optional>
      <optional>
         <ref name="_teiroleName"/>
      </optional>
   </define>
   <define name="_teimodel.persNamePart_sequenceOptionalRepeatable">
      <zeroOrMore>
         <ref name="_teisurname"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teiforename"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teigenName"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teinameLink"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teiaddName"/>
      </zeroOrMore>
      <zeroOrMore>
         <ref name="_teiroleName"/>
      </zeroOrMore>
   </define>
   <define name="_teimodel.persNamePart_sequenceRepeatable">
      <oneOrMore>
         <ref name="_teisurname"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teiforename"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teigenName"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teinameLink"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teiaddName"/>
      </oneOrMore>
      <oneOrMore>
         <ref name="_teiroleName"/>
      </oneOrMore>
   </define>
   <define name="_teiatt.datable.iso.attributes">
      <ref name="_teiatt.datable.iso.attribute.when-iso"/>
      <ref name="_teiatt.datable.iso.attribute.notBefore-iso"/>
      <ref name="_teiatt.datable.iso.attribute.notAfter-iso"/>
      <ref name="_teiatt.datable.iso.attribute.from-iso"/>
      <ref name="_teiatt.datable.iso.attribute.to-iso"/>
   </define>
   <define name="_teiatt.datable.iso.attribute.when-iso">
      <optional>
         <attribute name="when-iso">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">supplies the value of a date or time in a standard form.</a:documentation>
            <choice>
               <data type="date"/>
               <data type="gYear"/>
               <data type="gMonth"/>
               <data type="gDay"/>
               <data type="gYearMonth"/>
               <data type="gMonthDay"/>
               <data type="time"/>
               <data type="dateTime"/>
               <data type="token">
                  <param name="pattern">[0-9.,DHMPRSTWYZ/:+\-]+</param>
               </data>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.datable.iso.attribute.notBefore-iso">
      <optional>
         <attribute name="notBefore-iso">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the earliest possible date for the event in standard form, e.g. yyyy-mm-dd.</a:documentation>
            <choice>
               <data type="date"/>
               <data type="gYear"/>
               <data type="gMonth"/>
               <data type="gDay"/>
               <data type="gYearMonth"/>
               <data type="gMonthDay"/>
               <data type="time"/>
               <data type="dateTime"/>
               <data type="token">
                  <param name="pattern">[0-9.,DHMPRSTWYZ/:+\-]+</param>
               </data>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.datable.iso.attribute.notAfter-iso">
      <optional>
         <attribute name="notAfter-iso">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the latest possible date for the event in standard form, e.g. yyyy-mm-dd.</a:documentation>
            <choice>
               <data type="date"/>
               <data type="gYear"/>
               <data type="gMonth"/>
               <data type="gDay"/>
               <data type="gYearMonth"/>
               <data type="gMonthDay"/>
               <data type="time"/>
               <data type="dateTime"/>
               <data type="token">
                  <param name="pattern">[0-9.,DHMPRSTWYZ/:+\-]+</param>
               </data>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.datable.iso.attribute.from-iso">
      <optional>
         <attribute name="from-iso">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the starting point of the period in standard form.</a:documentation>
            <choice>
               <data type="date"/>
               <data type="gYear"/>
               <data type="gMonth"/>
               <data type="gDay"/>
               <data type="gYearMonth"/>
               <data type="gMonthDay"/>
               <data type="time"/>
               <data type="dateTime"/>
               <data type="token">
                  <param name="pattern">[0-9.,DHMPRSTWYZ/:+\-]+</param>
               </data>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.datable.iso.attribute.to-iso">
      <optional>
         <attribute name="to-iso">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the ending point of the period in standard form.</a:documentation>
            <choice>
               <data type="date"/>
               <data type="gYear"/>
               <data type="gMonth"/>
               <data type="gDay"/>
               <data type="gYearMonth"/>
               <data type="gMonthDay"/>
               <data type="time"/>
               <data type="dateTime"/>
               <data type="token">
                  <param name="pattern">[0-9.,DHMPRSTWYZ/:+\-]+</param>
               </data>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="_teiorgName">
      <element name="orgName">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(organization name) contains an organizational name. [13.2.2. Organizational Names]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.datable.attributes"/>
         <ref name="_teiatt.editLike.attributes"/>
         <ref name="_teiatt.personal.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teipersName">
      <element name="persName">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(personal name) contains a proper noun or proper-noun phrase referring to a person, possibly including one or more of the person's forenames, surnames, honorifics, added names, etc. [13.2.1. Personal Names]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.datable.attributes"/>
         <ref name="_teiatt.editLike.attributes"/>
         <ref name="_teiatt.personal.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teisurname">
      <element name="surname">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a family (inherited) name, as opposed to a given, baptismal, or nick name. [13.2.1. Personal Names]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.personal.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiforename">
      <element name="forename">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a forename, given or baptismal name. [13.2.1. Personal Names]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.personal.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teigenName">
      <element name="genName">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(generational name component) contains a name component used to distinguish otherwise similar names on the basis of the relative ages or generations of the persons named. [13.2.1. Personal Names]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.personal.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teinameLink">
      <element name="nameLink">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(name link) contains a connecting phrase or link used within a name but not regarded as part of it, such as van der or of. [13.2.1. Personal Names]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiaddName">
      <element name="addName">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(additional name) contains an additional name component, such as a nickname, epithet, or alias, or any other descriptive phrase used within a personal name. [13.2.1. Personal Names]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.personal.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiroleName">
      <element name="roleName">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a name component which indicates that the referent has a particular role or position in society, such as an official title or rank. [13.2.1. Personal Names]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.personal.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiplaceName">
      <element name="placeName">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains an absolute or relative place name. [13.2.3. Place Names]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.datable.attributes"/>
         <ref name="_teiatt.editLike.attributes"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.personal.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teibloc">
      <element name="bloc">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains the name of a geo-political unit consisting of two or more nation states or countries. [13.2.3. Place Names]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.naming.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.datable.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teicountry">
      <element name="country">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains the name of a geo-political unit, such as a nation, country, colony, or commonwealth, larger than or administratively superior to a region and smaller than a bloc. [13.2.3. Place Names]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.naming.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.datable.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiregion">
      <element name="region">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains the name of an administrative unit such as a state, province, or county, larger than a settlement, but smaller than a country. [13.2.3. Place Names]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.naming.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.datable.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teisettlement">
      <element name="settlement">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains the name of a settlement such as a city, town, or village identified as a single geo-political or administrative unit. [13.2.3. Place Names]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.naming.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.datable.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teidistrict">
      <element name="district">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains the name of any kind of subdivision of a settlement, such as a parish, ward, or other administrative or geographic unit. [13.2.3. Place Names]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.naming.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.datable.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teioffset">
      <element name="offset">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">marks that part of a relative temporal or spatial expression which indicates the direction of the offset between the two place names, dates, or times involved in the expression. [13.2.3. Place Names]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.datable.attributes"/>
         <ref name="_teiatt.editLike.attributes"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.naming.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.dimensions.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teigeogName">
      <element name="geogName">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(geographical name) identifies a name associated with some geographical feature such as Windrush Valley or Mount Sinai. [13.2.3. Place Names]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.datable.attributes"/>
         <ref name="_teiatt.editLike.attributes"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.naming.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teigeogFeat">
      <element name="geogFeat">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(geographical feature name) contains a common noun identifying some geographical feature contained within a geographic name, such as valley, mount, etc. [13.2.3. Place Names]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.datable.attributes"/>
         <ref name="_teiatt.editLike.attributes"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.naming.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.dimensions.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiaffiliation">
      <element name="affiliation">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains an informal description of a person's present or past affiliation with some organization, for example an employer or sponsor. [15.2.2. The Participant Description]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.editLike.attributes"/>
         <ref name="_teiatt.datable.attributes"/>
         <ref name="_teiatt.naming.attributes"/>
         <ref name="_teiatt.typed.attribute.subtype"/>
         <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.
Sample values include: 1] sponsor; 2] recommend; 3] discredit; 4] pledged</a:documentation>
               <data type="token">
                  <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
               </data>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teiage">
      <element name="age">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the age of a person. [13.3.2.1. Personal Characteristics]</a:documentation>
         <ref name="_teimacro.phraseSeq.limited"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.editLike.attributes"/>
         <ref name="_teiatt.datable.attributes"/>
         <ref name="_teiatt.typed.attribute.subtype"/>
         <ref name="_teiatt.dimensions.attributes"/>
         <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.
Sample values include: 1] western; 2] sui; 3] subjective; 4] objective; 5] inWorld (in world) ; 6] chronological; 7] biological; 8] psychological; 9] functional</a:documentation>
               <data type="token">
                  <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
               </data>
            </attribute>
         </optional>
         <optional>
            <attribute name="value">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">supplies a numeric code representing the age or age group</a:documentation>
               <data type="nonNegativeInteger"/>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teibirth">
      <element name="birth">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains information about a person's birth, such as its date and place. [15.2.2. The Participant Description]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.editLike.attributes"/>
         <ref name="_teiatt.datable.attributes"/>
         <ref name="_teiatt.dimensions.attributes"/>
         <ref name="_teiatt.naming.attributes"/>
         <ref name="_teiatt.typed.attribute.subtype"/>
         <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.
Sample values include: 1] caesarean (caesarean section) ; 2] vaginal (vaginal delivery) ; 3] exNihilo (ex nihilo) ; 4] incorporated; 5] founded; 6] established</a:documentation>
               <data type="token">
                  <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
               </data>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teiclimate">
      <element name="climate">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains information about the physical climate of a place. [13.3.4.3. States, Traits, and Events]</a:documentation>
         <group>
      
            <zeroOrMore>
               <ref name="_teiprecision"/>
            </zeroOrMore>
      
      
            <zeroOrMore>
               <ref name="_teimodel.headLike"/>
            </zeroOrMore>
      
            <choice>
        
          
               <oneOrMore>
                  <ref name="_teimodel.pLike"/>
               </oneOrMore>
          
        
        
          
               <oneOrMore>
                  <ref name="_teimodel.labelLike"/>
               </oneOrMore>
          
        
            </choice>
      
            <zeroOrMore>
               <choice>
                  <ref name="_teimodel.noteLike"/>
                  <ref name="_teimodel.biblLike"/>
               </choice>
            </zeroOrMore>
      
      
            <zeroOrMore>
               <ref name="_teiclimate"/>
            </zeroOrMore>
      
         </group>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.datable.attributes"/>
         <ref name="_teiatt.editLike.attributes"/>
         <ref name="_teiatt.naming.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teideath">
      <element name="death">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains information about a person's death, such as its date and place. [15.2.2. The Participant Description]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.datable.attributes"/>
         <ref name="_teiatt.dimensions.attributes"/>
         <ref name="_teiatt.editLike.attributes"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.naming.attributes"/>
         <ref name="_teiatt.typed.attribute.subtype"/>
         <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.
Sample values include: 1] proclaimed; 2] assumed; 3] verified; 4] clinical; 5] brain; 6] natural; 7] unnatural; 8] fragmentation; 9] dissolution</a:documentation>
               <data type="token">
                  <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
               </data>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teieducation">
      <element name="education">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a description of the educational experience of a person. [15.2.2. The Participant Description]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.editLike.attributes"/>
         <ref name="_teiatt.datable.attributes"/>
         <ref name="_teiatt.naming.attributes"/>
         <ref name="_teiatt.typed.attribute.subtype"/>
         <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.
Sample values include: 1] primary; 2] secondary; 3] undergraduate; 4] graduate; 5] residency; 6] apprenticeship</a:documentation>
               <data type="token">
                  <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
               </data>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teievent">
      <element name="event">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains data relating to any kind of significant event associated with a person, place, or organization. [13.3.1. Basic Principles]</a:documentation>
         <group>
      
            <zeroOrMore>
               <ref name="_teimodel.headLike"/>
            </zeroOrMore>
      
            <choice>
        
          
               <oneOrMore>
                  <ref name="_teimodel.pLike"/>
               </oneOrMore>
          
        
        
          
               <oneOrMore>
                  <ref name="_teimodel.labelLike"/>
               </oneOrMore>
          
        
            </choice>
      
            <zeroOrMore>
               <choice>
                  <ref name="_teimodel.noteLike"/>
                  <ref name="_teimodel.biblLike"/>
                  <ref name="_teilinkGrp"/>
                  <ref name="_teilink"/>
               </choice>
            </zeroOrMore>
      
      
            <zeroOrMore>
               <ref name="_teievent"/>
            </zeroOrMore>
      
         </group>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.datable.attributes"/>
         <ref name="_teiatt.editLike.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.naming.attributes"/>
         <ref name="_teiatt.sortable.attributes"/>
         <optional>
            <attribute name="where">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the location of an event by pointing to a place element</a:documentation>
               <data type="anyURI"/>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teifaith">
      <element name="faith">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the faith, religion, or belief set of a person. [13.3.2.1. Personal Characteristics]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.editLike.attributes"/>
         <ref name="_teiatt.datable.attributes"/>
         <ref name="_teiatt.canonical.attributes"/>
         <ref name="_teiatt.typed.attribute.subtype"/>
         <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.
Sample values include: 1] practicing; 2] clandestine; 3] patrilineal; 4] matrilineal; 5] convert</a:documentation>
               <data type="token">
                  <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
               </data>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teifloruit">
      <element name="floruit">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains information about a person's period of activity. [13.3.2.1. Personal Characteristics]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.datable.attributes"/>
         <ref name="_teiatt.dimensions.attributes"/>
         <ref name="_teiatt.editLike.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teigeo">
      <element name="geo">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(geographical coordinates) contains any expression of a set of geographic coordinates, representing a point, line, or area on the surface of the earth in some notation. [13.3.4.1. Varieties of Location]</a:documentation>
         <text/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.declaring.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teilangKnowledge">
      <element name="langKnowledge">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(language knowledge) summarizes the state of a person's linguistic knowledge, either as prose or by a list of langKnown elements. [13.3.2.1. Personal Characteristics]</a:documentation>
         <group>        
            <zeroOrMore>
               <ref name="_teiprecision"/>
            </zeroOrMore>
            <choice>
	              <ref name="_teimodel.pLike"/>
	              <oneOrMore>
                  <ref name="_teilangKnown"/>
               </oneOrMore>
            </choice>
         </group>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.datable.attributes"/>
         <ref name="_teiatt.editLike.attributes"/>
         <ref name="_teiatt.typed.attribute.subtype"/>
         <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.
Sample values include: 1] listening; 2] speaking; 3] reading; 4] writing</a:documentation>
               <data type="token">
                  <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
               </data>
            </attribute>
         </optional>
         <optional>
            <attribute name="tags">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">supplies one or more valid language tags for the languages specified</a:documentation>
               <list>
                  <oneOrMore>
                     <choice>
                        <data type="language"/>
                        <choice>
                           <value/>
                           <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
                        </choice>
                     </choice>
                  </oneOrMore>
               </list>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teilangKnown">
      <element name="langKnown">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(language known) summarizes the state of a person's linguistic competence, i.e., knowledge of a single language. [15.2.2. The Participant Description]</a:documentation>
         <ref name="_teimacro.phraseSeq.limited"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.datable.attributes"/>
         <ref name="_teiatt.editLike.attributes"/>
         <attribute name="tag">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">supplies a valid language tag for the language concerned.</a:documentation>
            <choice>
               <data type="language"/>
               <choice>
                  <value/>
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
               </choice>
            </choice>
         </attribute>
         <optional>
            <attribute name="level">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">a code indicating the person's level of knowledge for this language</a:documentation>
               <data type="token">
                  <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
               </data>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teilistOrg">
      <element name="listOrg">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(list of organizations) contains a list of elements, each of which provides information about an identifiable organization. [13.2.2. Organizational Names]</a:documentation>
         <group>
      
            <zeroOrMore>
               <ref name="_teimodel.headLike"/>
            </zeroOrMore>
      
      
            <oneOrMore>
               <choice>
                  <ref name="_teiorg"/>
                  <ref name="_teilistOrg"/>
               </choice>
            </oneOrMore>
      
      
            <zeroOrMore>
               <choice>
                  <ref name="_teirelation"/>
                  <ref name="_teilistRelation"/>
               </choice>
            </zeroOrMore>
      
         </group>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.declarable.attributes"/>
         <ref name="_teiatt.sortable.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teilistEvent">
      <element name="listEvent">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(list of events) contains a list of descriptions, each of which provides information about an identifiable event. [13.3.1. Basic Principles]</a:documentation>
         <group>
            <zeroOrMore>
               <ref name="_teimodel.headLike"/>
            </zeroOrMore>
            <oneOrMore>
               <ref name="_teimodel.eventLike"/>
            </oneOrMore>
            <zeroOrMore>
               <choice>
                  <ref name="_teirelation"/>
                  <ref name="_teilistRelation"/>
               </choice>
            </zeroOrMore>
         </group>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.declarable.attributes"/>
         <ref name="_teiatt.sortable.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teilistPerson">
      <element name="listPerson">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(list of persons) contains a list of descriptions, each of which provides information about an identifiable person or a group of people, for example the participants in a language interaction, or the people referred to in a historical source. [13.3.2. The Person Element 15.2. Contextual Information 2.4. The Profile Description 15.3.2. Declarable Elements]</a:documentation>
         <group>
      
            <zeroOrMore>
               <ref name="_teimodel.headLike"/>
            </zeroOrMore>
      
      
            <oneOrMore>
               <choice>
                  <ref name="_teimodel.personLike"/>
                  <ref name="_teilistPerson"/>
               </choice>
            </oneOrMore>
      
      
            <zeroOrMore>
               <choice>
                  <ref name="_teirelation"/>
                  <ref name="_teilistRelation"/>
               </choice>
            </zeroOrMore>
      
         </group>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.declarable.attributes"/>
         <ref name="_teiatt.sortable.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teilistPlace">
      <element name="listPlace">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(list of places) contains a list of places, optionally followed by a list of relationships (other than containment) defined amongst them. [2.2.7. The Source Description 13.3.4. Places]</a:documentation>
         <group>
      
            <zeroOrMore>
               <ref name="_teimodel.headLike"/>
            </zeroOrMore>
      
      
            <oneOrMore>
               <choice>
                  <ref name="_teimodel.placeLike"/>
                  <ref name="_teilistPlace"/>
               </choice>
            </oneOrMore>
      
      
            <zeroOrMore>
               <choice>
                  <ref name="_teirelation"/>
                  <ref name="_teilistRelation"/>
               </choice>
            </zeroOrMore>
      
         </group>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.declarable.attributes"/>
         <ref name="_teiatt.sortable.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teilocation">
      <element name="location">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">defines the location of a place as a set of geographical coordinates, in terms of other named geo-political entities, or as an address. [13.3.4. Places]</a:documentation>
         <zeroOrMore>
            <choice>
               <ref name="_teiprecision"/>
               <ref name="_teimodel.labelLike"/>
               <ref name="_teimodel.placeNamePart"/>
               <ref name="_teimodel.offsetLike"/>
               <ref name="_teimodel.measureLike"/>
               <ref name="_teimodel.addressLike"/>
               <ref name="_teimodel.noteLike"/>
               <ref name="_teimodel.biblLike"/>
            </choice>
         </zeroOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.datable.attributes"/>
         <ref name="_teiatt.editLike.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teinationality">
      <element name="nationality">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains an informal description of a person's present or past nationality or citizenship. [15.2.2. The Participant Description]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.datable.attributes"/>
         <ref name="_teiatt.editLike.attributes"/>
         <ref name="_teiatt.naming.attributes"/>
         <ref name="_teiatt.typed.attribute.subtype"/>
         <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.
Sample values include: 1] birth; 2] naturalised; 3] self-assigned</a:documentation>
               <data type="token">
                  <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
               </data>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teioccupation">
      <element name="occupation">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains an informal description of a person's trade, profession or occupation. [15.2.2. The Participant Description]</a:documentation>
         <ref name="_teimacro.specialPara"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.datable.attributes"/>
         <ref name="_teiatt.editLike.attributes"/>
         <ref name="_teiatt.naming.attributes"/>
         <ref name="_teiatt.typed.attribute.subtype"/>
         <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.
Sample values include: 1] primary; 2] other; 3] paid; 4] unpaid</a:documentation>
               <data type="token">
                  <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
               </data>
            </attribute>
         </optional>
         <optional>
            <attribute name="scheme">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the classification system or taxonomy in use, for example by supplying the identifier of a taxonomy element, or pointing to some other resource.</a:documentation>
               <data type="anyURI"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="code">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">identifies an occupation code defined within the classification system or taxonomy defined by the scheme attribute.</a:documentation>
               <data type="anyURI"/>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teiorg">
      <element name="org">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(organization) provides information about an identifiable organization such as a business, a tribe, or any other grouping of people. [13.2.2. Organizational Names]</a:documentation>
         <group>
      
            <zeroOrMore>
               <ref name="_teimodel.headLike"/>
            </zeroOrMore>
      
            <choice>
        
          
               <zeroOrMore>
                  <ref name="_teimodel.pLike"/>
               </zeroOrMore>
          
        
        
               <zeroOrMore>
                  <choice>
                     <ref name="_teimodel.labelLike"/>
                     <ref name="_teimodel.nameLike"/>
                     <ref name="_teimodel.placeLike"/>
                     <ref name="_teimodel.orgPart"/>
	                    <ref name="_teimodel.milestoneLike"/>
                  </choice>
               </zeroOrMore>
        
            </choice>
      
            <zeroOrMore>
               <choice>
                  <ref name="_teimodel.noteLike"/>
                  <ref name="_teimodel.biblLike"/>
                  <ref name="_teilinkGrp"/>
                  <ref name="_teilink"/>
               </choice>
            </zeroOrMore>
      
      
            <zeroOrMore>
               <ref name="_teimodel.personLike"/>
            </zeroOrMore>
      
         </group>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.editLike.attributes"/>
         <ref name="_teiatt.sortable.attributes"/>
         <optional>
            <attribute name="role">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies a primary role or classification for the organization.</a:documentation>
               <list>
                  <oneOrMore>
                     <data type="token">
                        <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
                     </data>
                  </oneOrMore>
               </list>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teilistRelation">
      <element name="listRelation">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">provides information about relationships identified amongst people, places, and organizations, either informally as prose or as formally expressed relation links. [13.3.2.3. Personal Relationships]</a:documentation>
         <group>
      
            <zeroOrMore>
               <ref name="_teimodel.headLike"/>
            </zeroOrMore>
      
            <choice>
               <ref name="_teimodel.pLike"/>
        
               <oneOrMore>
                  <choice>
                     <ref name="_teirelation"/>
                     <ref name="_teilistRelation"/>
                  </choice>
               </oneOrMore>
        
            </choice>
         </group>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.sortable.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiperson">
      <element name="person">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">provides information about an identifiable individual, for example a participant in a language interaction, or a person referred to in a historical source. [13.3.2. The Person Element 15.2.2. The Participant Description]</a:documentation>
         <choice>
      
            <oneOrMore>
               <ref name="_teimodel.pLike"/>
            </oneOrMore>
      
      
            <zeroOrMore>
               <choice>
                  <ref name="_teimodel.personPart"/>
                  <ref name="_teimodel.global"/>
               </choice>
            </zeroOrMore>
      
         </choice>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.editLike.attributes"/>
         <ref name="_teiatt.sortable.attributes"/>
         <optional>
            <attribute name="role">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies a primary role or classification for the person.</a:documentation>
               <list>
                  <oneOrMore>
                     <data type="token">
                        <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
                     </data>
                  </oneOrMore>
               </list>
            </attribute>
         </optional>
         <optional>
            <attribute name="sex">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the sex of the person.</a:documentation>
               <list>
                  <oneOrMore>
                     <data type="token">
                        <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
                     </data>
                  </oneOrMore>
               </list>
            </attribute>
         </optional>
         <optional>
            <attribute name="age">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies an age group for the person.</a:documentation>
               <data type="token">
                  <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
               </data>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teipersona">
      <element name="persona">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">provides information about one of the personalities identified for a given individual, where an individual has multiple personalities. [13.3.2. The Person Element]</a:documentation>
         <choice>   
            <oneOrMore>
               <ref name="_teimodel.pLike"/>
            </oneOrMore>      
            <zeroOrMore>
               <choice>
                  <ref name="_teimodel.personPart"/>
                  <ref name="_teimodel.global"/>
               </choice>
            </zeroOrMore>
         </choice>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.editLike.attributes"/>
         <ref name="_teiatt.sortable.attributes"/>
         <optional>
            <attribute name="role">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies a primary role or classification for the persona.</a:documentation>
               <list>
                  <oneOrMore>
                     <data type="token">
                        <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
                     </data>
                  </oneOrMore>
               </list>
            </attribute>
         </optional>
         <optional>
            <attribute name="sex">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the sex of the persona.</a:documentation>
               <list>
                  <oneOrMore>
                     <data type="token">
                        <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
                     </data>
                  </oneOrMore>
               </list>
            </attribute>
         </optional>
         <optional>
            <attribute name="age">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies an age group for the persona.</a:documentation>
               <data type="token">
                  <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
               </data>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teipersonGrp">
      <element name="personGrp">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(personal group) describes a group of individuals treated as a single person for analytic purposes. [15.2.2. The Participant Description]</a:documentation>
         <choice>
      
            <oneOrMore>
               <ref name="_teimodel.pLike"/>
            </oneOrMore>
      
      
            <zeroOrMore>
               <choice>
                  <ref name="_teimodel.personPart"/>
                  <ref name="_teimodel.global"/>
               </choice>
            </zeroOrMore>
      
         </choice>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.sortable.attributes"/>
         <optional>
            <attribute name="role">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the role of this group of participants in the interaction.</a:documentation>
               <data type="token">
                  <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
               </data>
            </attribute>
         </optional>
         <optional>
            <attribute name="sex">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the sex of the participant group.</a:documentation>
               <list>
                  <oneOrMore>
                     <data type="token">
                        <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
                     </data>
                  </oneOrMore>
               </list>
            </attribute>
         </optional>
         <optional>
            <attribute name="age">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the age group of the participants.</a:documentation>
               <data type="token">
                  <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
               </data>
            </attribute>
         </optional>
         <optional>
            <attribute name="size">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">describes informally the size or approximate size of the group for example by means of a number and an indication of accuracy e.g. approx 200.</a:documentation>
               <list>
                  <oneOrMore>
                     <data type="token">
                        <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
                     </data>
                  </oneOrMore>
               </list>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teiplace">
      <element name="place">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains data about a geographic location [13.3.4. Places]</a:documentation>
         <group>
      
            <zeroOrMore>
               <ref name="_teimodel.headLike"/>
            </zeroOrMore>
      
            <choice>
        
          
               <zeroOrMore>
                  <ref name="_teimodel.pLike"/>
               </zeroOrMore>
          
        
        
               <zeroOrMore>
                  <choice>
                     <ref name="_teimodel.labelLike"/>
                     <ref name="_teimodel.placeStateLike"/>
                     <ref name="_teimodel.eventLike"/>
                  </choice>
               </zeroOrMore>
        
            </choice>
      
            <zeroOrMore>
               <choice>
                  <ref name="_teimodel.noteLike"/>
                  <ref name="_teimodel.biblLike"/>
                  <ref name="_teiidno"/>
                  <ref name="_teilinkGrp"/>
                  <ref name="_teilink"/>
               </choice>
            </zeroOrMore>
      
      
            <zeroOrMore>
               <choice>
                  <ref name="_teimodel.placeLike"/>
                  <ref name="_teilistPlace"/>
               </choice>
            </zeroOrMore>
      
         </group>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.editLike.attributes"/>
         <ref name="_teiatt.sortable.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teipopulation">
      <element name="population">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains information about the population of a place. [13.3.4.3. States, Traits, and Events]</a:documentation>
         <group>
            <zeroOrMore>
               <ref name="_teiprecision"/>
            </zeroOrMore>
            <zeroOrMore>
               <ref name="_teimodel.headLike"/>
            </zeroOrMore>
            <optional>
               <group>
                  <choice>
                     <oneOrMore>
                        <ref name="_teimodel.pLike"/>
                     </oneOrMore>
                     <oneOrMore>
                        <ref name="_teimodel.labelLike"/>
                     </oneOrMore>
                  </choice>
                  <zeroOrMore>
                     <choice>
                        <ref name="_teimodel.noteLike"/>
                        <ref name="_teimodel.biblLike"/>
                     </choice>
                  </zeroOrMore>
               </group>
            </optional>
            <zeroOrMore>
               <ref name="_teipopulation"/>
            </zeroOrMore>
         </group>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.datable.attributes"/>
         <ref name="_teiatt.editLike.attributes"/>
         <ref name="_teiatt.naming.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.dimensions.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teirelation">
      <element name="relation">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(relationship) describes any kind of relationship or linkage amongst a specified group of places, events, persons, objects or other items. [13.3.2.3. Personal Relationships]</a:documentation>
         <optional>
            <ref name="_teidesc"/>
         </optional>
         <pattern xmlns="http://purl.oclc.org/dsdl/schematron"
                  id="faust-tei-relation-reforkeyorname-constraint-assert-23">
            <rule context="tei:relation">
               <assert xmlns:rng="http://relaxng.org/ns/structure/1.0"
                       xmlns:ge="http://www.tei-c.org/ns/geneticEditions"
                       xmlns:svg="http://www.w3.org/2000/svg"
                       xmlns:f="http://www.faustedition.net/ns"
                       test="@ref or @key or @name">One of the attributes  'name', 'ref' or 'key' must be supplied</assert>
            </rule>
         </pattern>
         <pattern xmlns="http://purl.oclc.org/dsdl/schematron"
                  id="faust-tei-relation-activemutual-constraint-report-27">
            <rule context="tei:relation">
               <report xmlns:rng="http://relaxng.org/ns/structure/1.0"
                       xmlns:ge="http://www.tei-c.org/ns/geneticEditions"
                       xmlns:svg="http://www.w3.org/2000/svg"
                       xmlns:f="http://www.faustedition.net/ns"
                       test="@active and @mutual">Only one of the attributes @active and @mutual may be supplied</report>
            </rule>
         </pattern>
         <pattern xmlns="http://purl.oclc.org/dsdl/schematron"
                  id="faust-tei-relation-activepassive-constraint-report-28">
            <rule context="tei:relation">
               <report xmlns:rng="http://relaxng.org/ns/structure/1.0"
                       xmlns:ge="http://www.tei-c.org/ns/geneticEditions"
                       xmlns:svg="http://www.w3.org/2000/svg"
                       xmlns:f="http://www.faustedition.net/ns"
                       test="@passive and not(@active)">the attribute 'passive' may be supplied only if the attribute 'active' is supplied</report>
            </rule>
         </pattern>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.datable.attributes"/>
         <ref name="_teiatt.editLike.attributes"/>
         <ref name="_teiatt.canonical.attributes"/>
         <ref name="_teiatt.sortable.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <optional>
            <attribute name="name">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">supplies a name for the kind of relationship of which this is an instance.</a:documentation>
               <data type="token">
                  <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
               </data>
            </attribute>
         </optional>
         <choice>
            <optional>
               <attribute name="active">
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">identifies the active participants in a non-mutual relationship, or all the participants in a mutual one.</a:documentation>
                  <list>
                     <oneOrMore>
                        <data type="anyURI"/>
                     </oneOrMore>
                  </list>
               </attribute>
            </optional>
            <optional>
               <attribute name="mutual">
                  <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">supplies a list of participants amongst all of whom the relationship holds equally.</a:documentation>
                  <list>
                     <oneOrMore>
                        <data type="anyURI"/>
                     </oneOrMore>
                  </list>
               </attribute>
            </optional>
         </choice>
         <optional>
            <attribute name="passive">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">identifies the passive participants in a non-mutual relationship.</a:documentation>
               <list>
                  <oneOrMore>
                     <data type="anyURI"/>
                  </oneOrMore>
               </list>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teiresidence">
      <element name="residence">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">describes a person's present or past places of residence. [15.2.2. The Participant Description]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.datable.attributes"/>
         <ref name="_teiatt.editLike.attributes"/>
         <ref name="_teiatt.naming.attributes"/>
         <ref name="_teiatt.typed.attribute.subtype"/>
         <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.
Sample values include: 1] primary; 2] secondary; 3] temporary; 4] permanent</a:documentation>
               <data type="token">
                  <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
               </data>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teisex">
      <element name="sex">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the sex of a person. [13.3.2.1. Personal Characteristics]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.editLike.attributes"/>
         <ref name="_teiatt.datable.attributes"/>
         <ref name="_teiatt.typed.attribute.subtype"/>
         <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.
Sample values include: 1] explicit; 2] implicit</a:documentation>
               <data type="token">
                  <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
               </data>
            </attribute>
         </optional>
         <optional>
            <attribute name="value">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">supplies a coded value for sex</a:documentation>
               <list>
                  <oneOrMore>
                     <data type="token">
                        <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
                     </data>
                  </oneOrMore>
               </list>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teisocecStatus">
      <element name="socecStatus">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(socio-economic status) contains an informal description of a person's perceived social or economic status. [15.2.2. The Participant Description]</a:documentation>
         <ref name="_teimacro.phraseSeq"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.datable.attributes"/>
         <ref name="_teiatt.editLike.attributes"/>
         <ref name="_teiatt.naming.attributes"/>
         <ref name="_teiatt.typed.attribute.subtype"/>
         <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.
Sample values include: 1] atBirth; 2] atDeath; 3] dependent; 4] inherited; 5] independent</a:documentation>
               <data type="token">
                  <param name="pattern">(\p{L}|\p{N}|\p{P}|\p{S})+</param>
               </data>
            </attribute>
         </optional>
         <optional>
            <attribute name="scheme">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">identifies the classification system or taxonomy in use, for example by pointing to a locally-defined taxonomy element or by supplying a URI for an externally-defined system.</a:documentation>
               <data type="anyURI"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="code">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">identifies a status code defined within the classification system or taxonomy defined by the scheme attribute.</a:documentation>
               <data type="anyURI"/>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teistate">
      <element name="state">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a description of some status or quality attributed to a person, place, or organization often at some specific time or for a specific date range. [13.3.1. Basic Principles 13.3.2.1. Personal Characteristics]</a:documentation>
         <group>
            <zeroOrMore>
               <ref name="_teiprecision"/>
            </zeroOrMore>
            <choice>
               <oneOrMore>
                  <ref name="_teistate"/>
               </oneOrMore>
               <group>
                  <zeroOrMore>
                     <ref name="_teimodel.headLike"/>
                  </zeroOrMore>
                  <oneOrMore>
                     <ref name="_teimodel.pLike"/>
                  </oneOrMore>
                  <zeroOrMore>
                     <choice>
                        <ref name="_teimodel.noteLike"/>
                        <ref name="_teimodel.biblLike"/>
                     </choice>
                  </zeroOrMore>
               </group>
               <zeroOrMore>
                  <choice>
                     <ref name="_teimodel.labelLike"/>
                     <ref name="_teimodel.noteLike"/>
                     <ref name="_teimodel.biblLike"/>
                  </choice>
               </zeroOrMore>
            </choice>
         </group>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.datable.attributes"/>
         <ref name="_teiatt.editLike.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.naming.attributes"/>
         <ref name="_teiatt.dimensions.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiterrain">
      <element name="terrain">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains information about the physical terrain of a place. [13.3.4.3. States, Traits, and Events]</a:documentation>
         <group>
      
            <zeroOrMore>
               <ref name="_teiprecision"/>
            </zeroOrMore>
      
      
            <zeroOrMore>
               <ref name="_teimodel.headLike"/>
            </zeroOrMore>
      
            <choice>
        
          
               <oneOrMore>
                  <ref name="_teimodel.pLike"/>
               </oneOrMore>
          
        
        
          
               <oneOrMore>
                  <ref name="_teimodel.labelLike"/>
               </oneOrMore>
          
        
            </choice>
      
            <zeroOrMore>
               <choice>
                  <ref name="_teimodel.noteLike"/>
                  <ref name="_teimodel.biblLike"/>
               </choice>
            </zeroOrMore>
      
      
            <zeroOrMore>
               <ref name="_teiterrain"/>
            </zeroOrMore>
      
         </group>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.datable.attributes"/>
         <ref name="_teiatt.editLike.attributes"/>
         <ref name="_teiatt.naming.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teitrait">
      <element name="trait">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a description of some status or quality attributed to a person, place, or organization typically, but not necessarily, independent of the volition or action of the holder and usually not at some specific time or for a specific date range. [13.3.1. Basic Principles 13.3.2.1. Personal Characteristics]</a:documentation>
         <group>
            <zeroOrMore>
               <ref name="_teiprecision"/>
            </zeroOrMore>
            <choice>
               <oneOrMore>
                  <ref name="_teitrait"/>
               </oneOrMore>
               <group>
                  <zeroOrMore>
                     <ref name="_teimodel.headLike"/>
                  </zeroOrMore>
                  <oneOrMore>
                     <ref name="_teimodel.pLike"/>
                  </oneOrMore>
                  <zeroOrMore>
                     <choice>
                        <ref name="_teimodel.noteLike"/>
                        <ref name="_teimodel.biblLike"/>
                     </choice>
                  </zeroOrMore>
               </group>
               <zeroOrMore>
                  <choice>
                     <ref name="_teimodel.labelLike"/>
                     <ref name="_teimodel.noteLike"/>
                     <ref name="_teimodel.biblLike"/>
                  </choice>
               </zeroOrMore>
            </choice>
         </group>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.datable.attributes"/>
         <ref name="_teiatt.editLike.attributes"/>
         <ref name="_teiatt.naming.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.dimensions.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teinym">
      <element name="nym">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(canonical name) contains the definition for a canonical name or name component of any kind. [13.3.5. Names and Nyms]</a:documentation>
         <group>
      
        
            <zeroOrMore>
               <ref name="_teimodel.entryPart"/>
            </zeroOrMore>
        
      
      
        
            <zeroOrMore>
               <ref name="_teimodel.pLike"/>
            </zeroOrMore>
        
      
      
        
            <zeroOrMore>
               <ref name="_teinym"/>
            </zeroOrMore>
        
      
         </group>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.sortable.attributes"/>
         <optional>
            <attribute name="parts">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">points to constituent nyms</a:documentation>
               <list>
                  <oneOrMore>
                     <data type="anyURI"/>
                  </oneOrMore>
               </list>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teilistNym">
      <element name="listNym">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(list of canonical names) contains a list of nyms, that is, standardized names for any thing. [13.3.5. Names and Nyms]</a:documentation>
         <group>
      
            <zeroOrMore>
               <ref name="_teimodel.headLike"/>
            </zeroOrMore>
      
      
            <oneOrMore>
               <choice>
                  <ref name="_teinym"/>
                  <ref name="_teilistNym"/>
               </choice>
            </oneOrMore>
      
      
            <zeroOrMore>
               <choice>
                  <ref name="_teirelation"/>
                  <ref name="_teilistRelation"/>
               </choice>
            </zeroOrMore>
      
         </group>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.declarable.attributes"/>
         <ref name="_teiatt.sortable.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teitable">
      <element name="table">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains text displayed in tabular form, in rows and columns. [14.1.1. TEI Tables]</a:documentation>
         <group>
      
            <zeroOrMore>
               <choice>
                  <ref name="_teimodel.headLike"/>
                  <ref name="_teimodel.global"/>
               </choice>
            </zeroOrMore>
      
            <choice>
               <oneOrMore>
                  <group>
                     <ref name="_teirow"/>
          
                     <zeroOrMore>
                        <ref name="_teimodel.global"/>
                     </zeroOrMore>
          
                  </group>
               </oneOrMore>
               <oneOrMore>
                  <group>
          
                     <ref name="_teimodel.graphicLike"/>
          
          
                     <zeroOrMore>
                        <ref name="_teimodel.global"/>
                     </zeroOrMore>
          
                  </group>
               </oneOrMore>
            </choice>
            <zeroOrMore>
               <group>
        
                  <ref name="_teimodel.divBottom"/>
        
        
                  <zeroOrMore>
                     <ref name="_teimodel.global"/>
                  </zeroOrMore>
        
               </group>
            </zeroOrMore>
         </group>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <optional>
            <attribute name="rows">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">indicates the number of rows in the table.</a:documentation>
               <data type="nonNegativeInteger"/>
            </attribute>
         </optional>
         <optional>
            <attribute name="cols">
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(columns) indicates the number of columns in each row of the table.</a:documentation>
               <data type="nonNegativeInteger"/>
            </attribute>
         </optional>
         <empty/>
      </element>
   </define>
   <define name="_teirow">
      <element name="row">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains one row of a table. [14.1.1. TEI Tables]</a:documentation>
         <oneOrMore>
            <ref name="_teicell"/>
         </oneOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.tableDecoration.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teicell">
      <element name="cell">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains one cell of a table. [14.1.1. TEI Tables]</a:documentation>
         <ref name="_teimacro.specialPara"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.tableDecoration.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiformula">
      <element name="formula">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a mathematical or other formula. [14.2. Formulæ and Mathematical Expressions]</a:documentation>
         <zeroOrMore>
            <choice>
               <text/>
               <ref name="_teimodel.graphicLike"/>
               <ref name="_teimodel.hiLike"/>       
            </choice>
         </zeroOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.notated.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teinotatedMusic">
      <element name="notatedMusic">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">encodes the presence of music notation in a text [14.3. Notated Music in Written Text]</a:documentation>
         <zeroOrMore>
            <choice>
               <ref name="_teimodel.labelLike"/>
               <ref name="_teimodel.ptrLike"/>
               <ref name="_teigraphic"/>
               <ref name="_teibinaryObject"/>
               <ref name="_teiseg"/>
            </choice>
         </zeroOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.placement.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teifigure">
      <element name="figure">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">groups elements representing or containing graphic information such as an illustration, formula, or figure. [14.4. Specific Elements for Graphic Images]</a:documentation>
         <zeroOrMore>
            <choice>
               <ref name="_teimodel.headLike"/>
               <ref name="_teimodel.common"/>
               <ref name="_teifigDesc"/>
               <ref name="_teimodel.graphicLike"/>
               <ref name="_teimodel.global"/>
               <ref name="_teimodel.divBottom"/>
            </choice>
         </zeroOrMore>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.placement.attributes"/>
         <ref name="_teiatt.typed.attributes"/>
         <ref name="_teiatt.written.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teifigDesc">
      <element name="figDesc">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(description of figure) contains a brief prose description of the appearance or content of a graphic figure, for use when documenting an image without displaying it. [14.4. Specific Elements for Graphic Images]</a:documentation>
         <ref name="_teimacro.limitedContent"/>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiparticDesc">
      <element name="particDesc">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(participation description) describes the identifiable speakers, voices, or other participants in any kind of text or other persons named or otherwise referred to in a text, edition, or metadata. [15.2. Contextual Information]</a:documentation>
         <choice>
            
                <oneOrMore>
               <ref name="_teimodel.pLike"/>
            </oneOrMore>
            
            
                <oneOrMore>
               <choice>
                    <ref name="_teimodel.personLike"/>
                    <ref name="_teilistPerson"/>
                    <ref name="_teilistOrg"/>
                </choice>
            </oneOrMore>
            
        </choice>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.declarable.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiatt.changeRelated.attributes">
      <ref name="_teiatt.changeRelated.attribute.revType"/>
      <ref name="_teiatt.changeRelated.attribute.correction"/>
      <ref name="_teiatt.changeRelated.attribute.proposedBy"/>
      <ref name="_teiatt.changeRelated.attribute.acceptedBy"/>
      <ref name="_teiatt.changeRelated.attribute.rejectedBy"/>
      <ref name="_teiatt.changeRelated.attribute.questionedBy"/>
      <ref name="_teiatt.changeRelated.attribute.markedBy"/>
   </define>
   <define name="_teiatt.changeRelated.attribute.revType">
      <optional>
         <attribute name="revType" ns="http://www.faustedition.net/ns">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
            <choice>
               <value>instant</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(Sofortrevision) </a:documentation>
               <value>instant-or-soon</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(Sofort- oder Baldrevision) </a:documentation>
               <value>soon</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(Baldrevision) </a:documentation>
               <value>soon-or-late</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(Bald- oder Spätrevision) </a:documentation>
               <value>late</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(Spätrevision) </a:documentation>
               <value>uncertain</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(nicht zuzuordnen) </a:documentation>
               <value>aborted</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(abgebrochene/vorgeschlagene Änderung) </a:documentation>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.changeRelated.attribute.correction">
      <optional>
         <attribute name="correction" ns="http://www.faustedition.net/ns">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Korrektur</a:documentation>
            <data type="boolean"/>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.changeRelated.attribute.proposedBy">
      <optional>
         <attribute name="proposedBy" ns="http://www.faustedition.net/ns">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Vorgeschlagen</a:documentation>
            <data type="anyURI"/>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.changeRelated.attribute.acceptedBy">
      <optional>
         <attribute name="acceptedBy" ns="http://www.faustedition.net/ns">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Akzeptiert</a:documentation>
            <data type="anyURI"/>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.changeRelated.attribute.rejectedBy">
      <optional>
         <attribute name="rejectedBy" ns="http://www.faustedition.net/ns">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Verworfen oder fallengelassen </a:documentation>
            <data type="anyURI"/>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.changeRelated.attribute.questionedBy">
      <optional>
         <attribute name="questionedBy" ns="http://www.faustedition.net/ns">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Monierung</a:documentation>
            <data type="anyURI"/>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.changeRelated.attribute.markedBy">
      <optional>
         <attribute name="markedBy" ns="http://www.faustedition.net/ns">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Markiert</a:documentation>
            <data type="anyURI"/>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.layoutAlignment.attributes">
      <ref name="_teiatt.layoutAlignment.attribute.left"/>
      <ref name="_teiatt.layoutAlignment.attribute.left-right"/>
      <ref name="_teiatt.layoutAlignment.attribute.right"/>
      <ref name="_teiatt.layoutAlignment.attribute.right-left"/>
      <ref name="_teiatt.layoutAlignment.attribute.top"/>
      <ref name="_teiatt.layoutAlignment.attribute.top-bottom"/>
      <ref name="_teiatt.layoutAlignment.attribute.bottom"/>
      <ref name="_teiatt.layoutAlignment.attribute.bottom-top"/>
      <ref name="_teiatt.layoutAlignment.attribute.pos"/>
   </define>
   <define name="_teiatt.layoutAlignment.attribute.left">
      <optional>
         <attribute name="left" ns="http://www.faustedition.net/ns">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Zeiger auf ein Element, mit dessen linker Kante die linke Kante des attribuierten Elements aligniert werden soll.</a:documentation>
            <data type="anyURI"/>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.layoutAlignment.attribute.left-right">
      <optional>
         <attribute name="left-right" ns="http://www.faustedition.net/ns">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Zeiger auf ein Element, mit dessen rechte Kante die linke Kante des attribuierten Elements aligniert werden soll.</a:documentation>
            <data type="anyURI"/>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.layoutAlignment.attribute.right">
      <optional>
         <attribute name="right" ns="http://www.faustedition.net/ns">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Zeiger auf ein Element, mit dessen rechter Kante die rechte Kante des attribuierten Elements aligniert werden soll.</a:documentation>
            <data type="anyURI"/>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.layoutAlignment.attribute.right-left">
      <optional>
         <attribute name="right-left" ns="http://www.faustedition.net/ns">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Zeiger auf ein Element, mit dessen linker Kante die rechte Kante des attribuierten Elements aligniert werden soll.</a:documentation>
            <data type="anyURI"/>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.layoutAlignment.attribute.top">
      <optional>
         <attribute name="top" ns="http://www.faustedition.net/ns">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Zeiger auf ein Element, mit dessen oberer Kante die obere Kante des attribuierten Elements aligniert werden soll.</a:documentation>
            <data type="anyURI"/>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.layoutAlignment.attribute.top-bottom">
      <optional>
         <attribute name="top-bottom" ns="http://www.faustedition.net/ns">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Zeiger auf ein Element, mit dessen unterer Kante die obere Kante des attribuierten Elements aligniert werden soll.</a:documentation>
            <data type="anyURI"/>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.layoutAlignment.attribute.bottom">
      <optional>
         <attribute name="bottom" ns="http://www.faustedition.net/ns">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Zeiger auf ein Element, mit dessen unterer Kante die untere Kante des attribuierten Elements aligniert werden soll.</a:documentation>
            <data type="anyURI"/>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.layoutAlignment.attribute.bottom-top">
      <optional>
         <attribute name="bottom-top" ns="http://www.faustedition.net/ns">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Zeiger auf ein Element, mit dessen oberer Kante die untere Kante des attribuierten Elements aligniert werden soll.</a:documentation>
            <data type="anyURI"/>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.layoutAlignment.attribute.pos">
      <optional>
         <attribute name="pos" ns="http://www.faustedition.net/ns">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
            <choice>
               <value>over</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(Daraufschreibung) </a:documentation>
               <value>between</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(Geringerer Abstand zur vorangehenden Zeile) </a:documentation>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="_teiatt.graphicOrientation.attributes">
      <ref name="_teiatt.graphicOrientation.attribute.orient"/>
   </define>
   <define name="_teiatt.graphicOrientation.attribute.orient">
      <attribute name="orient" ns="http://www.faustedition.net/ns">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Attribut zur Orientierung eines graphischen Elements.</a:documentation>
         <choice>
            <value>horiz</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(horizontal) </a:documentation>
            <value>horiz-top</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(horizontal und nach oben) </a:documentation>
            <value>horiz-bottom</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(horizontal und nach unten) </a:documentation>
            <value>vert</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(vertikal) </a:documentation>
            <value>vert-left</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(vertikal und nach links) </a:documentation>
            <value>vert-right</value>
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(vertikal und nach rechts) </a:documentation>
         </choice>
      </attribute>
   </define>
   <define name="_teiatt.graphicStyle.attributes">
      <ref name="_teiatt.graphicStyle.attribute.style"/>
   </define>
   <define name="_teiatt.graphicStyle.attribute.style">
      <optional>
         <attribute name="style" ns="http://www.faustedition.net/ns">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Stil, in dem ein graphisches Element wiedergegeben werden soll.</a:documentation>
            <choice>
               <value>linear</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(geradlinig) </a:documentation>
               <value>curly</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(geschwungen) </a:documentation>
            </choice>
         </attribute>
      </optional>
   </define>
   <define name="_teigrLine">
      <element name="grLine" ns="http://www.faustedition.net/ns">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Kodiert eine Linie auf Dokumentebene</a:documentation>
         <empty/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.transcriptional.attributes"/>
         <ref name="_teiatt.graphicOrientation.attributes"/>
         <ref name="_teiatt.graphicStyle.attributes"/>
         <ref name="_teiatt.measurement.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teigrBrace">
      <element name="grBrace" ns="http://www.faustedition.net/ns">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Kodiert eine Klammer auf Dokumentebene</a:documentation>
         <empty/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.transcriptional.attributes"/>
         <ref name="_teiatt.graphicOrientation.attributes"/>
         <ref name="_teiatt.graphicStyle.attributes"/>
         <ref name="_teiatt.measurement.attributes"/>
         <empty/>
      </element>
   </define>
   <define name="_teiins">
      <element name="ins" ns="http://www.faustedition.net/ns">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Kodiert Einfügungszeichen auf Dokumentebene.</a:documentation>
         <ref name="_teimacro.lineContent"/>
         <ref name="_teiatt.global.attributes"/>
         <ref name="_teiatt.transcriptional.attributes"/>
         <ref name="_teiatt.graphicStyle.attributes"/>
         <attribute name="at" ns="http://www.faustedition.net/ns">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Verweist auf die Stelle, an der etwas eingefügt wird.</a:documentation>
            <data type="anyURI"/>
         </attribute>
         <attribute name="orient" ns="http://www.faustedition.net/ns">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Gibt an, ob der eingefügte Text zur Linken, oder zur Rechten des Einfügungszeichens steht.</a:documentation>
            <choice>
               <value>left</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(eingefügter Text links vom Einfügungszeichen) </a:documentation>
               <value>right</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(eingefügter Text rechts vom Einfügungszeichen) </a:documentation>
            </choice>
         </attribute>
         <empty/>
      </element>
   </define>
   <define name="_teimodel.linePart.overwritten">
      <choice>
         <ref name="_teiunder"/>
         <ref name="_teiover"/>
         <ref name="_teioverw"/>
      </choice>
   </define>
   <define name="_teiunder">
      <element name="under" ns="http://www.faustedition.net/ns">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Das unter der Ãœberschreibung stehende.</a:documentation>
         <ref name="_teimacro.lineContent"/>
      </element>
   </define>
   <define name="_teiover">
      <element name="over" ns="http://www.faustedition.net/ns">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Das auf dem Ãœberschriebenden stehende.</a:documentation>
         <ref name="_teimacro.lineContent"/>
      </element>
   </define>
   <define name="_teioverw">
      <element name="overw" ns="http://www.faustedition.net/ns">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Umgebung zur Kodierung von Ãœberschreibungen.</a:documentation>
         <oneOrMore>
            <ref name="_teimodel.linePart.overwritten"/>
         </oneOrMore>
         <ref name="_teiatt.global.attributes"/>
         <empty/>
      </element>
   </define>
   <start>
      <choice>
         <ref name="_teiTEI"/>
      </choice>
   </start>
</grammar>