This repository was archived by the owner on Sep 25, 2018. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 28
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 | ✓ | |