<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) (att.combinable (@mode)) att.readFrom (@source)
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:ref name="att.combinable.attributes"/>
 <rng:ref name="att.readFrom.attributes"/>
 <rng:optional>
  <rng:attribute name="start" a:defaultValue="TEI">
   <rng:list>
    <rng:ref name="data.name"/>
    <rng:zeroOrMore>
     <rng:ref name="data.name"/>
    </rng:zeroOrMore>
   </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:ref name="data.language"/>
    <rng:zeroOrMore>
     <rng:ref name="data.language"/>
    </rng:zeroOrMore>
   </rng:list>
  </rng:attribute>
 </rng:optional>
 <rng:group>
  <rng:zeroOrMore>
   <rng:ref name="model.glossLike"/>
  </rng:zeroOrMore>
  <rng:zeroOrMore>
   <rng:choice>
    <rng:ref name="model.oddRef"/>
    <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,
   att.combinable.attributes,
   att.readFrom.attributes,
   attribute start { list { data.name, data.name* } }?,
   attribute ns { data.namespace }?,
   attribute prefix { "" | data.name }?,
   attribute targetLang { data.language }?,
   attribute docLang { list { data.language, data.language* } }?,
   ( model.glossLike*, ( model.oddRef | model.oddDecl )*, constraintSpec* )
}
Esempio
<schemaSpec prefix="TEI_" ident="testsvg" start="TEI svg">
 <moduleRef source="tei:5.1" key="header"/>
 <moduleRef key="core"/>
 <moduleRef key="drama"/>
 <moduleRef url="svg11.rng"/>
</schemaSpec>

This schema combines elements from the current versions of the drama and core modules, the TEI 5.1 release version of the header module, and elements from an existing RELAXNG schema available from the URL indicated.