<node>

<node> グラフのラベル付きノードを示す. [19.1 Graphs and Digraphs]
モジュールnets — Graphs, Networks, and Trees
属性att.global (@xml:id, @n, @xml:lang, @xml:base, @xml:space) (att.global.rendition (@rend, @style, @rendition)) (att.global.linking (@corresp, @synch, @sameAs, @copyOf, @next, @prev, @exclude, @select)) (att.global.analytic (@ana)) (att.global.facs (@facs)) (att.global.change (@change)) (att.global.responsibility (@cert, @resp)) (att.global.source (@source))
valueノードの値を示す.これは,素性構造または他の分析要素である.
状態 任意
データ型 teidata.pointer
typeノードの種類を示す. 提案する値は以下の通り: 1] initial; 2] final
状態 任意
データ型 teidata.enumerated
提案する値は以下の通り:
initial
遷移ネットワークの初期ノード.
final
遷移ネットワークの最終ノード.
<graph>
 <node xml:id="gnex11" adjTo="#gnex12"
  adj="#gnex13" type="initial">

  <label>1</label>
 </node>
 <node xml:id="gnex12" adjFrom="#gnex11"
  adjTo="#gnex13">

  <label>2</label>
 </node>
 <node xml:id="gnex13" adjFrom="#gnex12"
  adj="#gnex11" type="final">

  <label>3</label>
 </node>
</graph>
adjTo(adjacent to) 有向グラフにおける,現行ノードに入るノードの識別子を示す.
状態 任意
データ型 1–∞ occurrences of teidata.pointer 空白文字で区切られる
<graph>
 <node xml:id="gnex21" adjTo="#gnex22"
  adj="#gnex23" type="initial">

  <label>1</label>
 </node>
 <node xml:id="gnex22" adjTo="#gnex23">
  <label>2</label>
 </node>
 <node xml:id="gnex23" type="final">
  <label>3</label>
 </node>
</graph>
adjFrom(adjacent from) 有向グラフにおける,現行ノードから出るノードの識別子を示す.
状態 任意
データ型 1–∞ occurrences of teidata.pointer 空白文字で区切られる
<graph>
 <node xml:id="gnex31" type="initial">
  <label>1</label>
 </node>
 <node xml:id="gnex32" adjFrom="#gnex31">
  <label>2</label>
 </node>
 <node xml:id="gnex33" adjFrom="#gnex32"
  adj="#gnex31" type="final">

  <label>3</label>
 </node>
</graph>
adj(adjacent) 無向グラフにおける,現行ノードに隣接するノードの識別子を示す.
状態 任意
データ型 1–∞ occurrences of teidata.pointer 空白文字で区切られる
<graph>
 <node xml:id="gnex41"
  adj="#gnex42 #gnex43" type="initial">

  <label>1</label>
 </node>
 <node xml:id="gnex42"
  adj="#gnex41 #gnex43">

  <label>2</label>
 </node>
 <node xml:id="gnex43"
  adj="#gnex42 #gnex41" type="final">

  <label>3</label>
 </node>
</graph>
解説

当該グラフが無向グラフの場合は,属性adjToや adjFromの代わりに当該属性を使う.当該グラフが有向グ ラフの場合は,その逆である.

inDegree現行ノードの入りの次数.すなわち,ノードへ入る辺の数.
状態 任意
データ型 teidata.count
<graph>
 <node xml:id="gnex51" adjTo="#gnex52"
  adj="#gnex53" inDegree="1" type="initial">

  <label>1</label>
 </node>
 <node xml:id="gnex52" adjFrom="#gnex51"
  adjTo="#gnex53" inDegree="2">

  <label>2</label>
 </node>
 <node xml:id="gnex53" adjFrom="#gnex52"
  adj="#gnex51" inDegree="2" type="final">

  <label>3</label>
 </node>
</graph>
outDegree現行ノードの出の次数.すなわち,ノードから出る辺の数.
状態 任意
データ型 teidata.count
<graph>
 <node xml:id="gnex61" adjTo="#gnex62"
  adj="#gnex63" outDegree="2" type="initial">

  <label>1</label>
 </node>
 <node xml:id="gnex62" adjFrom="#gnex61"
  adjTo="#gnex63" outDegree="1">

  <label>2</label>
 </node>
 <node xml:id="gnex63" adjFrom="#gnex62"
  adj="#gnex61" outDegree="2" type="final">

  <label>3</label>
 </node>
