<schemaSpec>

<schemaSpec> (specifica dello schema) genera uno schema TEI-conforme e la relativa documentazione
Modulo tagdocs — 22 Documentation Elements
Oltre agli attributi globali att.identified (@ident, @predeclare, @module, @mode)
start specifica i punti di accesso allo schema, cioè quali elementi sono consentiti come radice dei documenti conformi allo schema stesso
Stato Opzionale
Tipo di dati 1–∞ occorrenze di 

<rng:ref name="data.name"/>
data.name
separato da spazio bianco
ns (nome dello spazio) indica l'eventuale spazio del nome predefinito assegnabile alle componenti dello schema
Stato Opzionale
Tipo di dati

<rng:ref name="data.namespace"/>
data.namespace
prefix indica un prefisso che sarà anteposto a tutti i pattern relativi a elementi TEI; questo consente
Stato Opzionale
Tipo di dati

<rng:choice>
 <rng:value/>
 <rng:ref name="data.name"/>
</rng:choice>
"" | data.name
targetLang (lingua di arrivo) indica la lingua da utilizzare per la creazione di oggetti nello schema nel caso in cui i nomi di elementi o attributi siano disponibili in più lingue
Stato Opzionale
Tipo di dati

<rng:ref name="data.language"/>
data.language
docLang (lingua della documentazione) indica la lingua da utilizzare per la creazione della documentazione nel caso in cui le descrizioni di elementi, attributi, classi o macro siano disponibili in più lingue
Stato Opzionale
Tipo di dati 1–∞ occorrenze di 

<rng:ref name="data.language"/>
data.language
separato da spazio bianco
Usato da
Può contenere
Dichiarazione

<rng:element name="schemaSpec">
 <rng:ref name="att.global.attributes"/>
 <rng:ref name="att.identified.attributes"/>
 <rng:optional>
  <rng:attribute name="start" a:defaultValue="TEI">
   <rng:list>
    <rng:oneOrMore>
     <rng:ref name="data.name"/>
    </rng:oneOrMore>
   </rng:list>
  </rng:attribute>
 </rng:optional>
 <rng:optional>
  <rng:attribute name="ns"
    a:defaultValue="http://www.tei-c.org/ns/1.0">

   <rng:ref name="data.namespace"/>
  </rng:attribute>
 </rng:optional>
 <rng:optional>
  <rng:attribute name="prefix">
   <rng:choice>
    <rng:value/>
    <rng:ref name="data.name"/>
   </rng:choice>
  </rng:attribute>
 </rng:optional>
 <rng:optional>
  <rng:attribute name="targetLang">
   <rng:ref name="data.language"/>
  </rng:attribute>
 </rng:optional>
 <rng:optional>
  <rng:attribute name="docLang">
   <rng:list>
    <rng:oneOrMore>
     <rng:ref name="data.language"/>
    </rng:oneOrMore>
   </rng:list>
  </rng:attribute>
 </rng:optional>
 <rng:group>
  <rng:zeroOrMore>
   <rng:ref name="model.glossLike"/>
  </rng:zeroOrMore>
  <rng:zeroOrMore>
   <rng:choice>
    <rng:ref name="moduleRef"/>
    <rng:ref name="specGrpRef"/>
    <rng:ref name="model.oddDecl"/>
   </rng:choice>
  </rng:zeroOrMore>
  <rng:zeroOrMore>
   <rng:ref name="constraintSpec"/>
  </rng:zeroOrMore>
 </rng:group>
</rng:element>
element schemaSpec
{
   att.global.attributes,
   att.identified.attributes,
   attribute start { list { data.name+ } }?,
   attribute ns { data.namespace }?,
   attribute prefix { "" | data.name }?,
   attribute targetLang { data.language }?,
   attribute docLang { list { data.language+ } }?,
   (
      model.glossLike*,
      ( moduleRef | specGrpRef | model.oddDecl )*,
      constraintSpec*
   )
}
Esempio
<schemaSpec prefix="TEI_" ident="testsvg" start="TEI svg">
 <moduleRef key="header"/>
 <moduleRef key="core"/>
 <moduleRef key="tei"/>
 <moduleRef key="textstructure"/>
 <moduleRef url="svg11.rng"/>
</schemaSpec>