<node>

<node> encodes a node, a possibly labeled point in a graph. 19.1 Graphs and Digraphs
Module nets — 19 Graphs, Networks, and Trees
In addition to global attributes In addition to global attributes
value provides the value of a node, which is a feature structure or other analytic element.
Status Optional
Datatype

<rng:ref name="data.pointer"/>
data.pointer
Values A valid identifier.
type provides a type for a node.
Status Optional
Datatype

<rng:ref name="data.enumerated"/>
data.enumerated
Suggested values include:
initial
initial node in a transition network
final
final node in a transition network
adjTo (adjacent to) gives the identifiers of the nodes which are adjacent to the current node.
Status Recommended when applicable
Datatype 1–∞ occurrences of 

<rng:ref name="data.pointer"/>
data.pointer
separated by whitespace
Values A list of identifiers.
adjFrom (adjacent from) gives the identifiers of the nodes which are adjacent from the current node.
Status Recommended when applicable
Datatype 1–∞ occurrences of 

<rng:ref name="data.pointer"/>
data.pointer
separated by whitespace
Values A list of identifiers.
adj (adjacent) gives the identifiers of the nodes which are both adjacent to and adjacent from the current node.
Status Recommended when applicable
Datatype 1–∞ occurrences of 

<rng:ref name="data.pointer"/>
data.pointer
separated by whitespace
Values A list of identifiers.
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

<rng:ref name="data.count"/>
data.count
Values A non-negative integer.
outDegree gives the out degree of the node, the number of nodes which are adjacent to the given node.
Status Optional
Datatype

<rng:ref name="data.count"/>
data.count
Values A non-negative integer.
degree gives the degree of the node, the number of arcs with which the node is incident.
Status Optional
Datatype

<rng:ref name="data.count"/>
data.count
Values A non-negative integer.
Note
Use this attribute instead of the inDegree and outDegree attributes when the graph is undirected and vice versa if the graph is directed.
Used by
May contain
core: label
Declaration

<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:oneOrMore>
     <rng:ref name="data.pointer"/>
    </rng:oneOrMore>
   </rng:list>
  </rng:attribute>
 </rng:optional>
 <rng:optional>
  <rng:attribute name="adjFrom">
   <rng:list>
    <rng:oneOrMore>
     <rng:ref name="data.pointer"/>
    </rng:oneOrMore>
   </rng:list>
  </rng:attribute>
 </rng:optional>
 <rng:optional>
  <rng:attribute name="adj">
   <rng:list>
    <rng:oneOrMore>
     <rng:ref name="data.pointer"/>
    </rng:oneOrMore>
   </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+ } }?,
   attribute adjFrom { list { data.pointer+ } }?,
   attribute adj { list { data.pointer+ } }?,
   attribute inDegree { data.count }?,
   attribute outDegree { data.count }?,
   attribute degree { data.count }?,
   ( label, label? )?
}
Example
<node
  xml:id="t6"
  type="final"
  inDegree="2"
  outDegree="0">

 <label>6</label>
</node>
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.