[
https://issues.apache.org/jira/browse/SCXML-142?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jacob Beard resolved SCXML-142.
-------------------------------
Fix Version/s: GSoC
Resolution: Fixed
Resolved in svn r966772
> Proper handling of SCXML events
> -------------------------------
>
> Key: SCXML-142
> URL: https://issues.apache.org/jira/browse/SCXML-142
> Project: Commons SCXML
> Issue Type: Sub-task
> Affects Versions: GSoC
> Reporter: Jacob Beard
> Assignee: Jacob Beard
> Fix For: GSoC
>
>
> Current implementation is not fully compliant with
> http://www.w3.org/TR/scxml/#events. Specifically:
> {quote}
> Events have names which are matched against the "event" attribute of
> transitions. These names are strings consisting of alphanumeric characters
> plus the character '.' which is used to segment names into tokens. The
> "event" attribute of a transition consists of one or more event designators
> separated by spaces. A transition matches an event if one of its event
> designators is identical to the event's name or if it is a sequence of tokens
> that form a prefix of the event's name. Thus a transition with an "event"
> attribute of 'error foo' will match events named 'error', 'error.send',
> 'error.send.failed', etc. (or 'foo', 'foo.bar' etc.) but would not match
> events named 'errors.my.custom' or 'errorhandler.mistake' (or 'foobar'). For
> compatibility with CCXML, and to make the prefix matching possibly more clear
> to a reader of the SCXML document, an event designator may also end with the
> wildcard '.*', which matches zero or more tokens at the end of the processed
> event's name. Note that a transition with "event" of 'error' and one with
> 'error.*' are functionally equivalent since the transition selection
> algorithm always runs prefix matching on the "event" attribute. As further
> syntactic sugar, an event designator consisting solely of '*' can be used as
> a wildcard matching any sequence of tokens which thus will match any event.
> Note that this is different from a transition lacking the "event" attribute
> altogether. Such an eventless transition does not match any event, but will
> be taken whenever its "cond" attribute evaluates to 'true'. As shown in B
> Algorithm for SCXML Interpretation, the SCXML interpreter will check for such
> eventless transitions when it first enters a state, before it looks for
> transitions driven by internal or external events.
> {quote}
> Currently, SCXML events are simply enumerated for efficiency.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.