<node>

<node> (node) encodes a node, a possibly labeled point in a graph. [19.1 Graphs and Digraphs]
Module nets — Graphs, Networks, and Trees
Attributes 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)) att.typed (type, @subtype)
type provides a type for a node.
Derived from att.typed
Status Optional
Datatype teidata.enumerated
Suggested values include:
initial
initial node in a transition network
final
final node in a transition network
<graph>
 <node xml:id="gnex11adjTo="#gnex12"
  adj="#gnex13type="initial">

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

  <label>2</label>
 </node>
 <node xml:id="gnex13adjFrom="#gnex12"
  adj="#gnex11type="final">

  <label>3</label>
 </node>
</graph>
value provides the value of a node, which is a feature structure or other analytic element.
Status Optional
Datatype teidata.pointer
adjTo (adjacent to) gives the identifiers of the nodes which are adjacent to the current node.
Status Optional
Datatype 1–∞ occurrences of teidata.pointer separated by whitespace
<graph>
 <node xml:id="gnex21adjTo="#gnex22"
  adj="#gnex23type="initial">

  <label>1</label>
 </node>
 <node xml:id="gnex22adjTo="#gnex23">
  <label>2</label>
 </node>
 <node xml:id="gnex23type="final">
  <label>3</label>
 </node>
</graph>
adjFrom (adjacent from) gives the identifiers of the nodes which are adjacent from the current node.
Status Optional
Datatype 1–∞ occurrences of teidata.pointer separated by whitespace
<graph>
 <node xml:id="gnex31type="initial">
  <label>1</label>
 </node>
 <node xml:id="gnex32adjFrom="#gnex31">
  <label>2</label>
 </node>
 <node xml:id="gnex33adjFrom="#gnex32"
  adj="#gnex31type="final">

  <label>3</label>
 </node>
</graph>
adj (adjacent) gives the identifiers of the nodes which are both adjacent to and adjacent from the current node.
Status Optional
Datatype 1–∞ occurrences of teidata.pointer separated by whitespace
<graph>
 <node xml:id="gnex41"
  adj="#gnex42 #gnex43type="initial">

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

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

  <label>3</label>
 </node>
</graph>
Note

Use this attribute instead of the adjTo and adjFrom attributes when the graph is undirected and vice versa if the graph is directed.

inDegree gives the in degree of the node, the number of nodes which are adjacent from the given node.
Status Optional
Datatype teidata.count
<graph>
 <node xml:id="gnex51adjTo="#gnex52"
  adj="#gnex53inDegree="1type="initial">

  <label>1</label>
 </node>
 <node xml:id="gnex52adjFrom="#gnex51"
  adjTo="#gnex53inDegree="2">

  <label>2</label>
 </node>
 <node xml:id="gnex53adjFrom="#gnex52"
  adj="#gnex51inDegree="2type="final">

  <label>3</label>
 </node>
</graph>
outDegree gives the out degree of the node, the number of nodes which are adjacent to the given node.
Status Optional
Datatype teidata.count
<graph>
 <node xml:id="gnex61adjTo="#gnex62"
  adj="#gnex63outDegree="2type="initial">

  <label>1</label>
 </node>
 <node xml:id="gnex62adjFrom="#gnex61"
  adjTo="#gnex63outDegree="1">

  <label>2</label>
 </node>
 <node xml:id="gnex63adjFrom="#gnex62"
  adj="#gnex61outDegree="2type="final">

  <label>3</label>
 </node>
</graph>
degree gives the degree of the node, the number of arcs with which the node is incident.
Status Optional
Datatype teidata.count
<graph>
 <node xml:id="gnex71adjTo="#gnex72"
  adj="#gnex73outDegree="1inDegree="0degree="1"
  type="initial">

  <label>1</label>
 </node>
 <node xml:id="gnex72adjFrom="#gnex71"
  adjTo="#gnex73outDegree="1inDegree="1degree="0">

  <label>2</label>
 </node>
 <node xml:id="gnex73adjFrom="#gnex72"
  adj="#gnex71outDegree="0inDegree="1degree="1"
  type="final">

  <label>3</label>
 </node>
</graph>
Note

Use this attribute instead of the inDegree and outDegree attributes when the graph is undirected and vice versa if the graph is directed.

Contained by
nets: graph
May contain
core: label
Note

Zero, one, or two children label elements may be present. The first occurence of label provides a label for the arc; the second provides a second label for the arc, and should be used if a transducer is being encoded whose actions are associated with nodes rather than with arcs.

Example
<node xml:id="t6type="finalinDegree="2"
 outDegree="0">

 <label>6</label>
</node>
Content model
<content>
 <sequence minOccurs="0">
  <elementRef key="label"/>
  <elementRef key="labelminOccurs="0"/>
 </sequence>
</content>
Schema Declaration
<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:ref name="att.typed.attribute.subtype"/>
 <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="value">
   <rng:ref name="teidata.pointer"/>
  </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,
   att.typed.attribute.subtype,
   attribute type { "initial" | "final" | teidata.enumerated }?,
   attribute value { teidata.pointer }?,
   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? )?
}