<?xml version="1.0" encoding="UTF-8"?><!-- test that internal events take priority over external ones, and that the processor
keeps pulling off internal events until it finds one that triggers a transition --><scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" version="1.0" initial="s1" datamodel="ecmascript">

 <state id="s1" initial="s11">
   <onentry>
      <send event="externalEvent"/>
     <raise event="internalEvent1"/>
     <raise event="internalEvent2"/>
     <raise event="internalEvent3"/>
     <raise event="internalEvent4"/>
     </onentry>
    
   <transition event="externalEvent" target="fail"/>
   
   <state id="s11">
     <transition event="internalEvent3" target="s12"/>
     </state>
     
   <state id="s12">
     <transition event="internalEvent4" target="pass"/>
    </state>

</state> 

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