Expand description
The chart IR: the canonical, surface-independent representation of a statechart.
Every surface (SCXML, RDF, and later YAML and the Rust DSL) reads into and writes from
these types. The IR keeps expression text uninterpreted; it is evaluated only by a
crate::datamodel::Datamodel. Source positions are carried in Span values, which
compare equal to every other span so that derived equality is structural
([[openspec:chart-model#Chart Equality]]).
Structs§
- Chart
- The root of a chart: the
<scxml>element. - Content
<content>.- Data
- A
<data>item. - Done
Data <donedata>.- Exec
- One executable content element.
- Extension
- An attribute or element from the
vt:namespace or a foreign namespace, kept on its owner. - IfBranch
- One branch of an
<if>. - Initial
- The
<initial>pseudo-state of a compound state. - Invoke
<invoke>(W3C SCXML 6.4).- Param
<param>.- Script
<script>.- Send
<send>(W3C SCXML 6.2).- Span
- A source location in the document a node was read from.
- State
- A state node of any kind.
- Transition
- A transition.
Enums§
- Binding
- Binding mode for data items (W3C SCXML 5.3).
- Exec
Kind - The executable content elements of SCXML.
- Extension
Value - The content of an extension node.
- History
Type - History depth.
- State
Element - The element a state was written as.
- State
Kind - The classification of a state (W3C SCXML 3.1).
- Transition
Type - Transition type (W3C SCXML 3.13).
Constants§
- SCXML_
NS - The SCXML namespace.
- VT_NS
- The Vertep extension namespace, used in SCXML documents and as the ontology namespace.