<tree>

<tree> 수형도를 부호화하며, 이 수형도는 뿌리, 내부 노드, 단말노드, 그리고 뿌리로부터 단말 노드에 이르는 호로 구성된다. 19.2 Trees
모듈 nets — 19 Graphs, Networks, and Trees
전체 속성에 부가
arity 뿌리의 자식 노드 및 수형도의 내부 노드의 최대 수를 제시한다.
상태 수의적
자료 유형

<rng:ref name="data.count"/>
data.count
A nonnegative integer.
ord (순서가 있는) 수형도가 순서가 있는지, 또는 수형도가 부분적으로 순서가 있는지를 나타낸다.
상태 필수적
적법한 값은:
true
수형도의 모든 분지 노드가 순서가 있음을 나타낸다. [기본값]
partial
수형도의 분지 노드 중 일부는 순서가 있고, 일부는 순서가 없음을 나타낸다.
false
수형도의 모든 분지 노드는 순서가 없음을 나타낸다.
order 수형도의 순서를 제시한다. 즉, 그 노드의 수
상태 수의적
자료 유형

<rng:ref name="data.count"/>
data.count
A nonnegative integer.
에 의해 사용된
포함할 수 있다
core: label
nets: iNode leaf root
선언

<rng:element name="tree">
 <rng:ref name="att.global.attributes"/>
 <rng:optional>
  <rng:attribute name="arity">
   <rng:ref name="data.count"/>
  </rng:attribute>
 </rng:optional>
 <rng:attribute name="ord" a:defaultValue="true">
  <rng:choice>
   <rng:value>true</rng:value>
   <rng:value>partial</rng:value>
   <rng:value>false</rng:value>
  </rng:choice>
 </rng:attribute>
 <rng:optional>
  <rng:attribute name="order">
   <rng:ref name="data.count"/>
  </rng:attribute>
 </rng:optional>
 <rng:group>
  <rng:optional>
   <rng:ref name="label"/>
  </rng:optional>
  <rng:group>
   <rng:zeroOrMore>
    <rng:choice>
     <rng:ref name="leaf"/>
     <rng:ref name="iNode"/>
    </rng:choice>
   </rng:zeroOrMore>
   <rng:ref name="root"/>
   <rng:zeroOrMore>
    <rng:choice>
     <rng:ref name="leaf"/>
     <rng:ref name="iNode"/>
    </rng:choice>
   </rng:zeroOrMore>
  </rng:group>
 </rng:group>
</rng:element>
element tree
{
   att.global.attributes,
   attribute arity { data.count }?,
   attribute ord { "true" | "partial" | "false" },
   attribute order { data.count }?,
   ( label?, ( ( leaf | iNode )*, root, ( leaf | iNode )* ) )
}
<tree
  n="ex2"
  arity="2"
  ord="partial"
  order="13">

 <root xml:id="G-div1" children="#G-plu1 #G-exp1" ord="true">
  <label>/</label>
 </root>
 <iNode
   xml:id="G-plu1"
   children="#G-exp2 #G-exp3"
   parent="#G-div1"
   ord="false">

  <label>+</label>
 </iNode>
 <iNode
   xml:id="G-exp1"
   children="#G-plu2 #G-num2.3"
   parent="#G-div1"
   ord="true">

  <label>**</label>
 </iNode>
 <iNode
   xml:id="G-exp2"
   children="#G-vara1 #G-num2.1"
   parent="#G-plu1"
   ord="true">

  <label>**</label>
 </iNode>
 <iNode
   xml:id="G-exp3"
   children="#G-varb1 #G-num2.2"
   parent="#G-plu1"
   ord="true">

  <label>**</label>
 </iNode>
 <iNode
   xml:id="G-plu2"
   children="#G-vara2 #G-varb2"
   parent="#G-exp1"
   ord="false">

  <label>+</label>
 </iNode>
 <leaf xml:id="G-vara1" parent="#G-exp2">
  <label>a</label>
 </leaf>
 <leaf xml:id="G-num2.1" parent="#G-exp2">
  <label>2</label>
 </leaf>
 <leaf xml:id="G-varb1" parent="#G-exp3">
  <label>b</label>
 </leaf>
 <leaf xml:id="G-num2.2" parent="#G-exp3">
  <label>2</label>
 </leaf>
 <leaf xml:id="G-vara2" parent="#G-plu2">
  <label>a</label>
 </leaf>
 <leaf xml:id="G-varb2" parent="#G-plu2">
  <label>b</label>
 </leaf>
 <leaf xml:id="G-num2.3" parent="#G-exp1">
  <label>2</label>
 </leaf>
</tree>