<rng:element name="transition">
<rng:optional>
<rng:attribute name="source">
<rng:ref name="macro.fsm.state"/>
</rng:attribute>
</rng:optional>
<rng:optional>
<rng:attribute name="target">
<rng:ref name="macro.fsm.state"/>
</rng:attribute>
</rng:optional>
<rng:choice>
<rng:ref name="token"/>
<rng:ref name="wordForm"/>
<rng:ref name="wfAlt"/>
</rng:choice>
</rng:element>
element transition
{
attribute source { macro.fsm.state }?,
attribute target { macro.fsm.state }?,
( token | wordForm | wfAlt )
}