<node>

<node> グラフのラベル付きノードを示す. 19.1 Graphs and Digraphs
モジュール nets — 19 Graphs, Networks, and Trees
グローバル属性の他
value ノードの値を示す.これは,素性構造または他の分析要素である.
状態 任意
データ型

<rng:ref name="data.pointer"/>
data.pointer
A valid identifier.
type ノードの種類を示す.
状態 任意
データ型

<rng:ref name="data.enumerated"/>
data.enumerated
提案する値は以下の通り:
initial
遷移ネットワークの初期ノード.
final
遷移ネットワークの最終ノード.
adjTo (adjacent to) 有向グラフにおける,現行ノードに入るノードの識別子を示す.
状態 利用できる場合は推奨.
データ型 1–∞ occurrences of 

<rng:ref name="data.pointer"/>
data.pointer
空白文字で区切られる
A list of identifiers.
adjFrom (adjacent from) 有向グラフにおける,現行ノードから出るノードの識別子を示す.
状態 利用できる場合は推奨.
データ型 1–∞ occurrences of 

<rng:ref name="data.pointer"/>
data.pointer
空白文字で区切られる
A list of identifiers.
adj (adjacent) 無向グラフにおける,現行ノードに隣接するノードの識別子を示す.
状態 利用できる場合は推奨.
データ型 1–∞ occurrences of 

<rng:ref name="data.pointer"/>
data.pointer
空白文字で区切られる
A list of identifiers.
解説
当該グラフが無向グラフの場合は,属性adjToadjFromの代わりに当該属性を使う.当該グラフが有向グ ラフの場合は,その逆である.
inDegree 現行ノードの入りの次数.すなわち,ノードへ入る辺の数.
状態 任意
データ型

<rng:ref name="data.count"/>
data.count
A non-negative integer.
outDegree 現行ノードの出の次数.すなわち,ノードから出る辺の数.
状態 任意
データ型

<rng:ref name="data.count"/>
data.count
A non-negative integer.
degree 当該ノードの次数.すなわち,ノードにある辺の数.
状態 任意
データ型

<rng:ref name="data.count"/>
data.count
A non-negative integer.
解説
当該属性は,当該グラフが無向グラフの場合に,属性 inDegreeoutDegreeの代わりに使用される. 有向グラフの場合は,その逆である.
当該モジュールを使用するもの
下位
core: label
宣言

<rng:element name="node">
 <rng:ref name="att.global.attributes"/>
 <rng:optional>
  <rng:attribute name="value">
   <rng:ref name="data.pointer"/>
  </rng:attribute>
 </rng:optional>
 <rng:optional>
  <rng:attribute name="type">
   <rng:choice>
    <rng:value>initial</rng:value>
    <rng:value>final</rng:value>
    <rng:data type="Name"/>
   </rng:choice>
  </rng:attribute>
 </rng:optional>
 <rng:optional>
  <rng:attribute name="adjTo">
   <rng:list>
    <rng:ref name="data.pointer"/>
    <rng:zeroOrMore>
     <rng:ref name="data.pointer"/>
    </rng:zeroOrMore>
   </rng:list>
  </rng:attribute>
 </rng:optional>
 <rng:optional>
  <rng:attribute name="adjFrom">
   <rng:list>
    <rng:ref name="data.pointer"/>
    <rng:zeroOrMore>
     <rng:ref name="data.pointer"/>
    </rng:zeroOrMore>
   </rng:list>
  </rng:attribute>
 </rng:optional>
 <rng:optional>
  <rng:attribute name="adj">
   <rng:list>
    <rng:ref name="data.pointer"/>
    <rng:zeroOrMore>
     <rng:ref name="data.pointer"/>
    </rng:zeroOrMore>
   </rng:list>
  </rng:attribute>
 </rng:optional>
 <rng:optional>
  <rng:attribute name="inDegree">
   <rng:ref name="data.count"/>
  </rng:attribute>
 </rng:optional>
 <rng:optional>
  <rng:attribute name="outDegree">
   <rng:ref name="data.count"/>
  </rng:attribute>
 </rng:optional>
 <rng:optional>
  <rng:attribute name="degree">
   <rng:ref name="data.count"/>
  </rng:attribute>
 </rng:optional>
 <rng:optional>
  <rng:ref name="label"/>
  <rng:optional>
   <rng:ref name="label"/>
  </rng:optional>
 </rng:optional>
</rng:element>
element node
{
   att.global.attributes,
   attribute value { data.pointer }?,
   attribute type { "initial" | "final" | xsd:Name }?,
   attribute adjTo { list { data.pointer, data.pointer* } }?,
   attribute adjFrom { list { data.pointer, data.pointer* } }?,
   attribute adj { list { data.pointer, data.pointer* } }?,
   attribute inDegree { data.count }?,
   attribute outDegree { data.count }?,
   attribute degree { data.count }?,
   ( label, label? )?
}
<node
  xml:id="t6"
  type="final"
  inDegree="2"
  outDegree="0">

 <label>6</label>
</node>
解説
ゼロ以上の子要素labelをとるかもしれない.最初の要素 labelは,辺のラベルを示す.2番目の要素labelは,, 辺の2つめのラベルを示す.トランスデューサの動作が,辺ではなくノー ドに関連して定義される場合に,当該要素が使用されるべきである.