<schemaSpec>  (spécification de schéma) génère un schéma conforme à la TEI et la documentation qui
                     l'accompagne. [2.3  The Encoding Description22.2  Modules and Schemas23.5.1  Making a Unified ODD 
               
                  Module tagdocs — Documentation Elements 
                
               
                  Attributs att.global  (@xml:id , @n , @xml:lang , @xml:base , @xml:space )  (att.global.rendition  (@rend , @style , @rendition ))  (att.global.linking  (@corresp , @synch , @sameAs , @copyOf , @next , @prev , @exclude , @select ))  (att.global.analytic  (@ana ))  (att.global.facs  (@facs ))  (att.global.change  (@change ))  (att.global.responsibility  (@cert , @resp ))  (att.global.source  (@source )) att.identified  (@ident , @predeclare , @module )  (att.combinable  (@mode ) (att.deprecated  (@validUntil )) ) att.namespaceable  (@ns ) att.docStatus  (@status ) 
                     
                        
                           start start ⚓ 
                           précise les points d'accès au schéma, i.e. quels sont les éléments permis comme racine
                              des documents XML qui se conforment à ce schéma.
                              
                                 
                                    Statut  Optionel  
                                 
                                    Type de données   1–∞ occurrences de  teidata.name  séparé par un espace  
                                  
                                 
                                    Valeur par défaut  TEI 
                                  
                              
                            
                         
                        
                           prefix prefix ⚓ 
                           précise un préfixe qui sera ajouté à tous les modèles de définition des éléments de
                              la TEI. Cela autorise l'introduction des schémas externes ayant des éléments de même
                              nom que ceux de la TEI
                              
                                 
                                    Statut  Optionel  
                                 
                                    Type de données   0–1 occurrences de  teidata.xmlName  séparé par un espace  
                                  
                                 
                                    Note 
                                       Les deux-points, bien qu'ils soient permis à l'intérieur de la valeur, provoqueront
                                          la génération d'un schéma invalide. 
                                     
                                  
                              
                            
                         
                        
                           targetLang targetLang ⚓ 
                           (langue cible) lorsque des noms pour un élément ou pour un attribut sont disponibles
                              en plusieurs langues, précise quelle langue utiliser lors de la création d'objets
                              dans un schéma .
                              
                            
                         
                        
                           docLang docLang ⚓ 
                           (langue de documentation) lorsque la description pour un élément, un attribut, une
                              classe ou une macro est disponible en plusieurs langues, précise quelle langue utiliser
                              lors de la création de la documentation.
                              
                                 
                                    Statut  Optionel  
                                 
                                    Type de données   1–∞ occurrences de  teidata.language  séparé par un espace  
                                  
                              
                            
                         
                        
                           defaultExceptions defaultExceptions ⚓ 
                           (default namespace
                              exclusions) provides a list of namespaces and/or prefixed element names to be excluded
                              by default from anyName in RELAX NG schemas
                              
                                 
                                    Statut  Recommendé  
                                 
                                    Type de données   1–∞ occurrences de  teidata.namespaceOrName  séparé par un espace  
                                  
                                 
                                    Valeur par défaut  http://www.tei-c.org/ns/1.0 teix:egXML 
                                  
                              
                            
                         
                     
                   
               
                  Membre du 
                     
                   
                
               
                  Contenu dans 
                     
                   
                
               
                  Peut contenir 
                     
                   
                
               
                  Note 
                     Un schéma combine des références aux modules ou aux groupes de spécifications avec
                        d'autres déclarations atomiques. Le traitement d'un élément de schéma doit résoudre
                        tous les conflits entre les déclarations qu'il contient ou les références. Des processeurs
                        ODD différents peuvent générer des schémas et une documentation en utilisant différentes
                        syntaxes concrètes.
                   
                
               
                  Exemple 
                     <schemaSpec prefix ="TEI_ " ident ="testsvg "start ="TEI svg ">  <moduleRef source ="tei:current "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 current release version of the header module, and elements from an existing RELAX
                        NG schema available from the URL indicated.
                   
                
               
                  Exemple 
                     <schemaSpec ident ="Bare-plus "source ="tei_bare.compiled.odd " start ="TEI ">  <moduleRef key ="tei "/>  <moduleRef key ="header "/>  <elementRef key ="q " source ="tei:3.0.0 "/>  <moduleRef key ="textstructure "/> </schemaSpec> 
                     This schema starts with a pre-existing customization of the TEI called TEI Bare (a
                        customization with a minimal selection of elements). The q  element is not available in TEI Bare, but it can be brought back. In this case, we
                        will get the version defined in TEI P5 release 3.0.0
                   
                
               
                  Modèle de contenu 
                     <content> <sequence> <alternate minOccurs ="0 "maxOccurs ="unbounded "> <classRef key ="model.glossLike "/> <classRef key ="model.descLike "/> </alternate> <alternate minOccurs ="0 "maxOccurs ="unbounded "> <classRef key ="model.oddRef "/> <classRef key ="model.oddDecl "/> <elementRef key ="listRef "/> </alternate> </sequence> </content>  
                
               
                  Schéma Declaration 
                     Syntaxe XML Syntaxe compact <rng:element name ="schemaSpec "> <rng:ref name ="att.global.attributes "/> <rng:ref name ="att.global.rendition.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:ref name ="att.global.responsibility.attributes "/> <rng:ref name ="att.global.source.attributes "/> <rng:ref name ="att.identified.attributes "/> <rng:ref name ="att.combinable.attributes "/> <rng:ref name ="att.deprecated.attributes "/> <rng:ref name ="att.namespaceable.attributes "/> <rng:ref name ="att.docStatus.attributes "/> <rng:optional> <rng:attribute name ="start "a:defaultValue ="TEI "> <rng:list> <rng:oneOrMore> <rng:ref name ="teidata.name "/> </rng:oneOrMore> </rng:list> </rng:attribute> </rng:optional> <rng:optional> <rng:attribute name ="prefix "> <rng:ref name ="teidata.xmlName "/> </rng:attribute> </rng:optional> <rng:optional> <rng:attribute name ="targetLang "> <rng:ref name ="teidata.language "/> </rng:attribute> </rng:optional> <rng:optional> <rng:attribute name ="docLang "> <rng:list> <rng:oneOrMore> <rng:ref name ="teidata.language "/> </rng:oneOrMore> </rng:list> </rng:attribute> </rng:optional> <rng:optional> <rng:attribute name ="defaultExceptions "a:defaultValue ="http://www.tei-c.org/ns/1.0 teix:egXML "> <rng:list> <rng:oneOrMore> <rng:ref name ="teidata.namespaceOrName "/> </rng:oneOrMore> </rng:list> </rng:attribute> </rng:optional> <rng:group> <rng:zeroOrMore> <rng:choice> <rng:ref name ="model.glossLike "/> <rng:ref name ="model.descLike "/> </rng:choice> </rng:zeroOrMore> <rng:zeroOrMore> <rng:choice> <rng:ref name ="model.oddRef "/> <rng:ref name ="model.oddDecl "/> <rng:ref name ="listRef "/> </rng:choice> </rng:zeroOrMore> </rng:group> </rng:element> 
element  schemaSpec 
{
   att.global.attributes ,
   att.global.rendition.attributes ,
   att.global.linking.attributes ,
   att.global.analytic.attributes ,
   att.global.facs.attributes ,
   att.global.change.attributes ,
   att.global.responsibility.attributes ,
   att.global.source.attributes ,
   att.identified.attributes ,
   att.combinable.attributes ,
   att.deprecated.attributes ,
   att.namespaceable.attributes ,
   att.docStatus.attributes ,
   attribute start { list { teidata.name + } }?,
   attribute prefix { teidata.xmlName  }?,
   attribute targetLang { teidata.language  }?,
   attribute docLang { list { teidata.language + } }?,
   attribute defaultExceptions { list { teidata.namespaceOrName + } }?,
   (
      ( model.glossLike  | model.descLike  )*,
      ( model.oddRef  | model.oddDecl  | listRef  )*
   )
}