<schemaSpec>

<schemaSpec> (schema specification) TEI準拠のスキーマや文書を示す.
モジュール tagdocs — 22 Documentation Elements
グローバル属性の他 att.identified (@ident, @predeclare, @module, @mode)
start 当該スキーマの開始点を示す.すなわち,TEI準拠文書の根要素となる 要素を示す.
状態 任意
データ型 1–∞ occurrences of 

<rng:ref name="data.name"/>
data.name
空白文字で区切られる
ns (namespace) 当該スキーマで使用されるデフォルトの名前空間を示す.
状態 任意
データ型

<rng:ref name="data.namespace"/>
data.namespace
prefix TEI要素の全パタンに対応する接頭辞を示す.これにより,TEIと同じ名 前を持つ外部スキーマを混在させることができる.
状態 任意
データ型

<rng:choice>
 <rng:value/>
 <rng:ref name="data.name"/>
</rng:choice>
"" | data.name
解説
コロンは,値としては認められるが,スキーマ中では使用できない.
targetLang (target language) 要素や属性の名前が複数言語である場合には,スキーマ中の対象を作成 する際に使用される言語を特定する.
状態 任意
データ型

<rng:ref name="data.language"/>
data.language
docLang (documentation language) 要素,属性,クラス,マクロの解説が複数言語で可能な場合,解説の言 語を特定する.
状態 任意
データ型 1–∞ occurrences of 

<rng:ref name="data.language"/>
data.language
空白文字で区切られる
当該モジュールを使用するもの
下位
宣言

<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*
   )
}
<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>
解説
スキーマは,モジュールまたは規定集への参照と,他の原子的宣言とを関 連づける.スキーマ要素は,関連する宣言間の齟齬を調整しなければなら ない.ODDソフトウェアは,その種類によって,異なるスキーマや文書を 生成するかもしれない.