</graph>
degree当該ノードの次数.すなわち,ノードにある辺の数.
状態 任意
データ型 teidata.count
<graph>
 <node xml:id="gnex71" adjTo="#gnex72"
  adj="#gnex73" outDegree="1" inDegree="0" degree="1"
  type="initial">

  <label>1</label>
 </node>
 <node xml:id="gnex72" adjFrom="#gnex71"
  adjTo="#gnex73" outDegree="1" inDegree="1" degree="0">

  <label>2</label>
 </node>
 <node xml:id="gnex73" adjFrom="#gnex72"
  adj="#gnex71" outDegree="0" inDegree="1" degree="1"
  type="final">

  <label>3</label>
 </node>
</graph>
解説

当該属性は,当該グラフが無向グラフの場合に,属性 inDegreeやoutDegreeの代わりに使用される. 有向グラフの場合は,その逆である.

上位
nets: graph
下位
core: label
解説

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

例
<node xml:id="t6" type="final" inDegree="2"
 outDegree="0">

 <label>6</label>
</node>
Content model
<content>
 <sequence minOccurs="0">
  <elementRef key="label"/>
  <elementRef key="label" minOccurs="0"/>
 </sequence>
</content>
宣言
<rng:element name="node">
 <rng:ref name="att.global.attributes"/>
 <rng:ref name="att.global.rendition.attributes"/>
 <rng:ref name="att.global.linking.attributes"/>
 <rng:ref name="att.global.analytic.attributes"/>
 <rng:ref name="att.global.facs.attributes"/>
 <rng:ref name="att.global.change.attributes"/>
 <rng:ref name="att.global.responsibility.attributes"/>
 <rng:ref name="att.global.source.attributes"/>
 <rng:optional>
  <rng:attribute name="value">
   <rng:ref name="teidata.pointer"/>
  </rng:attribute>
 </rng:optional>
 <rng:optional>
  <rng:attribute name="type">
   <rng:choice>
    <rng:value>initial</rng:value>
    <rng:value>final</rng:value>
    <rng:ref name="teidata.enumerated"/>
   </rng:choice>
  </rng:attribute>
 </rng:optional>
 <rng:optional>
  <rng:attribute name="adjTo">
   <rng:list>
    <rng:oneOrMore>
     <rng:ref name="teidata.pointer"/>
    </rng:oneOrMore>
   </rng:list>
  </rng:attribute>
 </rng:optional>
 <rng:optional>
  <rng:attribute name="adjFrom">
   <rng:list>
    <rng:oneOrMore>
     <rng:ref name="teidata.pointer"/>
    </rng:oneOrMore>
   </rng:list>
  </rng:attribute>
 </rng:optional>
 <rng:optional>
  <rng:attribute name="adj">
   <rng:list>
    <rng:oneOrMore>
     <rng:ref name="teidata.pointer"/>
    </rng:oneOrMore>
   </rng:list>
  </rng:attribute>
 </rng:optional>
 <rng:optional>
  <rng:attribute name="inDegree">
   <rng:ref name="teidata.count"/>
  </rng:attribute>
 </rng:optional>
 <rng:optional>
  <rng:attribute name="outDegree">
   <rng:ref name="teidata.count"/>
  </rng:attribute>
 </rng:optional>
 <rng:optional>
  <rng:attribute name="degree">
   <rng:ref name="teidata.count"/>
  </rng:attribute>
 </rng:optional>
 <rng:optional>
  <rng:group>
   <rng:ref name="label"/>
   <rng:optional>
    <rng:ref name="label"/>
   </rng:optional>
  </rng:group>
 </rng:optional>
</rng:element>
element node
{
   att.global.attributes,
   att.global.rendition.attributes,
   att.global.linking.attributes,
   att.global.analytic.attributes,
   att.global.facs.attributes,
   att.global.change.attributes,
   att.global.responsibility.attributes,
   att.global.source.attributes,
   attribute value { teidata.pointer }?,
   attribute type { "initial" | "final" | teidata.enumerated }?,
   attribute adjTo { list { teidata.pointer+ } }?,
   attribute adjFrom { list { teidata.pointer+ } }?,
   attribute adj { list { teidata.pointer+ } }?,
   attribute inDegree { teidata.count }?,
   attribute outDegree { teidata.count }?,
   attribute degree { teidata.count }?,
   ( label, label? )?
}