Skip to content

Latest commit

 

History

History
44 lines (28 loc) · 2.3 KB

README.md

File metadata and controls

44 lines (28 loc) · 2.3 KB

JSSCxml

A JavaScript State Chart interpreter that fully implements the W3C's upcoming SCXML recommendation in Web browsers.

The name should be pronounced "JessieXML" or just "Jessie".

It is distributed under a MIT license.

Official website: jsscxml.org

Main Features:

Development status

Latest version: 0.9.1

See the version history and goals.

You can't <send> or receive remote events (of any type) with I/O Processors, but you can already use the included custom <fetch> and <invoke type="event-stream"> elements to get similar results in a client-server fashion.

As mentionned above, you can't <send> SCXML events over HTTP. But you can listen to remote events after invoking a connection with event-stream type.

Known issues

(that I'm not going to fix right now)

  • Variables whose name matched a predefined window variable are pre-declared in the datamodel. You should not delete them if you don't understand what it means and how the datamodel is implemented in JSSC.

  • The JavaScript expression in the location attribute of an <assign> element is currently being evaluated twice while executing the <assign>. That could cause a bug if it has side-effects. You should perform any such actions in a <script>, and use read-only expressions in location attributes. Or you can just write the whole assignment in a <script>, of course.

  • In ECMAScript content, the keyword "this" references a hidden window by default. You should only use it in constructors and object methods, never in a default context, unless you really know what you're doing.