start 要素

XML 文書のルート要素を定義

使用例

例1 (ref 要素を用いる方法)
<?xml version="1.0"?>
<grammar xmlns="http://relaxng.org/ns/structure/1.0"
  ns="http://lena.org/">

<start>
 <ref name="document"/>
</start>

<define name="document">
 <element name="document">
   <empty/>
 </element>
</define>
</grammar>
例2 (choice 要素を用い、ルート要素を複数指定。下の例の場合、 doc1, doc2 いずれもルート要素とすることが出来る。ただし、内容の違いに注意)
<start>
 <choice>
  <element name="doc1">
   <text/>
  </element>
  <element name="doc2">
   <empty/>
  </element>
 </choice>
</start>
例3 (start 要素を複数使用。実質的には、上記と全く同一)
<start>
 <element name="doc1">
  <text/>
 </element>
</start>

<start combine="choice">
 <element name="doc2">
  <empty/>
 </element>
</start>

XML Schema や DTD との違い

XML Schema や DTD では、「文書へのスキーマの埋め込み」を前提としているため、スキーマ内でルート要素を指定することは出来ません。