<?xml version="1.0" encoding="UTF-8"?><!-- we test that targetexpr uses the current value of var1, not its initial value
(If it uses the initial value, it will generate an error.  If it uses the current value, event1 will be raised  --><scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript">
<datamodel>
  <data id="Var1" expr="27"/>
  </datamodel>
  
<state id="s0">
  <onentry>
   <assign location="Var1" expr="'#_internal'"/>
   <send targetexpr="Var1" event="event1"/>
    </onentry>
    
  <transition event="event1" target="pass"/>
  <transition event="*" target="fail"/>
 </state>

   
   <final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final>
   <final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final>

</scxml>