SCION Implementation Status

jbeard4 edited this page Feb 12, 2013 · 3 revisions

The following table attempts to rate SCION's level of conformance to the features described in the SCXML draft specification.

Tag Name Support Status Notes
Core Module
scxml ~ @binding is not supported (always "early").
state
transition
parallel
initial
final ~ Does not send final event. Right now, treated like a normal state.
onentry
onexit
history
Executable Content
raise
if
elseif
else
foreach
log Uses console.log API by default. Can be overridden with a custom function using the "log" option.
Data Model and Data Manipulation
datamodel
data
assign
validate
donedata
content ~ Should work well for JSON and string content. XML content should be included as CDATA.
param
script Variables declared in the datamodel are exposed as local variables in all scripting contexts.
External Communications Module
send Local (targetless) send, with and without delay attribute, are supported in node.js and browser environments out-of-the-box. Sending to remote targets is well supported, but a function to manage external communications must be passed in on the options object when the SCION interpreter is intantiated.
cancel Like <send>, cancel is supported for delayed, targetless send in node.js and browser environments out-of-the-box. Similar to send, to cancel remote send actions, a custom cancel function must be passed in on the options object when the SCION interpreter is instantiated.
invoke
finalize
Additional Requirements
The In() predicate
SCXML Events Everything works, including event matching based on prefixes and wildcard ("*") events.
System Variables ~
The Internal Structure of Events