<app>

<app> (學術編輯註解項目) 一項學術編輯註解,內含一個不必備主題以及至少一個對應本。 [12.1.1 The Apparatus Entry]
組件textcrit — 12 Critical Apparatus
屬性att.global (@xml:id, @n, @xml:lang, @rend, @rendition, @xml:base, @xml:space) (att.global.linking (@corresp, @synch, @sameAs, @copyOf, @next, @prev, @exclude, @select)) (att.global.analytic (@ana)) (att.global.facs (@facs)) (att.global.change (@change))
type利用合適的分類法將此元素所標記的變異分類。
狀態 非必備的
資料類型

<rng:ref name="data.enumerated"/>
data.enumerated
Any convenient descriptive word or phrase, describing the extent of the variation (e.g. word, phrase, punctuation, etc.) its text-critical significance (e.g. significant, accidental, unclear), or the nature of the variation or the principles required to understand it (e.g. lectio difficilior, usus auctoris, etc.)
from必要情況下,指出基礎文件中該主題的開端。
狀態 非必備的
資料類型

<rng:ref name="data.pointer"/>
data.pointer
any valid identifier
to必要情況下,指出基礎文件中該主題的結尾。
狀態 非必備的
資料類型

<rng:ref name="data.pointer"/>
data.pointer
any valid identifier
loc (location) 使用學術編輯註解標記的位置參照辦法時,指出變異的位置。
狀態 非必備的
資料類型 1–∞ 次可出現: 

<rng:ref name="data.word"/>
data.word
以空白鍵隔開
A string containing a canonical reference for the passage to which the variation applies.
屬於
可包含在於
可包含
宣告

<rng:element name="app">
 <rng:ref name="att.global.attributes"/>
 <rng:ref name="att.global.linking.attributes"/>
 <rng:ref name="att.global.analytic.attributes"/>
 <rng:ref name="att.global.facs.attributes"/>
 <rng:ref name="att.global.change.attributes"/>
 <rng:optional>
  <rng:attribute name="type">
   <rng:ref name="data.enumerated"/>
  </rng:attribute>
 </rng:optional>
 <rng:optional>
  <rng:attribute name="from">
   <rng:ref name="data.pointer"/>
  </rng:attribute>
 </rng:optional>
 <rng:optional>
  <rng:attribute name="to">
   <rng:ref name="data.pointer"/>
  </rng:attribute>
 </rng:optional>
 <rng:optional>
  <rng:attribute name="loc">
   <rng:list>
    <rng:ref name="data.word"/>
    <rng:zeroOrMore>
     <rng:ref name="data.word"/>
    </rng:zeroOrMore>
   </rng:list>
  </rng:attribute>
 </rng:optional>
 <rng:group>
  <rng:zeroOrMore>
   <rng:ref name="model.global"/>
  </rng:zeroOrMore>
  <rng:optional>
   <rng:ref name="lem"/>
   <rng:zeroOrMore>
    <rng:ref name="model.global"/>
   </rng:zeroOrMore>
   <rng:optional>
    <rng:ref name="wit"/>
    <rng:zeroOrMore>
     <rng:ref name="model.global"/>
    </rng:zeroOrMore>
   </rng:optional>
  </rng:optional>
  <rng:zeroOrMore>
   <rng:choice>
    <rng:group>
     <rng:ref name="model.rdgLike"/>
     <rng:zeroOrMore>
      <rng:ref name="model.global"/>
     </rng:zeroOrMore>
     <rng:optional>
      <rng:ref name="wit"/>
      <rng:zeroOrMore>
       <rng:ref name="model.global"/>
      </rng:zeroOrMore>
     </rng:optional>
    </rng:group>
    <rng:group>
     <rng:ref name="rdgGrp"/>
     <rng:zeroOrMore>
      <rng:ref name="model.global"/>
     </rng:zeroOrMore>
     <rng:optional>
      <rng:ref name="wit"/>
      <rng:zeroOrMore>
       <rng:ref name="model.global"/>
      </rng:zeroOrMore>
     </rng:optional>
    </rng:group>
   </rng:choice>
  </rng:zeroOrMore>
 </rng:group>
</rng:element>
element app
{
   att.global.attributes,
   att.global.linking.attributes,
   att.global.analytic.attributes,
   att.global.facs.attributes,
   att.global.change.attributes,
   attribute type { data.enumerated }?,
   attribute from { data.pointer }?,
   attribute to { data.pointer }?,
   attribute loc { list { data.word, data.word* } }?,
   (
      model.global*,
      ( lem, model.global*, ( wit, model.global* )? )?,
      (
         ( model.rdgLike, model.global*, ( wit, model.global* )? )
       | ( rdgGrp, model.global*, ( wit, model.global* )? )
      )*
   )
}
Schematron

<sch:assert
 test="count( descendant::tei:lem[ generate-id( current() ) = generate-id( ancestor::tei:app[1] ) ]) < 2">
Only one <lem> element may appear within a single
apparatus entry, whether it appears outside a <rdgGrp>
element or within it.</sch:assert>
Schematron

<sch:assert
 test="count(descendant::tei:rdg[generate-id(current() ) = generate-id(ancestor::tei:app[1])]) > 0">
An <app>
must contain at least one <rdg> element.</sch:assert>
例子
<app>
 <lem wit="#El #Hg">Experience</lem>
 <rdg wit="#La" type="substantive">Experiment</rdg>
 <rdg wit="#Ra2" type="substantive">Eryment</rdg>
</app>
例子
<app type="substantive">
 <rdgGrp type="subvariants">
  <lem wit="#El #Hg">Experience</lem>
  <rdg wit="#Ha4">Experiens</rdg>
 </rdgGrp>
 <rdgGrp type="subvariants">
  <lem wit="#Cp #Ld1">Experiment</lem>
  <rdg wit="#La">Ex<g ref="#per"/>iment</rdg>
 </rdgGrp>
 <rdgGrp type="subvariants">
  <lem>Eriment<wit>[unattested]</wit>
  </lem>
  <rdg wit="#Ra2">Eryment</rdg>
 </rdgGrp>
</app>