commons-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ingmar Kliche (JIRA)" <j...@apache.org>
Subject [jira] Commented: (SCXML-52) Error on resolving conflicting transitions for compound states
Date Tue, 21 Aug 2007 09:21:32 GMT

    [ https://issues.apache.org/jira/browse/SCXML-52?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12521370
] 

Ingmar Kliche commented on SCXML-52:
------------------------------------

Here is a use case which still not works:

<?xml version="1.0"?>
<scxml version="1.0" xmlns="http://www.w3.org/2005/07/scxml"
initialstate="main" id="test">

 <datemodel>
  <data id="foo" expr="'1'"/>
  <data id="bar" expr="'1'"/>
 </datemodel>
 <state id = "main">
  <parallel id ="parallel">
   <state id="s1">
    <initial>
     <transition target="s11"/>
    </initial>
    <state id="s11">
     <transition event="event1">
      <send event="interal_event1"/>
      <send event="interal_event2"/>
     </transition>
     <transition event="event2" cond="foo == 2 and bar == 2" target="s12"/>
    </state>
    <state id="s12"/>
   </state>
   <state id="s2">
    <transition event="interal_event1">
     <assign name="foo" expr="'2'"/>
    </transition>
    <transition event="interal_event2">
     <assign name="bar" expr="'2'"/>
    </transition>
   </state>
  </parallel>
 </state>
</scxml>

On event1 the state machine generates two internal events. While executing
the two internal events, the second transition on "internal_event2" gets
removed - which is not correct.



> Error on resolving conflicting transitions for compound states
> --------------------------------------------------------------
>
>                 Key: SCXML-52
>                 URL: https://issues.apache.org/jira/browse/SCXML-52
>             Project: Commons SCXML
>          Issue Type: Bug
>    Affects Versions: 0.6
>            Reporter: Ingmar Kliche
>             Fix For: 0.7
>
>
> There seems to be a problem on the resolution of conflicting transitions for compound
states. See the following scxml document:
> <scxml xmlns="http://www.w3.org/2005/07/scxml" version="1.0" initialstate="s1">
>     <datamodel>
>         <data name="x"/>
>     </datamodel>
>     
>     <state id="s1">
>         <initial>
>             <transition target="s11"/>
>         </initial>
>         
>         <transition event="event_1">
>             <assign name="x"  expr="'s1'"/>
>         </transition>
>        
>        <transition event="event_2" target="s1">
>             <assign name="x"  expr="'s1'"/>
>         </transition>
>         
>         <state id="s11">
>             <transition event="event_1">
>                        <assign name="x"  expr="'s11'"/>
>             </transition>
>            <transition event="event_2" target="s11">
>                        <assign name="x"  expr="'s11'"/>
>             </transition>
>         </state>
>     </state>
>     
>     <state id="s2" final="true" />
> </scxml>
> The state machine enters a compound state s1 which contains another state s11 as its
intitial state. Both states have transitions on event_1 and event_2. Note that event_1 has
no target, whereas event_2 has a target towards the same state.
> For event_2 everything works as expected, i.e. only the transition on state s11 is executed
and therefor s11 is reentered (I have a listener in my environment and can monitor this).

> The error occurs at event_1. On event_1 both transitions of s1 _and_ s11 are executed
- but only once. After this, the state machine gets stuck (in particular the currentStates-List
is empty). Any subsequent event will not cause any further action.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message