<tree>

<tree> encodes a tree, which is made up of a root, internal nodes, leaves, and arcs from root to leaves. 19.2 Trees
Modulnets — 19 Graphs, Networks, and Trees
Attribute
aritygives the maximum number of children of the root and internal nodes of the tree.
Zustand Optional
Datentyp
data.count
Werte A nonnegative integer.
ord (ordered) indicates whether or not the tree is ordered, or if it is partially ordered.
Zustand Obligatorisch
Gültige Werte:
true
indicates that all of the branching nodes of the tree are ordered. [Vorgabe]
partial
indicates that some of the branching nodes of the tree are ordered and some are unordered.
false
indicates that all of the branching nodes of the tree are unordered.
ordergives the order of the tree, i.e., the number of its nodes.
Zustand Optional
Datentyp
data.count
Werte A nonnegative integer.
Anmerkung
The size of a tree is always one less than its order, hence there is no need for both a size and order attribute.
Verwendet vonforest model.divPart
Kann enthalten
core: label
nets: iNode leaf root
Deklaration
element tree
{
   att.global.attributes,
   attribute arity { data.count }?,
   attribute ord { "true" | "partial" | "false" },
   attribute order { data.count }?,
   ( label?, ( ( leaf | iNode )*, root, ( leaf | iNode )* ) )
}
Beispiel
<tree
  n="ex2"
  arity="2"
  ord="partial"
  order="13">

 <root xml:id="G-div1children="#G-plu1 #G-exp1ord="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-vara1parent="#G-exp2">
  <label>a</label>
 </leaf>
 <leaf xml:id="G-num2.1parent="#G-exp2">
  <label>2</label>
 </leaf>
 <leaf xml:id="G-varb1parent="#G-exp3">
  <label>b</label>
 </leaf>
 <leaf xml:id="G-num2.2parent="#G-exp3">
  <label>2</label>
 </leaf>
 <leaf xml:id="G-vara2parent="#G-plu2">
  <label>a</label>
 </leaf>
 <leaf xml:id="G-varb2parent="#G-plu2">
  <label>b</label>
 </leaf>
 <leaf xml:id="G-num2.3parent="#G-exp1">
  <label>2</label>
 </leaf>
</tree>
Anmerkung
A root, and zero or more internal nodes and leaves, but if there is an internal node, there must also be at least one leaf.