You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@commons.apache.org by ra...@apache.org on 2006/03/04 00:11:33 UTC

svn commit: r382958 - in /jakarta/commons/sandbox/scxml/trunk: src/main/java/org/apache/commons/scxml/io/ src/test/java/org/apache/commons/scxml/ src/test/java/org/apache/commons/scxml/env/ src/test/java/org/apache/commons/scxml/env/jexl/ src/test/java...

Author: rahul
Date: Fri Mar  3 15:11:31 2006
New Revision: 382958

URL: http://svn.apache.org/viewcvs?rev=382958&view=rev
Log:
One of the changes between the July 05 WD [1] (which we're currently close to par with) and the January 06 WD [2] is that transition targets can no longer be anonymous child states of <transition>.

Furthermore, the <target> child of <transition> has been changed into an attribute. This definitely makes the document more compact, since snippets like this:

<transition event="foo.bar">
  <target next="foobarState"/>
</transition>

now turn into:

<transition event="foo.bar" target="foobarState"/>

However, anonymous target states are no longer mentioned in the WD, so the following construct (though not yet removed from the implementation), is not specified by the latest WD, and shouldn't be used:

<transition event="foo.bar">
 <target>
  <state>
   <!-- content of anonymous state -->
  </state>
 </target>
</transition>

So another todo (now this gets the privilege of being low priority ;-) will be to redo documents in the RDC and Shale usecases to sync up. This is low priority since the Commons SCXML implementation still continues to support either case. However, as we tighten up the implementation against the WD, we will probably shed that support (and adjust the usecases accordingly).

[1] http://www.w3.org/TR/2005/WD-scxml-20050705/
[2] http://www.w3.org/TR/2006/WD-scxml-20060124/

Modified:
    jakarta/commons/sandbox/scxml/trunk/src/main/java/org/apache/commons/scxml/io/SCXMLDigester.java
    jakarta/commons/sandbox/scxml/trunk/src/test/java/org/apache/commons/scxml/env/jexl/microwave-01.xml
    jakarta/commons/sandbox/scxml/trunk/src/test/java/org/apache/commons/scxml/env/jexl/microwave-02.xml
    jakarta/commons/sandbox/scxml/trunk/src/test/java/org/apache/commons/scxml/env/jsp/microwave-01.xml
    jakarta/commons/sandbox/scxml/trunk/src/test/java/org/apache/commons/scxml/env/jsp/microwave-02.xml
    jakarta/commons/sandbox/scxml/trunk/src/test/java/org/apache/commons/scxml/env/stopwatch.xml
    jakarta/commons/sandbox/scxml/trunk/src/test/java/org/apache/commons/scxml/send-01.xml
    jakarta/commons/sandbox/scxml/trunk/src/test/java/org/apache/commons/scxml/transitions-01.xml
    jakarta/commons/sandbox/scxml/trunk/xdocs/guide/scxml-documents.xml

Modified: jakarta/commons/sandbox/scxml/trunk/src/main/java/org/apache/commons/scxml/io/SCXMLDigester.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/sandbox/scxml/trunk/src/main/java/org/apache/commons/scxml/io/SCXMLDigester.java?rev=382958&r1=382957&r2=382958&view=diff
==============================================================================
--- jakarta/commons/sandbox/scxml/trunk/src/main/java/org/apache/commons/scxml/io/SCXMLDigester.java (original)
+++ jakarta/commons/sandbox/scxml/trunk/src/main/java/org/apache/commons/scxml/io/SCXMLDigester.java Fri Mar  3 15:11:31 2006
@@ -707,7 +707,9 @@
     private static void addTransitionRules(final String xp,
             final ExtendedBaseRules scxmlRules, final String setNextMethod) {
         scxmlRules.add(xp, new ObjectCreateRule(Transition.class));
-        scxmlRules.add(xp, new SetPropertiesRule());
+        scxmlRules.add(xp, new SetPropertiesRule(
+            new String[] {"event", "cond", "target"},
+            new String[] {"event", "cond", "next"}));
         scxmlRules.add(xp + XPF_TAR, new SetPropertiesRule());
         addActionRules(xp, scxmlRules);
         scxmlRules.add(xp + XPF_EXT, new Rule() {

Modified: jakarta/commons/sandbox/scxml/trunk/src/test/java/org/apache/commons/scxml/env/jexl/microwave-01.xml
URL: http://svn.apache.org/viewcvs/jakarta/commons/sandbox/scxml/trunk/src/test/java/org/apache/commons/scxml/env/jexl/microwave-01.xml?rev=382958&r1=382957&r2=382958&view=diff
==============================================================================
--- jakarta/commons/sandbox/scxml/trunk/src/test/java/org/apache/commons/scxml/env/jexl/microwave-01.xml (original)
+++ jakarta/commons/sandbox/scxml/trunk/src/test/java/org/apache/commons/scxml/env/jexl/microwave-01.xml Fri Mar  3 15:11:31 2006
@@ -24,16 +24,12 @@
   <!--  trivial microwave oven example -->
   <state id="off">
     <!-- off state -->
-    <transition event="turn_on">
-      <target next="on"/>
-    </transition>
+    <transition event="turn_on" target="on"/>
   </state>
 
   <state id="on">
     <initial>
-      <transition>
-        <target next="idle"/>
-      </transition>
+      <transition target="idle"/>
     </initial>
 
     <!-- on/pause state -->
@@ -52,34 +48,26 @@
       <var name="timer" expr="0"/>
     </onentry>
 
-    <transition event="turn_off">
-        <target next="off"/>
-    </transition>
-
-    <transition cond="timer ge cook_time">
-        <target next="off"/>
-    </transition>
+    <transition event="turn_off" target="off"/>
+
+    <transition cond="timer ge cook_time" target="off"/>
 
     <state id="idle">
-      <transition cond="door_closed">
-        <!-- default immediate transition -->
-        <target next="cooking"/>
-      </transition>  
-      <transition event="door_close">
+      <!-- default immediate transition -->
+      <transition cond="door_closed" target="cooking"/>
+
+      <!-- start cooking -->
+      <transition event="door_close" target="cooking">
         <assign name="door_closed" expr="true"/>
-        <!-- start cooking -->
-        <target next="cooking"/>
       </transition>
     </state>
 
     <state id="cooking">
-      <transition event="door_open">
+      <transition event="door_open" target="idle">
         <assign name="door_closed" expr="false"/>
-        <target next="idle"/>
       </transition> 
-      <transition event="time">
+      <transition event="time" target="cooking">
         <assign name="timer" expr="timer + 1"/>
-        <target next="cooking"/>
       </transition>
     </state>
 

Modified: jakarta/commons/sandbox/scxml/trunk/src/test/java/org/apache/commons/scxml/env/jexl/microwave-02.xml
URL: http://svn.apache.org/viewcvs/jakarta/commons/sandbox/scxml/trunk/src/test/java/org/apache/commons/scxml/env/jexl/microwave-02.xml?rev=382958&r1=382957&r2=382958&view=diff
==============================================================================
--- jakarta/commons/sandbox/scxml/trunk/src/test/java/org/apache/commons/scxml/env/jexl/microwave-02.xml (original)
+++ jakarta/commons/sandbox/scxml/trunk/src/test/java/org/apache/commons/scxml/env/jexl/microwave-02.xml Fri Mar  3 15:11:31 2006
@@ -18,32 +18,26 @@
    This document uses Commons JEXL as the expressions language.
 -->
 <scxml xmlns="http://www.w3.org/2005/07/SCXML" version="1.0"  
-       initialstate="oven"> 
+       initialstate="microwave"> 
 
   <!--  trivial microwave oven example -->
   <!-- using parallel and In() predicate -->
 
-  <state id="oven">
+  <state id="microwave">
     <parallel id="parts">
-      <state id="engine">
+      <state id="oven">
         <initial>
-          <transition>
-            <target next="off"/>
-          </transition>
+          <transition target="off"/>
         </initial>
 
         <state id="off">
           <!-- off state -->
-          <transition event="turn_on">
-            <target next="on"/>
-          </transition>
+          <transition event="turn_on" target="on"/>
         </state>
         
         <state id="on">
           <initial>
-            <transition>
-              <target next="idle"/>
-            </transition>
+            <transition target="idle"/>
           </initial>
 
           <!-- on/pause state -->
@@ -57,27 +51,19 @@
             <var name="timer" expr="0"/>
           </onentry>
           
-          <transition event="turn_off">
-              <target next="off"/>
-          </transition>
-
-          <transition cond="timer ge cook_time">
-              <target next="off"/>
-          </transition>
+          <transition event="turn_off" target="off"/>
+
+          <transition cond="timer ge cook_time" target="off"/>
           
           <state id="idle">
-            <transition cond="In('closed')">
-              <target next="cooking"/>
-            </transition>
+            <transition cond="In('closed')" target="cooking"/>
           </state>
           
           <state id="cooking">
-            <transition cond="not In('closed')">
-                <target next="idle"/>
-            </transition>
-            <transition event="time">
+            <transition cond="not In('closed')" target="idle"/>
+
+            <transition event="time" target="cooking">
               <assign name="timer" expr="timer + 1"/>
-              <target next="cooking"/>
             </transition>
           </state>
         </state>
@@ -85,23 +71,16 @@
 
       <state id="door">
         <initial>
-          <transition>
-            <target next="closed"/>
-          </transition>
+          <transition target="closed"/>
         </initial>
         <state id="closed">
-          <transition event="door_open">
-              <target next="open"/>
-          </transition>
+          <transition event="door_open" target="open"/>
         </state>
         <state id="open">
-          <transition event="door_close">
-              <target next="closed"/>
-          </transition>
+          <transition event="door_close" target="closed"/>
         </state>
       </state>
     </parallel>
   </state>
-
 
 </scxml>

Modified: jakarta/commons/sandbox/scxml/trunk/src/test/java/org/apache/commons/scxml/env/jsp/microwave-01.xml
URL: http://svn.apache.org/viewcvs/jakarta/commons/sandbox/scxml/trunk/src/test/java/org/apache/commons/scxml/env/jsp/microwave-01.xml?rev=382958&r1=382957&r2=382958&view=diff
==============================================================================
--- jakarta/commons/sandbox/scxml/trunk/src/test/java/org/apache/commons/scxml/env/jsp/microwave-01.xml (original)
+++ jakarta/commons/sandbox/scxml/trunk/src/test/java/org/apache/commons/scxml/env/jsp/microwave-01.xml Fri Mar  3 15:11:31 2006
@@ -1,6 +1,6 @@
 <?xml version="1.0"?>
 <!--
-   Copyright 2005 The Apache Software Foundation
+   Copyright 2005-2006 The Apache Software Foundation
 
    Licensed under the Apache License, Version 2.0 (the "License");
    you may not use this file except in compliance with the License.
@@ -24,16 +24,12 @@
   <!--  trivial microwave oven example -->
   <state id="off">
     <!-- off state -->
-    <transition event="turn_on">
-      <target next="on"/>
-    </transition>
+    <transition event="turn_on" target="on"/>
   </state>
 
   <state id="on">
     <initial>
-      <transition>
-        <target next="idle"/>
-      </transition>
+      <transition target="idle"/>
     </initial>
 
     <!-- on/pause state -->
@@ -52,34 +48,26 @@
       <var name="timer" expr="${0}"/>
     </onentry>
 
-    <transition event="turn_off">
-        <target next="off"/>
-    </transition>
-
-    <transition cond="${timer ge cook_time}">
-        <target next="off"/>
-    </transition>
+    <transition event="turn_off" target="off"/>
+
+    <transition cond="${timer ge cook_time}" target="off"/>
 
     <state id="idle">
-      <transition cond="${door_closed}">
-        <!-- default immediate transition -->
-        <target next="cooking"/>
-      </transition>  
-      <transition event="door_close">
+      <!-- default immediate transition -->
+      <transition cond="${door_closed}" target="cooking"/>
+
+      <!-- start cooking -->
+      <transition event="door_close" target="cooking">
         <assign name="door_closed" expr="${true}"/>
-        <!-- start cooking -->
-        <target next="cooking"/>
       </transition>
     </state>
 
     <state id="cooking">
-      <transition event="door_open">
+      <transition event="door_open" target="idle">
         <assign name="door_closed" expr="${false}"/>
-        <target next="idle"/>
       </transition> 
-      <transition event="time">
+      <transition event="time" target="cooking">
         <assign name="timer" expr="${timer + 1}"/>
-        <target next="cooking"/>
       </transition>
     </state>
 

Modified: jakarta/commons/sandbox/scxml/trunk/src/test/java/org/apache/commons/scxml/env/jsp/microwave-02.xml
URL: http://svn.apache.org/viewcvs/jakarta/commons/sandbox/scxml/trunk/src/test/java/org/apache/commons/scxml/env/jsp/microwave-02.xml?rev=382958&r1=382957&r2=382958&view=diff
==============================================================================
--- jakarta/commons/sandbox/scxml/trunk/src/test/java/org/apache/commons/scxml/env/jsp/microwave-02.xml (original)
+++ jakarta/commons/sandbox/scxml/trunk/src/test/java/org/apache/commons/scxml/env/jsp/microwave-02.xml Fri Mar  3 15:11:31 2006
@@ -1,6 +1,6 @@
 <?xml version="1.0"?>
 <!--
-   Copyright 2005 The Apache Software Foundation
+   Copyright 2005-2006 The Apache Software Foundation
 
    Licensed under the Apache License, Version 2.0 (the "License");
    you may not use this file except in compliance with the License.
@@ -18,32 +18,26 @@
    This document uses JSP 2.0 EL as the expressions language.
 -->
 <scxml xmlns="http://www.w3.org/2005/07/SCXML" version="1.0"  
-       initialstate="oven"> 
+       initialstate="microwave"> 
 
   <!--  trivial microwave oven example -->
   <!-- using parallel and In() predicate -->
 
-  <state id="oven">
+  <state id="microwave">
     <parallel id="parts">
-      <state id="engine">
+      <state id="oven">
         <initial>
-          <transition>
-            <target next="off"/>
-          </transition>
+          <transition target="off"/>
         </initial>
 
         <state id="off">
           <!-- off state -->
-          <transition event="turn_on">
-            <target next="on"/>
-          </transition>
+          <transition event="turn_on" target="on"/>
         </state>
         
         <state id="on">
           <initial>
-            <transition>
-              <target next="idle"/>
-            </transition>
+            <transition target="idle"/>
           </initial>
 
           <!-- on/pause state -->
@@ -57,27 +51,19 @@
             <var name="timer" expr="${0}"/>
           </onentry>
           
-          <transition event="turn_off">
-              <target next="off"/>
-          </transition>
-
-          <transition cond="${timer ge cook_time}">
-              <target next="off"/>
-          </transition>
+          <transition event="turn_off" target="off"/>
+
+          <transition cond="${timer ge cook_time}" target="off"/>
           
           <state id="idle">
-            <transition cond="${In('closed')}">
-              <target next="cooking"/>
-            </transition>
+            <transition cond="${In('closed')}" target="cooking"/>
           </state>
           
           <state id="cooking">
-            <transition cond="${not In('closed')}">
-                <target next="idle"/>
-            </transition>
-            <transition event="time">
+            <transition cond="${not In('closed')}" target="idle"/>
+
+            <transition event="time" target="cooking">
               <assign name="timer" expr="${timer + 1}"/>
-              <target next="cooking"/>
             </transition>
           </state>
         </state>
@@ -85,23 +71,16 @@
 
       <state id="door">
         <initial>
-          <transition>
-            <target next="closed"/>
-          </transition>
+          <transition target="closed"/>
         </initial>
         <state id="closed">
-          <transition event="door_open">
-              <target next="open"/>
-          </transition>
+          <transition event="door_open" target="open"/>
         </state>
         <state id="open">
-          <transition event="door_close">
-              <target next="closed"/>
-          </transition>
+          <transition event="door_close" target="closed"/>
         </state>
       </state>
     </parallel>
   </state>
-
 
 </scxml>

Modified: jakarta/commons/sandbox/scxml/trunk/src/test/java/org/apache/commons/scxml/env/stopwatch.xml
URL: http://svn.apache.org/viewcvs/jakarta/commons/sandbox/scxml/trunk/src/test/java/org/apache/commons/scxml/env/stopwatch.xml?rev=382958&r1=382957&r2=382958&view=diff
==============================================================================
--- jakarta/commons/sandbox/scxml/trunk/src/test/java/org/apache/commons/scxml/env/stopwatch.xml (original)
+++ jakarta/commons/sandbox/scxml/trunk/src/test/java/org/apache/commons/scxml/env/stopwatch.xml Fri Mar  3 15:11:31 2006
@@ -19,33 +19,21 @@
        initialstate="reset">
 
     <state id="reset">
-       <transition event="watch.start">
-           <target next="running"/>
-       </transition>
+        <transition event="watch.start"   target="running"/>
     </state>
 
     <state id="running">
-		<transition event="watch.split">
-            <target next="paused"/>
-        </transition>
-        <transition event="watch.stop">
-            <target next="stopped"/>
-        </transition>
+        <transition event="watch.split"   target="paused"/>
+        <transition event="watch.stop"    target="stopped"/>
     </state>
 
     <state id="paused">
-       <transition event="watch.unsplit">
-           <target next="running"/>
-       </transition>
-        <transition event="watch.stop">
-            <target next="stopped"/>
-        </transition>
+        <transition event="watch.unsplit" target="running"/>
+        <transition event="watch.stop"    target="stopped"/>
     </state>
 
     <state id="stopped">
-       <transition event="watch.reset">
-           <target next="reset"/>
-       </transition>
+        <transition event="watch.reset"   target="reset"/>
     </state>
 
 </scxml>

Modified: jakarta/commons/sandbox/scxml/trunk/src/test/java/org/apache/commons/scxml/send-01.xml
URL: http://svn.apache.org/viewcvs/jakarta/commons/sandbox/scxml/trunk/src/test/java/org/apache/commons/scxml/send-01.xml?rev=382958&r1=382957&r2=382958&view=diff
==============================================================================
--- jakarta/commons/sandbox/scxml/trunk/src/test/java/org/apache/commons/scxml/send-01.xml (original)
+++ jakarta/commons/sandbox/scxml/trunk/src/test/java/org/apache/commons/scxml/send-01.xml Fri Mar  3 15:11:31 2006
@@ -1,6 +1,6 @@
 <?xml version="1.0"?>
 <!--
-   Copyright 2005 The Apache Software Foundation
+   Copyright 2005-2006 The Apache Software Foundation
 
    Licensed under the Apache License, Version 2.0 (the "License");
    you may not use this file except in compliance with the License.
@@ -19,7 +19,7 @@
        initialstate="ten">
 
     <state id="ten">
-        <transition event="ten.done">
+        <transition event="ten.done" target="twenty">
             <send sendid="send1" delay="0"
              target="http://localhost:8080/VXMLInterpreter" targettype="v3"
              xmlns:v3="http://foo.bar.com/vxml3"
@@ -38,7 +38,6 @@
                     <v3:prompt>This is just an example.</v3:prompt>
                 </test:foo>
             </send>
-            <target next="twenty"/>
         </transition>
     </state>
 

Modified: jakarta/commons/sandbox/scxml/trunk/src/test/java/org/apache/commons/scxml/transitions-01.xml
URL: http://svn.apache.org/viewcvs/jakarta/commons/sandbox/scxml/trunk/src/test/java/org/apache/commons/scxml/transitions-01.xml?rev=382958&r1=382957&r2=382958&view=diff
==============================================================================
--- jakarta/commons/sandbox/scxml/trunk/src/test/java/org/apache/commons/scxml/transitions-01.xml (original)
+++ jakarta/commons/sandbox/scxml/trunk/src/test/java/org/apache/commons/scxml/transitions-01.xml Fri Mar  3 15:11:31 2006
@@ -1,6 +1,6 @@
 <?xml version="1.0"?>
 <!--
-   Copyright 2005 The Apache Software Foundation
+   Copyright 2005-2006 The Apache Software Foundation
 
    Licensed under the Apache License, Version 2.0 (the "License");
    you may not use this file except in compliance with the License.
@@ -20,18 +20,14 @@
 
     <!-- Start with a simple state -->
     <state id="ten">
-        <transition event="ten.done">
-            <target next="twenty"/>
-        </transition>
+        <transition event="ten.done" target="twenty" />
     </state>
 
     <!-- Follow up with a composite state -->
     <state id="twenty">
 
         <initial>
-            <transition>
-                <target next="twenty_one"/>
-            </transition>
+            <transition target="twenty_one"/>
         </initial>
 
         <onentry>
@@ -39,15 +35,11 @@
         </onentry>
 
         <state id="twenty_one">
-            <transition event="twenty_one.done">
-                <target next="twenty_two"/>
-            </transition>
+            <transition event="twenty_one.done" target="twenty_two"/>
         </state>
 
         <state id="twenty_two">
-            <transition event="twenty_two.done">
-                <target next="thirty"/>
-            </transition>
+            <transition event="twenty_two.done" target="thirty"/>
         </state>
 
     </state>
@@ -61,24 +53,19 @@
             <state id="thirty_one">
 
                 <initial>
-                    <transition>
-                        <target next="thirty_one_child_one"/>
-                    </transition>
+                    <transition target="thirty_one_child_one"/>
                 </initial>
                 <onentry>
                     <log expr="'Entering thirty_one'" />
                 </onentry>
-                <transition event="thirty_one.done">
-                    <target next="forty"/>
-                </transition>
+                <transition event="thirty_one.done" target="forty"/>
 
                 <state id="thirty_one_child_one">
                     <onexit>
                         <log expr="'Exiting thirty_one_child_one'" />
                     </onexit>
-                    <transition event="thirty_one_child_one.done">
-                        <target next="thirty_one_child_two"/>
-                    </transition>
+                    <transition event="thirty_one_child_one.done"
+                                target="thirty_one_child_two"/>
                 </state>
 
                 <state id="thirty_one_child_two">
@@ -93,9 +80,7 @@
             <state id="thirty_two">
 
                 <initial>
-                    <transition>
-                        <target next="thirty_two_child_one"/>
-                    </transition>
+                    <transition target="thirty_two_child_one"/>
                 </initial>
                 <onentry>
                     <log expr="'Entering thirty_two'" />
@@ -105,9 +90,8 @@
                     <onexit>
                         <log expr="'Exiting thirty_two_child_one'" />
                     </onexit>
-                    <transition event="thirty_two_child_one.done">
-                        <target next="thirty_two_child_two"/>
-                    </transition>
+                    <transition event="thirty_two_child_one.done"
+                                target="thirty_two_child_two"/>
                 </state>
 
                 <state id="thirty_two_child_two">
@@ -122,9 +106,7 @@
             <state id="thirty_three">
 
                 <initial>
-                    <transition>
-                        <target next="thirty_three_child_one"/>
-                    </transition>
+                    <transition target="thirty_three_child_one"/>
                 </initial>
                 <onentry>
                     <log expr="'Entering thirty_three'" />
@@ -134,9 +116,8 @@
                     <onexit>
                         <log expr="'Exiting thirty_three_child_one'" />
                     </onexit>
-                    <transition event="thirty_three_child_one.done">
-                        <target next="thirty_three_child_two"/>
-                    </transition>
+                    <transition event="thirty_three_child_one.done"
+                                target="thirty_three_child_two"/>
                 </state>
 
                 <state id="thirty_three_child_two">

Modified: jakarta/commons/sandbox/scxml/trunk/xdocs/guide/scxml-documents.xml
URL: http://svn.apache.org/viewcvs/jakarta/commons/sandbox/scxml/trunk/xdocs/guide/scxml-documents.xml?rev=382958&r1=382957&r2=382958&view=diff
==============================================================================
--- jakarta/commons/sandbox/scxml/trunk/xdocs/guide/scxml-documents.xml (original)
+++ jakarta/commons/sandbox/scxml/trunk/xdocs/guide/scxml-documents.xml Fri Mar  3 15:11:31 2006
@@ -94,27 +94,22 @@
       &lt;!--
         ... some content ...
       --&gt;
-      &lt;transition&gt;
-       &lt;target next="bar" /&gt;
-      &lt;/transition&gt;
+      &lt;transition target="bar" /&gt;
      &lt;/state&gt;
 
      &lt;state id="foo2"&gt;
       &lt;!--
         ... some content ...
       --&gt;
-      &lt;transition event="foo.bar"&gt;
-       &lt;target next="bar" /&gt;
-      &lt;/transition&gt;
+      &lt;transition event="foo.bar" target="bar" /&gt;
      &lt;/state&gt;
 
      &lt;state id="foo3"&gt;
       &lt;!--
         ... some content ...
       --&gt;
-      &lt;transition event="foo.bar" cond="some-boolean-expression"&gt;
-       &lt;target next="bar" /&gt;
-      &lt;/transition&gt;
+      &lt;transition event="foo.bar" cond="some-boolean-expression"
+                     target next="bar" /&gt;
      &lt;/state&gt;
 
      &lt;state id="bar"&gt;
@@ -160,9 +155,7 @@
 
      &lt;state id="on"&gt;
       &lt;initial&gt;
-       &lt;transition&gt;
-        &lt;target next="idle"/&gt;
-       &lt;/transition&gt;
+       &lt;transition target="idle"/&gt;
       &lt;/initial&gt;
 
       &lt;state id="idle"&gt;



---------------------------------------------------------------------
To unsubscribe, e-mail: commons-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: commons-dev-help@jakarta.apache.org