summaryrefslogtreecommitdiffstats
path: root/test/samples
diff options
context:
space:
mode:
Diffstat (limited to 'test/samples')
-rwxr-xr-xtest/samples/w3c/convert-tests.sh13
-rw-r--r--test/samples/w3c/ecma/test144.scxml (renamed from test/samples/w3c/tests/test144.scxml)0
-rw-r--r--test/samples/w3c/ecma/test147.scxml (renamed from test/samples/w3c/tests/test147.scxml)0
-rw-r--r--test/samples/w3c/ecma/test148.scxml (renamed from test/samples/w3c/tests/test148.scxml)0
-rw-r--r--test/samples/w3c/ecma/test149.scxml (renamed from test/samples/w3c/tests/test149.scxml)0
-rw-r--r--test/samples/w3c/ecma/test150.scxml (renamed from test/samples/w3c/tests/test150.scxml)0
-rw-r--r--test/samples/w3c/ecma/test151.scxml (renamed from test/samples/w3c/tests/test151.scxml)0
-rw-r--r--test/samples/w3c/ecma/test152.scxml (renamed from test/samples/w3c/tests/test152.scxml)0
-rw-r--r--test/samples/w3c/ecma/test153.scxml (renamed from test/samples/w3c/tests/test153.scxml)2
-rw-r--r--test/samples/w3c/ecma/test155.scxml (renamed from test/samples/w3c/tests/test155.scxml)0
-rw-r--r--test/samples/w3c/ecma/test156.scxml (renamed from test/samples/w3c/tests/test156.scxml)0
-rw-r--r--test/samples/w3c/ecma/test158.scxml (renamed from test/samples/w3c/tests/test158.scxml)0
-rw-r--r--test/samples/w3c/ecma/test159.scxml (renamed from test/samples/w3c/tests/test159.scxml)0
-rw-r--r--test/samples/w3c/ecma/test172.scxml (renamed from test/samples/w3c/tests/test172.scxml)0
-rw-r--r--test/samples/w3c/ecma/test173.scxml (renamed from test/samples/w3c/tests/test173.scxml)0
-rw-r--r--test/samples/w3c/ecma/test174.scxml (renamed from test/samples/w3c/tests/test174.scxml)0
-rw-r--r--test/samples/w3c/ecma/test175.scxml (renamed from test/samples/w3c/tests/test175.scxml)0
-rw-r--r--test/samples/w3c/ecma/test176.scxml (renamed from test/samples/w3c/tests/test176.scxml)0
-rw-r--r--test/samples/w3c/ecma/test178.scxml (renamed from test/samples/w3c/tests/test178.scxml)0
-rw-r--r--test/samples/w3c/ecma/test179.scxml (renamed from test/samples/w3c/tests/test179.scxml)0
-rw-r--r--test/samples/w3c/ecma/test183.scxml (renamed from test/samples/w3c/tests/test183.scxml)0
-rw-r--r--test/samples/w3c/ecma/test185.scxml (renamed from test/samples/w3c/tests/test185.scxml)0
-rw-r--r--test/samples/w3c/ecma/test186.scxml (renamed from test/samples/w3c/tests/test186.scxml)0
-rw-r--r--test/samples/w3c/ecma/test187.scxml (renamed from test/samples/w3c/tests/test187.scxml)0
-rw-r--r--test/samples/w3c/ecma/test189.scxml22
-rw-r--r--test/samples/w3c/ecma/test190.scxml35
-rw-r--r--test/samples/w3c/ecma/test191.scxml31
-rw-r--r--test/samples/w3c/ecma/test192.scxml55
-rw-r--r--test/samples/w3c/ecma/test194.scxml (renamed from test/samples/w3c/tests/test194.scxml)0
-rw-r--r--test/samples/w3c/ecma/test198.scxml (renamed from test/samples/w3c/tests/test198.scxml)0
-rw-r--r--test/samples/w3c/ecma/test199.scxml (renamed from test/samples/w3c/tests/test199.scxml)0
-rw-r--r--test/samples/w3c/ecma/test200.scxml (renamed from test/samples/w3c/tests/test200.scxml)0
-rw-r--r--test/samples/w3c/ecma/test201.scxml (renamed from test/samples/w3c/tests/test201.scxml)0
-rw-r--r--test/samples/w3c/ecma/test205.scxml (renamed from test/samples/w3c/tests/test205.scxml)0
-rw-r--r--test/samples/w3c/ecma/test207.scxml (renamed from test/samples/w3c/tests/test207.scxml)0
-rw-r--r--test/samples/w3c/ecma/test208.scxml (renamed from test/samples/w3c/tests/test208.scxml)0
-rw-r--r--test/samples/w3c/ecma/test210.scxml (renamed from test/samples/w3c/tests/test210.scxml)0
-rw-r--r--test/samples/w3c/ecma/test215.scxml (renamed from test/samples/w3c/tests/test215.scxml)0
-rw-r--r--test/samples/w3c/ecma/test216.scxml (renamed from test/samples/w3c/tests/test216.scxml)0
-rw-r--r--test/samples/w3c/ecma/test216sub1.scxml (renamed from test/samples/w3c/tests/test216sub1.scxml)0
-rw-r--r--test/samples/w3c/ecma/test220.scxml (renamed from test/samples/w3c/tests/test220.scxml)0
-rw-r--r--test/samples/w3c/ecma/test223.scxml (renamed from test/samples/w3c/tests/test223.scxml)0
-rw-r--r--test/samples/w3c/ecma/test224.scxml (renamed from test/samples/w3c/tests/test224.scxml)0
-rw-r--r--test/samples/w3c/ecma/test225.scxml (renamed from test/samples/w3c/tests/test225.scxml)0
-rw-r--r--test/samples/w3c/ecma/test226.scxml (renamed from test/samples/w3c/tests/test226.scxml)2
-rw-r--r--test/samples/w3c/ecma/test226sub1.scxml (renamed from test/samples/w3c/tests/test226sub1.scxml)0
-rw-r--r--test/samples/w3c/ecma/test228.scxml (renamed from test/samples/w3c/tests/test228.scxml)0
-rw-r--r--test/samples/w3c/ecma/test229.scxml (renamed from test/samples/w3c/tests/test229.scxml)0
-rw-r--r--test/samples/w3c/ecma/test230.scxml (renamed from test/samples/w3c/tests/test230.scxml)0
-rw-r--r--test/samples/w3c/ecma/test232.scxml (renamed from test/samples/w3c/tests/test232.scxml)0
-rw-r--r--test/samples/w3c/ecma/test233.scxml (renamed from test/samples/w3c/tests/test233.scxml)0
-rw-r--r--test/samples/w3c/ecma/test234.scxml (renamed from test/samples/w3c/tests/test234.scxml)0
-rw-r--r--test/samples/w3c/ecma/test235.scxml (renamed from test/samples/w3c/tests/test235.scxml)0
-rw-r--r--test/samples/w3c/ecma/test236.scxml (renamed from test/samples/w3c/tests/test236.scxml)0
-rw-r--r--test/samples/w3c/ecma/test237.scxml (renamed from test/samples/w3c/tests/test237.scxml)0
-rw-r--r--test/samples/w3c/ecma/test239.scxml (renamed from test/samples/w3c/tests/test239.scxml)0
-rw-r--r--test/samples/w3c/ecma/test239sub1.scxml (renamed from test/samples/w3c/tests/test239sub1.scxml)0
-rw-r--r--test/samples/w3c/ecma/test240.scxml (renamed from test/samples/w3c/tests/test240.scxml)0
-rw-r--r--test/samples/w3c/ecma/test241.scxml (renamed from test/samples/w3c/tests/test241.scxml)0
-rw-r--r--test/samples/w3c/ecma/test242.scxml (renamed from test/samples/w3c/tests/test242.scxml)0
-rw-r--r--test/samples/w3c/ecma/test242sub1.scxml (renamed from test/samples/w3c/tests/test242sub1.scxml)0
-rw-r--r--test/samples/w3c/ecma/test243.scxml (renamed from test/samples/w3c/tests/test243.scxml)0
-rw-r--r--test/samples/w3c/ecma/test244.scxml (renamed from test/samples/w3c/tests/test244.scxml)0
-rw-r--r--test/samples/w3c/ecma/test245.scxml (renamed from test/samples/w3c/tests/test245.scxml)0
-rw-r--r--test/samples/w3c/ecma/test247.scxml (renamed from test/samples/w3c/tests/test247.scxml)0
-rw-r--r--test/samples/w3c/ecma/test250.scxml (renamed from test/samples/w3c/tests/test250.scxml)0
-rw-r--r--test/samples/w3c/ecma/test252.scxml (renamed from test/samples/w3c/tests/test252.scxml)0
-rw-r--r--test/samples/w3c/ecma/test253.scxml (renamed from test/samples/w3c/tests/test253.scxml)0
-rw-r--r--test/samples/w3c/ecma/test276.scxml (renamed from test/samples/w3c/tests/test276.scxml)0
-rw-r--r--test/samples/w3c/ecma/test276sub1.scxml (renamed from test/samples/w3c/tests/test276sub1.scxml)0
-rw-r--r--test/samples/w3c/ecma/test277.scxml28
-rw-r--r--test/samples/w3c/ecma/test278.scxml (renamed from test/samples/w3c/tests/test278.scxml)0
-rw-r--r--test/samples/w3c/ecma/test279.scxml (renamed from test/samples/w3c/tests/test279.scxml)0
-rw-r--r--test/samples/w3c/ecma/test280.scxml (renamed from test/samples/w3c/tests/test280.scxml)0
-rw-r--r--test/samples/w3c/ecma/test286.scxml (renamed from test/samples/w3c/tests/test286.scxml)0
-rw-r--r--test/samples/w3c/ecma/test287.scxml (renamed from test/samples/w3c/tests/test287.scxml)0
-rw-r--r--test/samples/w3c/ecma/test294.scxml (renamed from test/samples/w3c/tests/test294.scxml)0
-rw-r--r--test/samples/w3c/ecma/test298.scxml (renamed from test/samples/w3c/tests/test298.scxml)0
-rw-r--r--test/samples/w3c/ecma/test301.scxml (renamed from test/samples/w3c/tests/test301.scxml)0
-rw-r--r--test/samples/w3c/ecma/test302.scxml (renamed from test/samples/w3c/tests/test302.scxml)2
-rw-r--r--test/samples/w3c/ecma/test303.scxml (renamed from test/samples/w3c/tests/test303.scxml)2
-rw-r--r--test/samples/w3c/ecma/test304.scxml (renamed from test/samples/w3c/tests/test304.scxml)2
-rw-r--r--test/samples/w3c/ecma/test307.scxml (renamed from test/samples/w3c/tests/test307.scxml)0
-rw-r--r--test/samples/w3c/ecma/test309.scxml (renamed from test/samples/w3c/tests/test309.scxml)0
-rw-r--r--test/samples/w3c/ecma/test310.scxml (renamed from test/samples/w3c/tests/test310.scxml)0
-rw-r--r--test/samples/w3c/ecma/test311.scxml (renamed from test/samples/w3c/tests/test311.scxml)0
-rw-r--r--test/samples/w3c/ecma/test312.scxml (renamed from test/samples/w3c/tests/test312.scxml)0
-rw-r--r--test/samples/w3c/ecma/test313.scxml (renamed from test/samples/w3c/tests/test313.scxml)0
-rw-r--r--test/samples/w3c/ecma/test314.scxml (renamed from test/samples/w3c/tests/test314.scxml)0
-rw-r--r--test/samples/w3c/ecma/test318.scxml (renamed from test/samples/w3c/tests/test318.scxml)0
-rw-r--r--test/samples/w3c/ecma/test319.scxml (renamed from test/samples/w3c/tests/test319.scxml)0
-rw-r--r--test/samples/w3c/ecma/test321.scxml (renamed from test/samples/w3c/tests/test321.scxml)2
-rw-r--r--test/samples/w3c/ecma/test322.scxml (renamed from test/samples/w3c/tests/test322.scxml)0
-rw-r--r--test/samples/w3c/ecma/test323.scxml (renamed from test/samples/w3c/tests/test323.scxml)2
-rw-r--r--test/samples/w3c/ecma/test324.scxml (renamed from test/samples/w3c/tests/test324.scxml)0
-rw-r--r--test/samples/w3c/ecma/test325.scxml (renamed from test/samples/w3c/tests/test325.scxml)0
-rw-r--r--test/samples/w3c/ecma/test326.scxml (renamed from test/samples/w3c/tests/test326.scxml)0
-rw-r--r--test/samples/w3c/ecma/test329.scxml (renamed from test/samples/w3c/tests/test329.scxml)0
-rw-r--r--test/samples/w3c/ecma/test330.scxml (renamed from test/samples/w3c/tests/test330.scxml)0
-rw-r--r--test/samples/w3c/ecma/test331.scxml (renamed from test/samples/w3c/tests/test331.scxml)0
-rw-r--r--test/samples/w3c/ecma/test332.scxml (renamed from test/samples/w3c/tests/test332.scxml)0
-rw-r--r--test/samples/w3c/ecma/test333.scxml (renamed from test/samples/w3c/tests/test333.scxml)0
-rw-r--r--test/samples/w3c/ecma/test335.scxml (renamed from test/samples/w3c/tests/test335.scxml)0
-rw-r--r--test/samples/w3c/ecma/test336.scxml (renamed from test/samples/w3c/tests/test336.scxml)0
-rw-r--r--test/samples/w3c/ecma/test337.scxml (renamed from test/samples/w3c/tests/test337.scxml)0
-rw-r--r--test/samples/w3c/ecma/test338.scxml (renamed from test/samples/w3c/tests/test338.scxml)0
-rw-r--r--test/samples/w3c/ecma/test339.scxml (renamed from test/samples/w3c/tests/test339.scxml)0
-rw-r--r--test/samples/w3c/ecma/test342.scxml (renamed from test/samples/w3c/tests/test342.scxml)0
-rw-r--r--test/samples/w3c/ecma/test343.scxml (renamed from test/samples/w3c/tests/test343.scxml)0
-rw-r--r--test/samples/w3c/ecma/test344.scxml (renamed from test/samples/w3c/tests/test344.scxml)0
-rw-r--r--test/samples/w3c/ecma/test346.scxml (renamed from test/samples/w3c/tests/test346.scxml)0
-rw-r--r--test/samples/w3c/ecma/test347.scxml40
-rw-r--r--test/samples/w3c/ecma/test348.scxml18
-rw-r--r--test/samples/w3c/ecma/test349.scxml29
-rw-r--r--test/samples/w3c/ecma/test350.scxml22
-rw-r--r--test/samples/w3c/ecma/test351.scxml48
-rw-r--r--test/samples/w3c/ecma/test352.scxml29
-rw-r--r--test/samples/w3c/ecma/test355.scxml (renamed from test/samples/w3c/tests/test355.scxml)0
-rw-r--r--test/samples/w3c/ecma/test364.scxml (renamed from test/samples/w3c/tests/test364.scxml)0
-rw-r--r--test/samples/w3c/ecma/test372.scxml (renamed from test/samples/w3c/tests/test372.scxml)0
-rw-r--r--test/samples/w3c/ecma/test375.scxml (renamed from test/samples/w3c/tests/test375.scxml)0
-rw-r--r--test/samples/w3c/ecma/test376.scxml (renamed from test/samples/w3c/tests/test376.scxml)0
-rw-r--r--test/samples/w3c/ecma/test377.scxml (renamed from test/samples/w3c/tests/test377.scxml)0
-rw-r--r--test/samples/w3c/ecma/test378.scxml (renamed from test/samples/w3c/tests/test378.scxml)0
-rw-r--r--test/samples/w3c/ecma/test387.scxml (renamed from test/samples/w3c/tests/test387.scxml)0
-rw-r--r--test/samples/w3c/ecma/test388.scxml (renamed from test/samples/w3c/tests/test388.scxml)0
-rw-r--r--test/samples/w3c/ecma/test396.scxml (renamed from test/samples/w3c/tests/test396.scxml)0
-rw-r--r--test/samples/w3c/ecma/test399.scxml (renamed from test/samples/w3c/tests/test399.scxml)0
-rw-r--r--test/samples/w3c/ecma/test401.scxml (renamed from test/samples/w3c/tests/test401.scxml)0
-rw-r--r--test/samples/w3c/ecma/test402.scxml (renamed from test/samples/w3c/tests/test402.scxml)0
-rw-r--r--test/samples/w3c/ecma/test403a.scxml (renamed from test/samples/w3c/tests/test403a.scxml)0
-rw-r--r--test/samples/w3c/ecma/test403b.scxml (renamed from test/samples/w3c/tests/test403b.scxml)0
-rw-r--r--test/samples/w3c/ecma/test403c.scxml (renamed from test/samples/w3c/tests/test403c.scxml)0
-rw-r--r--test/samples/w3c/ecma/test404.scxml (renamed from test/samples/w3c/tests/test404.scxml)0
-rw-r--r--test/samples/w3c/ecma/test405.scxml (renamed from test/samples/w3c/tests/test405.scxml)0
-rw-r--r--test/samples/w3c/ecma/test406.scxml (renamed from test/samples/w3c/tests/test406.scxml)0
-rw-r--r--test/samples/w3c/ecma/test407.scxml (renamed from test/samples/w3c/tests/test407.scxml)0
-rw-r--r--test/samples/w3c/ecma/test409.scxml (renamed from test/samples/w3c/tests/test409.scxml)0
-rw-r--r--test/samples/w3c/ecma/test411.scxml (renamed from test/samples/w3c/tests/test411.scxml)0
-rw-r--r--test/samples/w3c/ecma/test412.scxml (renamed from test/samples/w3c/tests/test412.scxml)0
-rw-r--r--test/samples/w3c/ecma/test413.scxml (renamed from test/samples/w3c/tests/test413.scxml)0
-rw-r--r--test/samples/w3c/ecma/test416.scxml (renamed from test/samples/w3c/tests/test416.scxml)0
-rw-r--r--test/samples/w3c/ecma/test417.scxml (renamed from test/samples/w3c/tests/test417.scxml)0
-rw-r--r--test/samples/w3c/ecma/test419.scxml (renamed from test/samples/w3c/tests/test419.scxml)0
-rw-r--r--test/samples/w3c/ecma/test421.scxml (renamed from test/samples/w3c/tests/test421.scxml)0
-rw-r--r--test/samples/w3c/ecma/test422.scxml (renamed from test/samples/w3c/tests/test422.scxml)0
-rw-r--r--test/samples/w3c/ecma/test423.scxml (renamed from test/samples/w3c/tests/test423.scxml)0
-rw-r--r--test/samples/w3c/ecma/test436.scxml (renamed from test/samples/w3c/tests/test436.scxml)0
-rw-r--r--test/samples/w3c/ecma/test444.scxml (renamed from test/samples/w3c/tests/test444.scxml)0
-rw-r--r--test/samples/w3c/ecma/test445.scxml (renamed from test/samples/w3c/tests/test445.scxml)0
-rw-r--r--test/samples/w3c/ecma/test448.scxml (renamed from test/samples/w3c/tests/test448.scxml)0
-rw-r--r--test/samples/w3c/ecma/test449.scxml (renamed from test/samples/w3c/tests/test449.scxml)0
-rw-r--r--test/samples/w3c/ecma/test451.scxml (renamed from test/samples/w3c/tests/test451.scxml)0
-rw-r--r--test/samples/w3c/ecma/test452.scxml (renamed from test/samples/w3c/tests/test452.scxml)0
-rw-r--r--test/samples/w3c/ecma/test453.scxml (renamed from test/samples/w3c/tests/test453.scxml)0
-rw-r--r--test/samples/w3c/ecma/test456.scxml (renamed from test/samples/w3c/tests/test456.scxml)2
-rw-r--r--test/samples/w3c/ecma/test457.scxml (renamed from test/samples/w3c/tests/test457.scxml)0
-rw-r--r--test/samples/w3c/ecma/test460.scxml (renamed from test/samples/w3c/tests/test460.scxml)0
-rw-r--r--test/samples/w3c/ecma/test463.scxml (renamed from test/samples/w3c/tests/test463.scxml)0
-rw-r--r--test/samples/w3c/ecma/test464.scxml (renamed from test/samples/w3c/tests/test464.scxml)0
-rw-r--r--test/samples/w3c/ecma/test465.scxml (renamed from test/samples/w3c/tests/test465.scxml)0
-rw-r--r--test/samples/w3c/ecma/test466.scxml (renamed from test/samples/w3c/tests/test466.scxml)0
-rw-r--r--test/samples/w3c/ecma/test467.scxml (renamed from test/samples/w3c/tests/test467.scxml)0
-rw-r--r--test/samples/w3c/ecma/test468.scxml (renamed from test/samples/w3c/tests/test468.scxml)0
-rw-r--r--test/samples/w3c/ecma/test469.scxml (renamed from test/samples/w3c/tests/test469.scxml)0
-rw-r--r--test/samples/w3c/ecma/test470.scxml (renamed from test/samples/w3c/tests/test470.scxml)0
-rw-r--r--test/samples/w3c/ecma/test473.scxml (renamed from test/samples/w3c/tests/test473.scxml)0
-rw-r--r--test/samples/w3c/ecma/test474.scxml (renamed from test/samples/w3c/tests/test474.scxml)0
-rw-r--r--test/samples/w3c/ecma/test475.scxml (renamed from test/samples/w3c/tests/test475.scxml)0
-rw-r--r--test/samples/w3c/ecma/test476.scxml (renamed from test/samples/w3c/tests/test476.scxml)0
-rw-r--r--test/samples/w3c/ecma/test477.scxml (renamed from test/samples/w3c/tests/test477.scxml)0
-rw-r--r--test/samples/w3c/ecma/test478.scxml (renamed from test/samples/w3c/tests/test478.scxml)0
-rw-r--r--test/samples/w3c/ecma/test479.scxml (renamed from test/samples/w3c/tests/test479.scxml)0
-rw-r--r--test/samples/w3c/ecma/test480.scxml (renamed from test/samples/w3c/tests/test480.scxml)0
-rw-r--r--test/samples/w3c/ecma/test481.scxml (renamed from test/samples/w3c/tests/test481.scxml)0
-rw-r--r--test/samples/w3c/ecma/test482.scxml (renamed from test/samples/w3c/tests/test482.scxml)0
-rw-r--r--test/samples/w3c/ecma/test487.scxml (renamed from test/samples/w3c/tests/test487.scxml)0
-rw-r--r--test/samples/w3c/ecma/test488.scxml (renamed from test/samples/w3c/tests/test488.scxml)0
-rw-r--r--test/samples/w3c/ecma/test495.scxml23
-rw-r--r--test/samples/w3c/ecma/test500.scxml15
-rw-r--r--test/samples/w3c/ecma/test501.scxml19
-rw-r--r--test/samples/w3c/ecma/test503.scxml (renamed from test/samples/w3c/tests/test503.scxml)0
-rw-r--r--test/samples/w3c/ecma/test504.scxml (renamed from test/samples/w3c/tests/test504.scxml)0
-rw-r--r--test/samples/w3c/ecma/test505.scxml (renamed from test/samples/w3c/tests/test505.scxml)0
-rw-r--r--test/samples/w3c/ecma/test506.scxml (renamed from test/samples/w3c/tests/test506.scxml)0
-rw-r--r--test/samples/w3c/ecma/test521.scxml (renamed from test/samples/w3c/tests/test521.scxml)0
-rw-r--r--test/samples/w3c/ecma/test525.scxml (renamed from test/samples/w3c/tests/test525.scxml)0
-rw-r--r--test/samples/w3c/ecma/test527.scxml (renamed from test/samples/w3c/tests/test527.scxml)0
-rw-r--r--test/samples/w3c/ecma/test528.scxml (renamed from test/samples/w3c/tests/test528.scxml)0
-rw-r--r--test/samples/w3c/ecma/test529.scxml (renamed from test/samples/w3c/tests/test529.scxml)0
-rw-r--r--test/samples/w3c/ecma/test530.scxml (renamed from test/samples/w3c/tests/test530.scxml)0
-rw-r--r--test/samples/w3c/ecma/test533.scxml (renamed from test/samples/w3c/tests/test533.scxml)0
-rw-r--r--test/samples/w3c/ecma/test537.scxml (renamed from test/samples/w3c/tests/test537.scxml)0
-rw-r--r--test/samples/w3c/ecma/test539.scxml (renamed from test/samples/w3c/tests/test539.scxml)0
-rw-r--r--test/samples/w3c/ecma/test539.txt (renamed from test/samples/w3c/tests/test539.txt)0
-rw-r--r--test/samples/w3c/ecma/test540.scxml (renamed from test/samples/w3c/tests/test540.scxml)0
-rw-r--r--test/samples/w3c/ecma/test540.txt (renamed from test/samples/w3c/tests/test540.txt)0
-rw-r--r--test/samples/w3c/ecma/test542.scxml (renamed from test/samples/w3c/tests/test542.scxml)0
-rw-r--r--test/samples/w3c/ecma/test544.scxml (renamed from test/samples/w3c/tests/test544.scxml)0
-rw-r--r--test/samples/w3c/ecma/test546.scxml (renamed from test/samples/w3c/tests/test546.scxml)0
-rw-r--r--test/samples/w3c/ecma/test547.scxml (renamed from test/samples/w3c/tests/test547.scxml)0
-rw-r--r--test/samples/w3c/ecma/test550.scxml (renamed from test/samples/w3c/tests/test550.scxml)0
-rw-r--r--test/samples/w3c/ecma/test551.scxml (renamed from test/samples/w3c/tests/test551.scxml)0
-rw-r--r--test/samples/w3c/ecma/test552.scxml (renamed from test/samples/w3c/tests/test552.scxml)0
-rw-r--r--test/samples/w3c/ecma/test552.txt (renamed from test/samples/w3c/tests/test552.txt)0
-rw-r--r--test/samples/w3c/ecma/test553.scxml (renamed from test/samples/w3c/tests/test553.scxml)0
-rw-r--r--test/samples/w3c/ecma/test554.scxml (renamed from test/samples/w3c/tests/test554.scxml)0
-rw-r--r--test/samples/w3c/ecma/test555.scxml (renamed from test/samples/w3c/tests/test555.scxml)0
-rw-r--r--test/samples/w3c/ecma/test557.scxml (renamed from test/samples/w3c/tests/test557.scxml)0
-rw-r--r--test/samples/w3c/ecma/test557.txt (renamed from test/samples/w3c/tests/test557.txt)0
-rw-r--r--test/samples/w3c/ecma/test558.scxml (renamed from test/samples/w3c/tests/test558.scxml)0
-rw-r--r--test/samples/w3c/ecma/test558.txt (renamed from test/samples/w3c/tests/test558.txt)0
-rw-r--r--test/samples/w3c/ecma/test560.scxml (renamed from test/samples/w3c/tests/test560.scxml)0
-rw-r--r--test/samples/w3c/ecma/test561.scxml (renamed from test/samples/w3c/tests/test561.scxml)4
-rw-r--r--test/samples/w3c/ecma/test562.scxml (renamed from test/samples/w3c/tests/test562.scxml)0
-rw-r--r--test/samples/w3c/ecma/test568.scxml15
-rw-r--r--test/samples/w3c/ecma/test569.scxml (renamed from test/samples/w3c/tests/test569.scxml)0
-rw-r--r--test/samples/w3c/ecma/test570.scxml (renamed from test/samples/w3c/tests/test570.scxml)0
-rw-r--r--test/samples/w3c/ecma/test576.scxml (renamed from test/samples/w3c/tests/test576.scxml)0
-rw-r--r--test/samples/w3c/ecma/test578.scxml19
-rw-r--r--test/samples/w3c/tests/test441a.scxml44
-rw-r--r--test/samples/w3c/tests/test441b.scxml44
-rw-r--r--test/samples/w3c/tests/test486b.scxml14
-rw-r--r--test/samples/w3c/txml/robots.txt96
-rw-r--r--test/samples/w3c/txml/test189.txml25
-rw-r--r--test/samples/w3c/txml/test190.txml38
-rw-r--r--test/samples/w3c/txml/test191.txml34
-rw-r--r--test/samples/w3c/txml/test192.txml58
-rw-r--r--test/samples/w3c/txml/test226.txml2
-rw-r--r--test/samples/w3c/txml/test302.txml2
-rw-r--r--test/samples/w3c/txml/test303.txml3
-rw-r--r--test/samples/w3c/txml/test304.txml3
-rw-r--r--test/samples/w3c/txml/test321.txml2
-rw-r--r--test/samples/w3c/txml/test323.txml2
-rw-r--r--test/samples/w3c/txml/test347.txml44
-rw-r--r--test/samples/w3c/txml/test348.txml20
-rw-r--r--test/samples/w3c/txml/test349.txml33
-rw-r--r--test/samples/w3c/txml/test350.txml26
-rw-r--r--test/samples/w3c/txml/test351.txml52
-rw-r--r--test/samples/w3c/txml/test352.txml32
-rw-r--r--test/samples/w3c/txml/test441a.txml47
-rw-r--r--test/samples/w3c/txml/test441b.txml47
-rw-r--r--test/samples/w3c/txml/test456.txml2
-rw-r--r--test/samples/w3c/txml/test486b.txml18
-rw-r--r--test/samples/w3c/txml/test495.txml26
-rw-r--r--test/samples/w3c/txml/test500.txml19
-rw-r--r--test/samples/w3c/txml/test501.txml23
-rw-r--r--test/samples/w3c/txml/test578.txml24
248 files changed, 1030 insertions, 231 deletions
diff --git a/test/samples/w3c/convert-tests.sh b/test/samples/w3c/convert-tests.sh
new file mode 100755
index 0000000..5ee8faa
--- /dev/null
+++ b/test/samples/w3c/convert-tests.sh
@@ -0,0 +1,13 @@
+ME=`basename $0`
+DIR="$( cd "$( dirname "$0" )" && pwd )"
+cd $DIR
+
+TXMLS=`ls txml/*.txml`
+
+# see http://saxon.sourceforge.net/saxon6.5.1/using-xsl.html
+for TXML in $TXMLS
+do
+ DEST=ecma/`basename $TXML .txml`.scxml
+ echo "Processing $TXML to $DEST"
+ java -jar /Users/sradomski/Developer/Applications/SaxonHE9-4-0-7J/saxon9he.jar $TXML confEcma.xsl -o:$DEST
+done
diff --git a/test/samples/w3c/tests/test144.scxml b/test/samples/w3c/ecma/test144.scxml
index fcec83a..fcec83a 100644
--- a/test/samples/w3c/tests/test144.scxml
+++ b/test/samples/w3c/ecma/test144.scxml
diff --git a/test/samples/w3c/tests/test147.scxml b/test/samples/w3c/ecma/test147.scxml
index f877ecf..f877ecf 100644
--- a/test/samples/w3c/tests/test147.scxml
+++ b/test/samples/w3c/ecma/test147.scxml
diff --git a/test/samples/w3c/tests/test148.scxml b/test/samples/w3c/ecma/test148.scxml
index acebba7..acebba7 100644
--- a/test/samples/w3c/tests/test148.scxml
+++ b/test/samples/w3c/ecma/test148.scxml
diff --git a/test/samples/w3c/tests/test149.scxml b/test/samples/w3c/ecma/test149.scxml
index b7626c6..b7626c6 100644
--- a/test/samples/w3c/tests/test149.scxml
+++ b/test/samples/w3c/ecma/test149.scxml
diff --git a/test/samples/w3c/tests/test150.scxml b/test/samples/w3c/ecma/test150.scxml
index 41e1895..41e1895 100644
--- a/test/samples/w3c/tests/test150.scxml
+++ b/test/samples/w3c/ecma/test150.scxml
diff --git a/test/samples/w3c/tests/test151.scxml b/test/samples/w3c/ecma/test151.scxml
index 119bb65..119bb65 100644
--- a/test/samples/w3c/tests/test151.scxml
+++ b/test/samples/w3c/ecma/test151.scxml
diff --git a/test/samples/w3c/tests/test152.scxml b/test/samples/w3c/ecma/test152.scxml
index 8af51a8..8af51a8 100644
--- a/test/samples/w3c/tests/test152.scxml
+++ b/test/samples/w3c/ecma/test152.scxml
diff --git a/test/samples/w3c/tests/test153.scxml b/test/samples/w3c/ecma/test153.scxml
index 9917789..ad54994 100644
--- a/test/samples/w3c/tests/test153.scxml
+++ b/test/samples/w3c/ecma/test153.scxml
@@ -13,7 +13,7 @@ it ever isn't, set Var4 to 0, indicating failure --><scxml xmlns="http://www.w3.
<state id="s0">
<onentry>
<foreach item="Var2" array="Var3">
- <if cond="Var1/text() &lt;Var2/text() ">
+ <if cond="Var1&lt;Var2 ">
<assign location="Var1" expr="Var2"/>
<else/>
<!-- values are out of order, record failure -->
diff --git a/test/samples/w3c/tests/test155.scxml b/test/samples/w3c/ecma/test155.scxml
index 17d3a70..17d3a70 100644
--- a/test/samples/w3c/tests/test155.scxml
+++ b/test/samples/w3c/ecma/test155.scxml
diff --git a/test/samples/w3c/tests/test156.scxml b/test/samples/w3c/ecma/test156.scxml
index aa9e2b0..aa9e2b0 100644
--- a/test/samples/w3c/tests/test156.scxml
+++ b/test/samples/w3c/ecma/test156.scxml
diff --git a/test/samples/w3c/tests/test158.scxml b/test/samples/w3c/ecma/test158.scxml
index f1a583f..f1a583f 100644
--- a/test/samples/w3c/tests/test158.scxml
+++ b/test/samples/w3c/ecma/test158.scxml
diff --git a/test/samples/w3c/tests/test159.scxml b/test/samples/w3c/ecma/test159.scxml
index d144855..d144855 100644
--- a/test/samples/w3c/tests/test159.scxml
+++ b/test/samples/w3c/ecma/test159.scxml
diff --git a/test/samples/w3c/tests/test172.scxml b/test/samples/w3c/ecma/test172.scxml
index 28f2bcb..28f2bcb 100644
--- a/test/samples/w3c/tests/test172.scxml
+++ b/test/samples/w3c/ecma/test172.scxml
diff --git a/test/samples/w3c/tests/test173.scxml b/test/samples/w3c/ecma/test173.scxml
index fa2a289..fa2a289 100644
--- a/test/samples/w3c/tests/test173.scxml
+++ b/test/samples/w3c/ecma/test173.scxml
diff --git a/test/samples/w3c/tests/test174.scxml b/test/samples/w3c/ecma/test174.scxml
index f78feee..f78feee 100644
--- a/test/samples/w3c/tests/test174.scxml
+++ b/test/samples/w3c/ecma/test174.scxml
diff --git a/test/samples/w3c/tests/test175.scxml b/test/samples/w3c/ecma/test175.scxml
index 4876821..4876821 100644
--- a/test/samples/w3c/tests/test175.scxml
+++ b/test/samples/w3c/ecma/test175.scxml
diff --git a/test/samples/w3c/tests/test176.scxml b/test/samples/w3c/ecma/test176.scxml
index 4b120ec..4b120ec 100644
--- a/test/samples/w3c/tests/test176.scxml
+++ b/test/samples/w3c/ecma/test176.scxml
diff --git a/test/samples/w3c/tests/test178.scxml b/test/samples/w3c/ecma/test178.scxml
index 91b4681..91b4681 100644
--- a/test/samples/w3c/tests/test178.scxml
+++ b/test/samples/w3c/ecma/test178.scxml
diff --git a/test/samples/w3c/tests/test179.scxml b/test/samples/w3c/ecma/test179.scxml
index 170b105..170b105 100644
--- a/test/samples/w3c/tests/test179.scxml
+++ b/test/samples/w3c/ecma/test179.scxml
diff --git a/test/samples/w3c/tests/test183.scxml b/test/samples/w3c/ecma/test183.scxml
index 2c17ea8..2c17ea8 100644
--- a/test/samples/w3c/tests/test183.scxml
+++ b/test/samples/w3c/ecma/test183.scxml
diff --git a/test/samples/w3c/tests/test185.scxml b/test/samples/w3c/ecma/test185.scxml
index cdf8a77..cdf8a77 100644
--- a/test/samples/w3c/tests/test185.scxml
+++ b/test/samples/w3c/ecma/test185.scxml
diff --git a/test/samples/w3c/tests/test186.scxml b/test/samples/w3c/ecma/test186.scxml
index 20f0063..20f0063 100644
--- a/test/samples/w3c/tests/test186.scxml
+++ b/test/samples/w3c/ecma/test186.scxml
diff --git a/test/samples/w3c/tests/test187.scxml b/test/samples/w3c/ecma/test187.scxml
index d03c16d..d03c16d 100644
--- a/test/samples/w3c/tests/test187.scxml
+++ b/test/samples/w3c/ecma/test187.scxml
diff --git a/test/samples/w3c/ecma/test189.scxml b/test/samples/w3c/ecma/test189.scxml
new file mode 100644
index 0000000..683b874
--- /dev/null
+++ b/test/samples/w3c/ecma/test189.scxml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?><!-- we test that #_internal as a target of <send> puts the event on the internal queue. If it does,
+event1 will be processed before event2, because event1 is added to the internal queue while event2 is
+added to the external queue (event though event2 is generated first) --><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">
+
+
+<state id="s0">
+ <onentry>
+ <!-- goes to the external queue -->
+ <send event="event2"/>
+ <!-- to the internal queue -->
+ <send event="event1" target="#_internal"/>
+ </onentry>
+
+ <!-- once we've entered the state, we should check for internal events first -->
+ <transition event="event1" target="pass"/>
+ <transition event="event2" 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> \ No newline at end of file
diff --git a/test/samples/w3c/ecma/test190.scxml b/test/samples/w3c/ecma/test190.scxml
new file mode 100644
index 0000000..a1f6d56
--- /dev/null
+++ b/test/samples/w3c/ecma/test190.scxml
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="UTF-8"?><!-- we test that #_scxml_sessionid as a target of <send> puts the event on the external queue. If it does,
+event1 will be processed before event2, because event1 is added to the internal queue while event2 is
+added to the external queue (event though event2 is generated first). we have to make sure that event2
+is actually delivered. The delayed <send> makes sure another event is generated (so the test doesn't hang) --><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="'#_scxml_'"/>
+ <data id="Var2" expr="_sessionid"/>
+ </datamodel>
+
+<state id="s0">
+ <onentry>
+ <assign location="Var1" expr="Var1 + Var2"/>
+ <!-- goes to the external queue -->
+ <send event="event2" targetexpr="Var1"/>
+ <!-- to the internal queue -->
+ <raise event="event1"/>
+ <!-- this should get added to the external queue after event2 -->
+ <send event="timeout"/>
+ </onentry>
+
+ <!-- once we've entered the state, we should check for internal events first -->
+ <transition event="event1" target="s1"/>
+ <transition event="*" target="fail"/>
+ </state>
+
+<!-- now check that we get event2 and not a timeout -->
+<state id="s1">
+ <transition event="event2" 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> \ No newline at end of file
diff --git a/test/samples/w3c/ecma/test191.scxml b/test/samples/w3c/ecma/test191.scxml
new file mode 100644
index 0000000..a44856b
--- /dev/null
+++ b/test/samples/w3c/ecma/test191.scxml
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?><!-- we test that #_parent works as a target of <send> . a subscript is invoked and sends the event
+childToParent to its parent session (ths session) using #_parent as the target. If we get this event, we
+pass, otherwise we fail. The timer insures that some event is generated and that the test does not hang. --><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">
+
+
+<state id="s0">
+ <onentry>
+ <send event="timeout" delay="5s"/>
+ </onentry>
+ <invoke type="scxml">
+ <content>
+ <!-- send an event to the parent session using #_parent as the target -->
+ <scxml initial="sub0" version="1.0" datamodel="ecmascript">
+ <state id="sub0">
+ <onentry>
+ <send event="childToParent" target="#_parent"/>
+ </onentry>
+ <transition target="subFinal"/>
+ </state>
+ <final id="subFinal"/>
+ </scxml>
+ </content>
+ </invoke>
+ <transition event="childToParent" target="pass"/>
+ <transition event="*" target="pass"/>
+</state>
+
+ <final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final>
+ <final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final>
+
+</scxml> \ No newline at end of file
diff --git a/test/samples/w3c/ecma/test192.scxml b/test/samples/w3c/ecma/test192.scxml
new file mode 100644
index 0000000..a74a05e
--- /dev/null
+++ b/test/samples/w3c/ecma/test192.scxml
@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="UTF-8"?><!-- we test that #_invokeid works as a target of <send> . A child script is invoked and sends us
+childToParent once its running. Then we send it the event parentToChild using its invokeid as the target.
+If it receives this event, it sends sends the event eventReceived to its parent session (ths session).
+If we get this event, we pass, otherwise the child script eventually times out sends invoke.done and we fail.
+We also set a timeout in this process to make sure the test doesn't hang --><scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" datamodel="ecmascript" version="1.0">
+
+<state id="s0" initial="s01">
+ <onentry>
+ <send event="timeout" delay="5s"/>
+ </onentry>
+
+ <invoke type="scxml" id="invokedChild">
+ <content>
+ <!-- let the parent session know we're running by sending childToParent, then wait for parentToChild.
+ If we get it, send eventReceived. If we don't we eventually time out -->
+ <scxml initial="sub0" version="1.0" datamodel="ecmascript">
+
+ <state id="sub0">
+ <onentry>
+ <send event="childToParent" target="#_parent"/>
+ <send event="timeout" delay="3s"/>
+ </onentry>
+
+ <transition event="parentToChild" target="subFinal">
+ <send target="#_parent" event="eventReceived"/>
+ </transition>
+
+ <transition event="timeout" target="subFinal"/>
+ </state>
+
+ <final id="subFinal"/>
+
+ </scxml>
+ </content>
+ </invoke>
+
+ <transition event="timeout" target="fail"/>
+ <transition event="done.invoke" target="fail"/>
+
+<state id="s01">
+ <transition event="childToParent" target="s02">
+ <send target="#_invokedChild" event="parentToChild"/>
+ </transition>
+</state>
+
+<state id="s02">
+ <transition event="eventReceived" 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> \ No newline at end of file
diff --git a/test/samples/w3c/tests/test194.scxml b/test/samples/w3c/ecma/test194.scxml
index e7dcd76..e7dcd76 100644
--- a/test/samples/w3c/tests/test194.scxml
+++ b/test/samples/w3c/ecma/test194.scxml
diff --git a/test/samples/w3c/tests/test198.scxml b/test/samples/w3c/ecma/test198.scxml
index e804625..e804625 100644
--- a/test/samples/w3c/tests/test198.scxml
+++ b/test/samples/w3c/ecma/test198.scxml
diff --git a/test/samples/w3c/tests/test199.scxml b/test/samples/w3c/ecma/test199.scxml
index 2119cd8..2119cd8 100644
--- a/test/samples/w3c/tests/test199.scxml
+++ b/test/samples/w3c/ecma/test199.scxml
diff --git a/test/samples/w3c/tests/test200.scxml b/test/samples/w3c/ecma/test200.scxml
index 2aa85a9..2aa85a9 100644
--- a/test/samples/w3c/tests/test200.scxml
+++ b/test/samples/w3c/ecma/test200.scxml
diff --git a/test/samples/w3c/tests/test201.scxml b/test/samples/w3c/ecma/test201.scxml
index 6460bbb..6460bbb 100644
--- a/test/samples/w3c/tests/test201.scxml
+++ b/test/samples/w3c/ecma/test201.scxml
diff --git a/test/samples/w3c/tests/test205.scxml b/test/samples/w3c/ecma/test205.scxml
index 5adefbe..5adefbe 100644
--- a/test/samples/w3c/tests/test205.scxml
+++ b/test/samples/w3c/ecma/test205.scxml
diff --git a/test/samples/w3c/tests/test207.scxml b/test/samples/w3c/ecma/test207.scxml
index aa5786a..aa5786a 100644
--- a/test/samples/w3c/tests/test207.scxml
+++ b/test/samples/w3c/ecma/test207.scxml
diff --git a/test/samples/w3c/tests/test208.scxml b/test/samples/w3c/ecma/test208.scxml
index 6faa9c1..6faa9c1 100644
--- a/test/samples/w3c/tests/test208.scxml
+++ b/test/samples/w3c/ecma/test208.scxml
diff --git a/test/samples/w3c/tests/test210.scxml b/test/samples/w3c/ecma/test210.scxml
index e29b65d..e29b65d 100644
--- a/test/samples/w3c/tests/test210.scxml
+++ b/test/samples/w3c/ecma/test210.scxml
diff --git a/test/samples/w3c/tests/test215.scxml b/test/samples/w3c/ecma/test215.scxml
index 97e6a39..97e6a39 100644
--- a/test/samples/w3c/tests/test215.scxml
+++ b/test/samples/w3c/ecma/test215.scxml
diff --git a/test/samples/w3c/tests/test216.scxml b/test/samples/w3c/ecma/test216.scxml
index 97b2a77..97b2a77 100644
--- a/test/samples/w3c/tests/test216.scxml
+++ b/test/samples/w3c/ecma/test216.scxml
diff --git a/test/samples/w3c/tests/test216sub1.scxml b/test/samples/w3c/ecma/test216sub1.scxml
index 3c3a88d..3c3a88d 100644
--- a/test/samples/w3c/tests/test216sub1.scxml
+++ b/test/samples/w3c/ecma/test216sub1.scxml
diff --git a/test/samples/w3c/tests/test220.scxml b/test/samples/w3c/ecma/test220.scxml
index 2d447c4..2d447c4 100644
--- a/test/samples/w3c/tests/test220.scxml
+++ b/test/samples/w3c/ecma/test220.scxml
diff --git a/test/samples/w3c/tests/test223.scxml b/test/samples/w3c/ecma/test223.scxml
index 63ceadd..63ceadd 100644
--- a/test/samples/w3c/tests/test223.scxml
+++ b/test/samples/w3c/ecma/test223.scxml
diff --git a/test/samples/w3c/tests/test224.scxml b/test/samples/w3c/ecma/test224.scxml
index e2e8a32..e2e8a32 100644
--- a/test/samples/w3c/tests/test224.scxml
+++ b/test/samples/w3c/ecma/test224.scxml
diff --git a/test/samples/w3c/tests/test225.scxml b/test/samples/w3c/ecma/test225.scxml
index 467d1ba..467d1ba 100644
--- a/test/samples/w3c/tests/test225.scxml
+++ b/test/samples/w3c/ecma/test225.scxml
diff --git a/test/samples/w3c/tests/test226.scxml b/test/samples/w3c/ecma/test226.scxml
index c831a1d..e1c6d3f 100644
--- a/test/samples/w3c/tests/test226.scxml
+++ b/test/samples/w3c/ecma/test226.scxml
@@ -9,7 +9,7 @@ success. otherwise it will hang and the timeout in this doc signifies failure.
</onentry>
- <invoke type="http://www.w3.org/TR/scxml/" src="file:test226sub1.txml">
+ <invoke type="http://www.w3.org/TR/scxml/" src="file:test226sub1.scxml">
<param name="Var1" expr="1"/>
</invoke>
diff --git a/test/samples/w3c/tests/test226sub1.scxml b/test/samples/w3c/ecma/test226sub1.scxml
index 809efb0..809efb0 100644
--- a/test/samples/w3c/tests/test226sub1.scxml
+++ b/test/samples/w3c/ecma/test226sub1.scxml
diff --git a/test/samples/w3c/tests/test228.scxml b/test/samples/w3c/ecma/test228.scxml
index b44de56..b44de56 100644
--- a/test/samples/w3c/tests/test228.scxml
+++ b/test/samples/w3c/ecma/test228.scxml
diff --git a/test/samples/w3c/tests/test229.scxml b/test/samples/w3c/ecma/test229.scxml
index e3aeecb..e3aeecb 100644
--- a/test/samples/w3c/tests/test229.scxml
+++ b/test/samples/w3c/ecma/test229.scxml
diff --git a/test/samples/w3c/tests/test230.scxml b/test/samples/w3c/ecma/test230.scxml
index ae13476..ae13476 100644
--- a/test/samples/w3c/tests/test230.scxml
+++ b/test/samples/w3c/ecma/test230.scxml
diff --git a/test/samples/w3c/tests/test232.scxml b/test/samples/w3c/ecma/test232.scxml
index 9515e15..9515e15 100644
--- a/test/samples/w3c/tests/test232.scxml
+++ b/test/samples/w3c/ecma/test232.scxml
diff --git a/test/samples/w3c/tests/test233.scxml b/test/samples/w3c/ecma/test233.scxml
index 3900d28..3900d28 100644
--- a/test/samples/w3c/tests/test233.scxml
+++ b/test/samples/w3c/ecma/test233.scxml
diff --git a/test/samples/w3c/tests/test234.scxml b/test/samples/w3c/ecma/test234.scxml
index b874fe9..b874fe9 100644
--- a/test/samples/w3c/tests/test234.scxml
+++ b/test/samples/w3c/ecma/test234.scxml
diff --git a/test/samples/w3c/tests/test235.scxml b/test/samples/w3c/ecma/test235.scxml
index 17d0cf0..17d0cf0 100644
--- a/test/samples/w3c/tests/test235.scxml
+++ b/test/samples/w3c/ecma/test235.scxml
diff --git a/test/samples/w3c/tests/test236.scxml b/test/samples/w3c/ecma/test236.scxml
index 700c6f8..700c6f8 100644
--- a/test/samples/w3c/tests/test236.scxml
+++ b/test/samples/w3c/ecma/test236.scxml
diff --git a/test/samples/w3c/tests/test237.scxml b/test/samples/w3c/ecma/test237.scxml
index b23811d..b23811d 100644
--- a/test/samples/w3c/tests/test237.scxml
+++ b/test/samples/w3c/ecma/test237.scxml
diff --git a/test/samples/w3c/tests/test239.scxml b/test/samples/w3c/ecma/test239.scxml
index 4fcfc92..4fcfc92 100644
--- a/test/samples/w3c/tests/test239.scxml
+++ b/test/samples/w3c/ecma/test239.scxml
diff --git a/test/samples/w3c/tests/test239sub1.scxml b/test/samples/w3c/ecma/test239sub1.scxml
index 0f099d3..0f099d3 100644
--- a/test/samples/w3c/tests/test239sub1.scxml
+++ b/test/samples/w3c/ecma/test239sub1.scxml
diff --git a/test/samples/w3c/tests/test240.scxml b/test/samples/w3c/ecma/test240.scxml
index 6d74d4c..6d74d4c 100644
--- a/test/samples/w3c/tests/test240.scxml
+++ b/test/samples/w3c/ecma/test240.scxml
diff --git a/test/samples/w3c/tests/test241.scxml b/test/samples/w3c/ecma/test241.scxml
index af1471f..af1471f 100644
--- a/test/samples/w3c/tests/test241.scxml
+++ b/test/samples/w3c/ecma/test241.scxml
diff --git a/test/samples/w3c/tests/test242.scxml b/test/samples/w3c/ecma/test242.scxml
index f0fa504..f0fa504 100644
--- a/test/samples/w3c/tests/test242.scxml
+++ b/test/samples/w3c/ecma/test242.scxml
diff --git a/test/samples/w3c/tests/test242sub1.scxml b/test/samples/w3c/ecma/test242sub1.scxml
index 0f099d3..0f099d3 100644
--- a/test/samples/w3c/tests/test242sub1.scxml
+++ b/test/samples/w3c/ecma/test242sub1.scxml
diff --git a/test/samples/w3c/tests/test243.scxml b/test/samples/w3c/ecma/test243.scxml
index 18f2175..18f2175 100644
--- a/test/samples/w3c/tests/test243.scxml
+++ b/test/samples/w3c/ecma/test243.scxml
diff --git a/test/samples/w3c/tests/test244.scxml b/test/samples/w3c/ecma/test244.scxml
index d251c59..d251c59 100644
--- a/test/samples/w3c/tests/test244.scxml
+++ b/test/samples/w3c/ecma/test244.scxml
diff --git a/test/samples/w3c/tests/test245.scxml b/test/samples/w3c/ecma/test245.scxml
index 58838b2..58838b2 100644
--- a/test/samples/w3c/tests/test245.scxml
+++ b/test/samples/w3c/ecma/test245.scxml
diff --git a/test/samples/w3c/tests/test247.scxml b/test/samples/w3c/ecma/test247.scxml
index b543bf1..b543bf1 100644
--- a/test/samples/w3c/tests/test247.scxml
+++ b/test/samples/w3c/ecma/test247.scxml
diff --git a/test/samples/w3c/tests/test250.scxml b/test/samples/w3c/ecma/test250.scxml
index f5228ab..f5228ab 100644
--- a/test/samples/w3c/tests/test250.scxml
+++ b/test/samples/w3c/ecma/test250.scxml
diff --git a/test/samples/w3c/tests/test252.scxml b/test/samples/w3c/ecma/test252.scxml
index 14c6686..14c6686 100644
--- a/test/samples/w3c/tests/test252.scxml
+++ b/test/samples/w3c/ecma/test252.scxml
diff --git a/test/samples/w3c/tests/test253.scxml b/test/samples/w3c/ecma/test253.scxml
index e8924ec..e8924ec 100644
--- a/test/samples/w3c/tests/test253.scxml
+++ b/test/samples/w3c/ecma/test253.scxml
diff --git a/test/samples/w3c/tests/test276.scxml b/test/samples/w3c/ecma/test276.scxml
index 233c171..233c171 100644
--- a/test/samples/w3c/tests/test276.scxml
+++ b/test/samples/w3c/ecma/test276.scxml
diff --git a/test/samples/w3c/tests/test276sub1.scxml b/test/samples/w3c/ecma/test276sub1.scxml
index b18ceb2..b18ceb2 100644
--- a/test/samples/w3c/tests/test276sub1.scxml
+++ b/test/samples/w3c/ecma/test276sub1.scxml
diff --git a/test/samples/w3c/ecma/test277.scxml b/test/samples/w3c/ecma/test277.scxml
new file mode 100644
index 0000000..eb6a1ee
--- /dev/null
+++ b/test/samples/w3c/ecma/test277.scxml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?><!-- test that platform creates undound variable if we assign an illegal value to it. Thus
+ we can assign to it later in state s1. --><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="return"/>
+ </datamodel>
+
+ <state id="s0">
+ <onentry>
+ <raise event="foo"/>
+ </onentry>
+
+ <transition event="error.execution" cond="typeof Var1 === 'undefined' " target="s1"/>
+ <transition event="*" target="fail"/>
+ </state>
+
+ <state id="s1">
+ <onentry>
+ <assign location="Var1" expr="1"/>
+ </onentry>
+ <transition cond="Var1==1" target="pass"/>
+ <transition 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> \ No newline at end of file
diff --git a/test/samples/w3c/tests/test278.scxml b/test/samples/w3c/ecma/test278.scxml
index b26c6f2..b26c6f2 100644
--- a/test/samples/w3c/tests/test278.scxml
+++ b/test/samples/w3c/ecma/test278.scxml
diff --git a/test/samples/w3c/tests/test279.scxml b/test/samples/w3c/ecma/test279.scxml
index 2de6fd2..2de6fd2 100644
--- a/test/samples/w3c/tests/test279.scxml
+++ b/test/samples/w3c/ecma/test279.scxml
diff --git a/test/samples/w3c/tests/test280.scxml b/test/samples/w3c/ecma/test280.scxml
index 78865bf..78865bf 100644
--- a/test/samples/w3c/tests/test280.scxml
+++ b/test/samples/w3c/ecma/test280.scxml
diff --git a/test/samples/w3c/tests/test286.scxml b/test/samples/w3c/ecma/test286.scxml
index 596f2ba..596f2ba 100644
--- a/test/samples/w3c/tests/test286.scxml
+++ b/test/samples/w3c/ecma/test286.scxml
diff --git a/test/samples/w3c/tests/test287.scxml b/test/samples/w3c/ecma/test287.scxml
index 030c6b5..030c6b5 100644
--- a/test/samples/w3c/tests/test287.scxml
+++ b/test/samples/w3c/ecma/test287.scxml
diff --git a/test/samples/w3c/tests/test294.scxml b/test/samples/w3c/ecma/test294.scxml
index efd26f4..efd26f4 100644
--- a/test/samples/w3c/tests/test294.scxml
+++ b/test/samples/w3c/ecma/test294.scxml
diff --git a/test/samples/w3c/tests/test298.scxml b/test/samples/w3c/ecma/test298.scxml
index 6a82a95..6a82a95 100644
--- a/test/samples/w3c/tests/test298.scxml
+++ b/test/samples/w3c/ecma/test298.scxml
diff --git a/test/samples/w3c/tests/test301.scxml b/test/samples/w3c/ecma/test301.scxml
index 59125c8..59125c8 100644
--- a/test/samples/w3c/tests/test301.scxml
+++ b/test/samples/w3c/ecma/test301.scxml
diff --git a/test/samples/w3c/tests/test302.scxml b/test/samples/w3c/ecma/test302.scxml
index c72a311..166b4fc 100644
--- a/test/samples/w3c/tests/test302.scxml
+++ b/test/samples/w3c/ecma/test302.scxml
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?><!-- test that a script is evaluated at load time. <conf:script> shoudl assign the value 1 to
Var1. Hence, if script is evaluated at download time, Var1 has a value in the initial state s0.
-This test is valid only for datamodels that support scripting --><scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" version="1.0" initial="s0">
+This test is valid only for datamodels that support scripting --><scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" version="1.0" datamodel="ecmascript" initial="s0">
<script>var Var1 = 1</script>
<state id="s0">
diff --git a/test/samples/w3c/tests/test303.scxml b/test/samples/w3c/ecma/test303.scxml
index dcb3490..0b1e11c 100644
--- a/test/samples/w3c/tests/test303.scxml
+++ b/test/samples/w3c/ecma/test303.scxml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?><!-- to test that scripts are run as part of executable content, we check that it changes the value of a var at the
-right point. This test is valid only for datamodels that support scripting --><scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" version="1.0" initial="s0">
+right point. This test is valid only for datamodels that support scripting --><scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" version="1.0" datamodel="ecmascript" initial="s0">
<datamodel>
<data id="Var1" expr="0"/>
</datamodel>
diff --git a/test/samples/w3c/tests/test304.scxml b/test/samples/w3c/ecma/test304.scxml
index cdb4c22..250d0cd 100644
--- a/test/samples/w3c/tests/test304.scxml
+++ b/test/samples/w3c/ecma/test304.scxml
@@ -1,4 +1,4 @@
-<?xml version="1.0" encoding="UTF-8"?><!-- test that a variable declared by a script can be accessed like any other part of the data model --><scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" version="1.0" initial="s0">
+<?xml version="1.0" encoding="UTF-8"?><!-- test that a variable declared by a script can be accessed like any other part of the data model --><scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" datamodel="ecmascript" version="1.0" initial="s0">
<script>var Var1 = 1</script>
<state id="s0">
diff --git a/test/samples/w3c/tests/test307.scxml b/test/samples/w3c/ecma/test307.scxml
index 3f93f10..3f93f10 100644
--- a/test/samples/w3c/tests/test307.scxml
+++ b/test/samples/w3c/ecma/test307.scxml
diff --git a/test/samples/w3c/tests/test309.scxml b/test/samples/w3c/ecma/test309.scxml
index 7ac405c..7ac405c 100644
--- a/test/samples/w3c/tests/test309.scxml
+++ b/test/samples/w3c/ecma/test309.scxml
diff --git a/test/samples/w3c/tests/test310.scxml b/test/samples/w3c/ecma/test310.scxml
index e939ded..e939ded 100644
--- a/test/samples/w3c/tests/test310.scxml
+++ b/test/samples/w3c/ecma/test310.scxml
diff --git a/test/samples/w3c/tests/test311.scxml b/test/samples/w3c/ecma/test311.scxml
index 851f3ad..851f3ad 100644
--- a/test/samples/w3c/tests/test311.scxml
+++ b/test/samples/w3c/ecma/test311.scxml
diff --git a/test/samples/w3c/tests/test312.scxml b/test/samples/w3c/ecma/test312.scxml
index a9741e5..a9741e5 100644
--- a/test/samples/w3c/tests/test312.scxml
+++ b/test/samples/w3c/ecma/test312.scxml
diff --git a/test/samples/w3c/tests/test313.scxml b/test/samples/w3c/ecma/test313.scxml
index fcec4ac..fcec4ac 100644
--- a/test/samples/w3c/tests/test313.scxml
+++ b/test/samples/w3c/ecma/test313.scxml
diff --git a/test/samples/w3c/tests/test314.scxml b/test/samples/w3c/ecma/test314.scxml
index ed78e79..ed78e79 100644
--- a/test/samples/w3c/tests/test314.scxml
+++ b/test/samples/w3c/ecma/test314.scxml
diff --git a/test/samples/w3c/tests/test318.scxml b/test/samples/w3c/ecma/test318.scxml
index 15bf7f8..15bf7f8 100644
--- a/test/samples/w3c/tests/test318.scxml
+++ b/test/samples/w3c/ecma/test318.scxml
diff --git a/test/samples/w3c/tests/test319.scxml b/test/samples/w3c/ecma/test319.scxml
index adac328..adac328 100644
--- a/test/samples/w3c/tests/test319.scxml
+++ b/test/samples/w3c/ecma/test319.scxml
diff --git a/test/samples/w3c/tests/test321.scxml b/test/samples/w3c/ecma/test321.scxml
index fe70937..66fcf58 100644
--- a/test/samples/w3c/tests/test321.scxml
+++ b/test/samples/w3c/ecma/test321.scxml
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?><!-- test that _sessionid is bound on startup --><scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" datamodel="ecmascript" version="1.0" name="machineName">
<datamodel>
- <data id="Var1" expr="$_sessionid"/>
+ <data id="Var1" expr="_sessionid"/>
</datamodel>
<state id="s0">
diff --git a/test/samples/w3c/tests/test322.scxml b/test/samples/w3c/ecma/test322.scxml
index 2d0fee1..2d0fee1 100644
--- a/test/samples/w3c/tests/test322.scxml
+++ b/test/samples/w3c/ecma/test322.scxml
diff --git a/test/samples/w3c/tests/test323.scxml b/test/samples/w3c/ecma/test323.scxml
index 01ca4cb..43fa9c8 100644
--- a/test/samples/w3c/tests/test323.scxml
+++ b/test/samples/w3c/ecma/test323.scxml
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?><!-- test that _name is bound on startup --><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" name="machineName">
<datamodel>
- <data id="Var1" expr="$_name"/>
+ <data id="Var1" expr="_name"/>
</datamodel>
<state id="s0">
diff --git a/test/samples/w3c/tests/test324.scxml b/test/samples/w3c/ecma/test324.scxml
index 7e5023e..7e5023e 100644
--- a/test/samples/w3c/tests/test324.scxml
+++ b/test/samples/w3c/ecma/test324.scxml
diff --git a/test/samples/w3c/tests/test325.scxml b/test/samples/w3c/ecma/test325.scxml
index eaa4c22..eaa4c22 100644
--- a/test/samples/w3c/tests/test325.scxml
+++ b/test/samples/w3c/ecma/test325.scxml
diff --git a/test/samples/w3c/tests/test326.scxml b/test/samples/w3c/ecma/test326.scxml
index f18a661..f18a661 100644
--- a/test/samples/w3c/tests/test326.scxml
+++ b/test/samples/w3c/ecma/test326.scxml
diff --git a/test/samples/w3c/tests/test329.scxml b/test/samples/w3c/ecma/test329.scxml
index 9a95643..9a95643 100644
--- a/test/samples/w3c/tests/test329.scxml
+++ b/test/samples/w3c/ecma/test329.scxml
diff --git a/test/samples/w3c/tests/test330.scxml b/test/samples/w3c/ecma/test330.scxml
index 5cbf4bc..5cbf4bc 100644
--- a/test/samples/w3c/tests/test330.scxml
+++ b/test/samples/w3c/ecma/test330.scxml
diff --git a/test/samples/w3c/tests/test331.scxml b/test/samples/w3c/ecma/test331.scxml
index e1271f0..e1271f0 100644
--- a/test/samples/w3c/tests/test331.scxml
+++ b/test/samples/w3c/ecma/test331.scxml
diff --git a/test/samples/w3c/tests/test332.scxml b/test/samples/w3c/ecma/test332.scxml
index da68cf4..da68cf4 100644
--- a/test/samples/w3c/tests/test332.scxml
+++ b/test/samples/w3c/ecma/test332.scxml
diff --git a/test/samples/w3c/tests/test333.scxml b/test/samples/w3c/ecma/test333.scxml
index cb9721a..cb9721a 100644
--- a/test/samples/w3c/tests/test333.scxml
+++ b/test/samples/w3c/ecma/test333.scxml
diff --git a/test/samples/w3c/tests/test335.scxml b/test/samples/w3c/ecma/test335.scxml
index 57da1ba..57da1ba 100644
--- a/test/samples/w3c/tests/test335.scxml
+++ b/test/samples/w3c/ecma/test335.scxml
diff --git a/test/samples/w3c/tests/test336.scxml b/test/samples/w3c/ecma/test336.scxml
index 92bd3dd..92bd3dd 100644
--- a/test/samples/w3c/tests/test336.scxml
+++ b/test/samples/w3c/ecma/test336.scxml
diff --git a/test/samples/w3c/tests/test337.scxml b/test/samples/w3c/ecma/test337.scxml
index c4c663e..c4c663e 100644
--- a/test/samples/w3c/tests/test337.scxml
+++ b/test/samples/w3c/ecma/test337.scxml
diff --git a/test/samples/w3c/tests/test338.scxml b/test/samples/w3c/ecma/test338.scxml
index fef53be..fef53be 100644
--- a/test/samples/w3c/tests/test338.scxml
+++ b/test/samples/w3c/ecma/test338.scxml
diff --git a/test/samples/w3c/tests/test339.scxml b/test/samples/w3c/ecma/test339.scxml
index 7ffbabf..7ffbabf 100644
--- a/test/samples/w3c/tests/test339.scxml
+++ b/test/samples/w3c/ecma/test339.scxml
diff --git a/test/samples/w3c/tests/test342.scxml b/test/samples/w3c/ecma/test342.scxml
index 2934704..2934704 100644
--- a/test/samples/w3c/tests/test342.scxml
+++ b/test/samples/w3c/ecma/test342.scxml
diff --git a/test/samples/w3c/tests/test343.scxml b/test/samples/w3c/ecma/test343.scxml
index 9765739..9765739 100644
--- a/test/samples/w3c/tests/test343.scxml
+++ b/test/samples/w3c/ecma/test343.scxml
diff --git a/test/samples/w3c/tests/test344.scxml b/test/samples/w3c/ecma/test344.scxml
index cd1c8a2..cd1c8a2 100644
--- a/test/samples/w3c/tests/test344.scxml
+++ b/test/samples/w3c/ecma/test344.scxml
diff --git a/test/samples/w3c/tests/test346.scxml b/test/samples/w3c/ecma/test346.scxml
index 622de71..622de71 100644
--- a/test/samples/w3c/tests/test346.scxml
+++ b/test/samples/w3c/ecma/test346.scxml
diff --git a/test/samples/w3c/ecma/test347.scxml b/test/samples/w3c/ecma/test347.scxml
new file mode 100644
index 0000000..7ed7cca
--- /dev/null
+++ b/test/samples/w3c/ecma/test347.scxml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?><!-- test that the scxml event I/O processor works by sending events back and forth between an invoked child
+and its parent process --><scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" datamodel="ecmascript" version="1.0">
+
+
+<state id="s0" initial="s01">
+ <invoke id="child" type="scxml">
+ <content>
+ <scxml initial="sub0" version="1.0" datamodel="ecmascript" name="machineName">
+ <state id="sub0">
+ <onentry>
+ <send type="http://www.w3.org/TR/scxml/#SCXMLEventProcessor" target="#_parent" event="childToParent"/>
+ </onentry>
+ <transition event="parentToChild" target="subFinal"/>
+ </state>
+ <final id="subFinal"/>
+ </scxml>
+ </content>
+ </invoke>
+ <onentry>
+ <send delay="20s" event="timeout"/>
+ </onentry>
+ <transition event="timeout" target="fail"/>
+
+ <state id="s01">
+ <transition event="childToParent" target="s02"/>
+ </state>
+
+ <state id="s02">
+ <onentry>
+ <send type="http://www.w3.org/TR/scxml/#SCXMLEventProcessor" target="#_child" event="parentToChild"/>
+ </onentry>
+ <transition event="done.invoke" target="pass"/>
+ <transition event="error" target="fail"/>
+ </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> \ No newline at end of file
diff --git a/test/samples/w3c/ecma/test348.scxml b/test/samples/w3c/ecma/test348.scxml
new file mode 100644
index 0000000..dc4b301
--- /dev/null
+++ b/test/samples/w3c/ecma/test348.scxml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?><scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" datamodel="ecmascript" version="1.0">
+
+ <!-- test that event param of send sets the name of the event -->
+
+<state id="s0">
+
+ <onentry>
+ <send type="http://www.w3.org/TR/scxml/#SCXMLEventProcessor" event="s0Event"/>
+ </onentry>
+ <transition event="s0Event" 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> \ No newline at end of file
diff --git a/test/samples/w3c/ecma/test349.scxml b/test/samples/w3c/ecma/test349.scxml
new file mode 100644
index 0000000..7fe2408
--- /dev/null
+++ b/test/samples/w3c/ecma/test349.scxml
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8"?><!-- test that value in origin field can be used to send an event back to the sender --><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"/>
+ </datamodel>
+
+<state id="s0">
+
+ <onentry>
+ <send type="http://www.w3.org/TR/scxml/#SCXMLEventProcessor" event="s0Event"/>
+ </onentry>
+ <transition event="s0Event" target="s2">
+ <assign location="Var1" expr="_event.origin"/>
+ </transition>
+ <transition event="*" target="fail"/>
+
+</state>
+
+<state id="s2">
+ <onentry>
+ <send type="http://www.w3.org/TR/scxml/#SCXMLEventProcessor" targetexpr="Var1" event="s0Event2"/>
+ </onentry>
+ <transition event="s0Event2" 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> \ No newline at end of file
diff --git a/test/samples/w3c/ecma/test350.scxml b/test/samples/w3c/ecma/test350.scxml
new file mode 100644
index 0000000..b401ab1
--- /dev/null
+++ b/test/samples/w3c/ecma/test350.scxml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?><!-- test that target value is used to decide what session to deliver the event to. A session should be
+able to send an event to itself using its own session ID as the target --><scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" datamodel="ecmascript" version="1.0">
+<datamodel>
+ <data id="Var1" expr="'#_scxml_' + _sessionid"/>
+ </datamodel>
+
+<state id="s0">
+
+ <onentry>
+ <send delay="5s" event="timeout"/>
+ <send type="http://www.w3.org/TR/scxml/#SCXMLEventProcessor" targetexpr="Var1" event="s0Event"/>
+ </onentry>
+ <transition event="s0Event" 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> \ No newline at end of file
diff --git a/test/samples/w3c/ecma/test351.scxml b/test/samples/w3c/ecma/test351.scxml
new file mode 100644
index 0000000..a308a14
--- /dev/null
+++ b/test/samples/w3c/ecma/test351.scxml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?><!-- test that sendid is set in event if present in send, blank otherwise --><scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" datamodel="ecmascript" version="1.0">
+<datamodel>
+ <data id="Var1"/>
+ <data id="Var2"/>
+ </datamodel>
+
+
+<state id="s0">
+
+ <onentry>
+ <send delay="5s" event="timeout"/>
+ <send type="http://www.w3.org/TR/scxml/#SCXMLEventProcessor" id="send1" event="s0Event"/>
+ </onentry>
+ <transition event="s0Event" target="s1">
+ <assign location="Var1" expr="_event.sendid"/>
+ </transition>
+ <transition event="*" target="fail">
+ </transition>
+
+</state>
+
+<state id="s1">
+ <transition cond="Var1=='send1'" target="s2"/>
+ <transition target="fail"/>
+ </state>
+
+<state id="s2">
+
+ <onentry>
+ <send delay="5s" event="timeout"/>
+ <send event="s0Event2"/>
+ </onentry>
+ <transition event="s0Event2" target="s3">
+ <assign location="Var2" expr="_event.sendid"/>
+ </transition>
+ <transition event="*" target="fail"/>
+</state>
+
+<state id="s3">
+ <transition cond="!Var2" target="pass"/>
+ <transition 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> \ No newline at end of file
diff --git a/test/samples/w3c/ecma/test352.scxml b/test/samples/w3c/ecma/test352.scxml
new file mode 100644
index 0000000..513089a
--- /dev/null
+++ b/test/samples/w3c/ecma/test352.scxml
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8"?><!-- test the origintype is 'http://www.w3.org/TR/scxml/#SCXMLEventProcessor' --><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"/>
+ </datamodel>
+
+
+<state id="s0">
+ <onentry>
+ <send delay="5s" event="timeout"/>
+ <send type="http://www.w3.org/TR/scxml/#SCXMLEventProcessor" event="s0Event"/>
+ </onentry>
+ <transition event="s0Event" target="s1">
+ <assign location="Var1" expr="_event.origintype"/>
+ </transition>
+ <transition event="*" target="fail">
+ </transition>
+
+</state>
+
+<state id="s1">
+ <transition cond="Var1=='http://www.w3.org/TR/scxml/#SCXMLEventProcessor'" target="pass"/>
+ <transition 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> \ No newline at end of file
diff --git a/test/samples/w3c/tests/test355.scxml b/test/samples/w3c/ecma/test355.scxml
index 6a77251..6a77251 100644
--- a/test/samples/w3c/tests/test355.scxml
+++ b/test/samples/w3c/ecma/test355.scxml
diff --git a/test/samples/w3c/tests/test364.scxml b/test/samples/w3c/ecma/test364.scxml
index ac57647..ac57647 100644
--- a/test/samples/w3c/tests/test364.scxml
+++ b/test/samples/w3c/ecma/test364.scxml
diff --git a/test/samples/w3c/tests/test372.scxml b/test/samples/w3c/ecma/test372.scxml
index 9b6c7ec..9b6c7ec 100644
--- a/test/samples/w3c/tests/test372.scxml
+++ b/test/samples/w3c/ecma/test372.scxml
diff --git a/test/samples/w3c/tests/test375.scxml b/test/samples/w3c/ecma/test375.scxml
index 1652588..1652588 100644
--- a/test/samples/w3c/tests/test375.scxml
+++ b/test/samples/w3c/ecma/test375.scxml
diff --git a/test/samples/w3c/tests/test376.scxml b/test/samples/w3c/ecma/test376.scxml
index 1da5a9a..1da5a9a 100644
--- a/test/samples/w3c/tests/test376.scxml
+++ b/test/samples/w3c/ecma/test376.scxml
diff --git a/test/samples/w3c/tests/test377.scxml b/test/samples/w3c/ecma/test377.scxml
index 49549c8..49549c8 100644
--- a/test/samples/w3c/tests/test377.scxml
+++ b/test/samples/w3c/ecma/test377.scxml
diff --git a/test/samples/w3c/tests/test378.scxml b/test/samples/w3c/ecma/test378.scxml
index 34501fb..34501fb 100644
--- a/test/samples/w3c/tests/test378.scxml
+++ b/test/samples/w3c/ecma/test378.scxml
diff --git a/test/samples/w3c/tests/test387.scxml b/test/samples/w3c/ecma/test387.scxml
index 35fb910..35fb910 100644
--- a/test/samples/w3c/tests/test387.scxml
+++ b/test/samples/w3c/ecma/test387.scxml
diff --git a/test/samples/w3c/tests/test388.scxml b/test/samples/w3c/ecma/test388.scxml
index 6a93fd0..6a93fd0 100644
--- a/test/samples/w3c/tests/test388.scxml
+++ b/test/samples/w3c/ecma/test388.scxml
diff --git a/test/samples/w3c/tests/test396.scxml b/test/samples/w3c/ecma/test396.scxml
index dbbb124..dbbb124 100644
--- a/test/samples/w3c/tests/test396.scxml
+++ b/test/samples/w3c/ecma/test396.scxml
diff --git a/test/samples/w3c/tests/test399.scxml b/test/samples/w3c/ecma/test399.scxml
index e5a951e..e5a951e 100644
--- a/test/samples/w3c/tests/test399.scxml
+++ b/test/samples/w3c/ecma/test399.scxml
diff --git a/test/samples/w3c/tests/test401.scxml b/test/samples/w3c/ecma/test401.scxml
index 9ce7217..9ce7217 100644
--- a/test/samples/w3c/tests/test401.scxml
+++ b/test/samples/w3c/ecma/test401.scxml
diff --git a/test/samples/w3c/tests/test402.scxml b/test/samples/w3c/ecma/test402.scxml
index 104483d..104483d 100644
--- a/test/samples/w3c/tests/test402.scxml
+++ b/test/samples/w3c/ecma/test402.scxml
diff --git a/test/samples/w3c/tests/test403a.scxml b/test/samples/w3c/ecma/test403a.scxml
index 89a4ad9..89a4ad9 100644
--- a/test/samples/w3c/tests/test403a.scxml
+++ b/test/samples/w3c/ecma/test403a.scxml
diff --git a/test/samples/w3c/tests/test403b.scxml b/test/samples/w3c/ecma/test403b.scxml
index 18acfb5..18acfb5 100644
--- a/test/samples/w3c/tests/test403b.scxml
+++ b/test/samples/w3c/ecma/test403b.scxml
diff --git a/test/samples/w3c/tests/test403c.scxml b/test/samples/w3c/ecma/test403c.scxml
index 9e7fd12..9e7fd12 100644
--- a/test/samples/w3c/tests/test403c.scxml
+++ b/test/samples/w3c/ecma/test403c.scxml
diff --git a/test/samples/w3c/tests/test404.scxml b/test/samples/w3c/ecma/test404.scxml
index ad6bb24..ad6bb24 100644
--- a/test/samples/w3c/tests/test404.scxml
+++ b/test/samples/w3c/ecma/test404.scxml
diff --git a/test/samples/w3c/tests/test405.scxml b/test/samples/w3c/ecma/test405.scxml
index 114cf22..114cf22 100644
--- a/test/samples/w3c/tests/test405.scxml
+++ b/test/samples/w3c/ecma/test405.scxml
diff --git a/test/samples/w3c/tests/test406.scxml b/test/samples/w3c/ecma/test406.scxml
index a8f8f99..a8f8f99 100644
--- a/test/samples/w3c/tests/test406.scxml
+++ b/test/samples/w3c/ecma/test406.scxml
diff --git a/test/samples/w3c/tests/test407.scxml b/test/samples/w3c/ecma/test407.scxml
index 0407c99..0407c99 100644
--- a/test/samples/w3c/tests/test407.scxml
+++ b/test/samples/w3c/ecma/test407.scxml
diff --git a/test/samples/w3c/tests/test409.scxml b/test/samples/w3c/ecma/test409.scxml
index 9b4f1aa..9b4f1aa 100644
--- a/test/samples/w3c/tests/test409.scxml
+++ b/test/samples/w3c/ecma/test409.scxml
diff --git a/test/samples/w3c/tests/test411.scxml b/test/samples/w3c/ecma/test411.scxml
index 8e1c673..8e1c673 100644
--- a/test/samples/w3c/tests/test411.scxml
+++ b/test/samples/w3c/ecma/test411.scxml
diff --git a/test/samples/w3c/tests/test412.scxml b/test/samples/w3c/ecma/test412.scxml
index 4a8b26a..4a8b26a 100644
--- a/test/samples/w3c/tests/test412.scxml
+++ b/test/samples/w3c/ecma/test412.scxml
diff --git a/test/samples/w3c/tests/test413.scxml b/test/samples/w3c/ecma/test413.scxml
index 94e32a2..94e32a2 100644
--- a/test/samples/w3c/tests/test413.scxml
+++ b/test/samples/w3c/ecma/test413.scxml
diff --git a/test/samples/w3c/tests/test416.scxml b/test/samples/w3c/ecma/test416.scxml
index 45799e4..45799e4 100644
--- a/test/samples/w3c/tests/test416.scxml
+++ b/test/samples/w3c/ecma/test416.scxml
diff --git a/test/samples/w3c/tests/test417.scxml b/test/samples/w3c/ecma/test417.scxml
index 5ca6144..5ca6144 100644
--- a/test/samples/w3c/tests/test417.scxml
+++ b/test/samples/w3c/ecma/test417.scxml
diff --git a/test/samples/w3c/tests/test419.scxml b/test/samples/w3c/ecma/test419.scxml
index c4de17e..c4de17e 100644
--- a/test/samples/w3c/tests/test419.scxml
+++ b/test/samples/w3c/ecma/test419.scxml
diff --git a/test/samples/w3c/tests/test421.scxml b/test/samples/w3c/ecma/test421.scxml
index 1747334..1747334 100644
--- a/test/samples/w3c/tests/test421.scxml
+++ b/test/samples/w3c/ecma/test421.scxml
diff --git a/test/samples/w3c/tests/test422.scxml b/test/samples/w3c/ecma/test422.scxml
index 803f75f..803f75f 100644
--- a/test/samples/w3c/tests/test422.scxml
+++ b/test/samples/w3c/ecma/test422.scxml
diff --git a/test/samples/w3c/tests/test423.scxml b/test/samples/w3c/ecma/test423.scxml
index f6287ab..f6287ab 100644
--- a/test/samples/w3c/tests/test423.scxml
+++ b/test/samples/w3c/ecma/test423.scxml
diff --git a/test/samples/w3c/tests/test436.scxml b/test/samples/w3c/ecma/test436.scxml
index d8b2ca2..d8b2ca2 100644
--- a/test/samples/w3c/tests/test436.scxml
+++ b/test/samples/w3c/ecma/test436.scxml
diff --git a/test/samples/w3c/tests/test444.scxml b/test/samples/w3c/ecma/test444.scxml
index c689674..c689674 100644
--- a/test/samples/w3c/tests/test444.scxml
+++ b/test/samples/w3c/ecma/test444.scxml
diff --git a/test/samples/w3c/tests/test445.scxml b/test/samples/w3c/ecma/test445.scxml
index f1ae24b..f1ae24b 100644
--- a/test/samples/w3c/tests/test445.scxml
+++ b/test/samples/w3c/ecma/test445.scxml
diff --git a/test/samples/w3c/tests/test448.scxml b/test/samples/w3c/ecma/test448.scxml
index adbc121..adbc121 100644
--- a/test/samples/w3c/tests/test448.scxml
+++ b/test/samples/w3c/ecma/test448.scxml
diff --git a/test/samples/w3c/tests/test449.scxml b/test/samples/w3c/ecma/test449.scxml
index d06cc9a..d06cc9a 100644
--- a/test/samples/w3c/tests/test449.scxml
+++ b/test/samples/w3c/ecma/test449.scxml
diff --git a/test/samples/w3c/tests/test451.scxml b/test/samples/w3c/ecma/test451.scxml
index e939ded..e939ded 100644
--- a/test/samples/w3c/tests/test451.scxml
+++ b/test/samples/w3c/ecma/test451.scxml
diff --git a/test/samples/w3c/tests/test452.scxml b/test/samples/w3c/ecma/test452.scxml
index 4f38ca7..4f38ca7 100644
--- a/test/samples/w3c/tests/test452.scxml
+++ b/test/samples/w3c/ecma/test452.scxml
diff --git a/test/samples/w3c/tests/test453.scxml b/test/samples/w3c/ecma/test453.scxml
index 33b904d..33b904d 100644
--- a/test/samples/w3c/tests/test453.scxml
+++ b/test/samples/w3c/ecma/test453.scxml
diff --git a/test/samples/w3c/tests/test456.scxml b/test/samples/w3c/ecma/test456.scxml
index 35925e4..2865fb2 100644
--- a/test/samples/w3c/tests/test456.scxml
+++ b/test/samples/w3c/ecma/test456.scxml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?><!-- we can't test that _any_ ecmascript is valid inside <script>, so we
just run a simple one and check that it can update the data model. --><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"/>
+ <data id="Var1" expr="0"/>
</datamodel>
<state id="s0">
diff --git a/test/samples/w3c/tests/test457.scxml b/test/samples/w3c/ecma/test457.scxml
index 86cf156..86cf156 100644
--- a/test/samples/w3c/tests/test457.scxml
+++ b/test/samples/w3c/ecma/test457.scxml
diff --git a/test/samples/w3c/tests/test460.scxml b/test/samples/w3c/ecma/test460.scxml
index 8ba3e5e..8ba3e5e 100644
--- a/test/samples/w3c/tests/test460.scxml
+++ b/test/samples/w3c/ecma/test460.scxml
diff --git a/test/samples/w3c/tests/test463.scxml b/test/samples/w3c/ecma/test463.scxml
index 4f32b84..4f32b84 100644
--- a/test/samples/w3c/tests/test463.scxml
+++ b/test/samples/w3c/ecma/test463.scxml
diff --git a/test/samples/w3c/tests/test464.scxml b/test/samples/w3c/ecma/test464.scxml
index bd640f2..bd640f2 100644
--- a/test/samples/w3c/tests/test464.scxml
+++ b/test/samples/w3c/ecma/test464.scxml
diff --git a/test/samples/w3c/tests/test465.scxml b/test/samples/w3c/ecma/test465.scxml
index a91bb06..a91bb06 100644
--- a/test/samples/w3c/tests/test465.scxml
+++ b/test/samples/w3c/ecma/test465.scxml
diff --git a/test/samples/w3c/tests/test466.scxml b/test/samples/w3c/ecma/test466.scxml
index 1431fab..1431fab 100644
--- a/test/samples/w3c/tests/test466.scxml
+++ b/test/samples/w3c/ecma/test466.scxml
diff --git a/test/samples/w3c/tests/test467.scxml b/test/samples/w3c/ecma/test467.scxml
index 130b7bc..130b7bc 100644
--- a/test/samples/w3c/tests/test467.scxml
+++ b/test/samples/w3c/ecma/test467.scxml
diff --git a/test/samples/w3c/tests/test468.scxml b/test/samples/w3c/ecma/test468.scxml
index 3b6902d..3b6902d 100644
--- a/test/samples/w3c/tests/test468.scxml
+++ b/test/samples/w3c/ecma/test468.scxml
diff --git a/test/samples/w3c/tests/test469.scxml b/test/samples/w3c/ecma/test469.scxml
index 02fe476..02fe476 100644
--- a/test/samples/w3c/tests/test469.scxml
+++ b/test/samples/w3c/ecma/test469.scxml
diff --git a/test/samples/w3c/tests/test470.scxml b/test/samples/w3c/ecma/test470.scxml
index 3c26bb1..3c26bb1 100644
--- a/test/samples/w3c/tests/test470.scxml
+++ b/test/samples/w3c/ecma/test470.scxml
diff --git a/test/samples/w3c/tests/test473.scxml b/test/samples/w3c/ecma/test473.scxml
index 4a57129..4a57129 100644
--- a/test/samples/w3c/tests/test473.scxml
+++ b/test/samples/w3c/ecma/test473.scxml
diff --git a/test/samples/w3c/tests/test474.scxml b/test/samples/w3c/ecma/test474.scxml
index decad75..decad75 100644
--- a/test/samples/w3c/tests/test474.scxml
+++ b/test/samples/w3c/ecma/test474.scxml
diff --git a/test/samples/w3c/tests/test475.scxml b/test/samples/w3c/ecma/test475.scxml
index 0f9cdfe..0f9cdfe 100644
--- a/test/samples/w3c/tests/test475.scxml
+++ b/test/samples/w3c/ecma/test475.scxml
diff --git a/test/samples/w3c/tests/test476.scxml b/test/samples/w3c/ecma/test476.scxml
index d3fe8e8..d3fe8e8 100644
--- a/test/samples/w3c/tests/test476.scxml
+++ b/test/samples/w3c/ecma/test476.scxml
diff --git a/test/samples/w3c/tests/test477.scxml b/test/samples/w3c/ecma/test477.scxml
index 1726866..1726866 100644
--- a/test/samples/w3c/tests/test477.scxml
+++ b/test/samples/w3c/ecma/test477.scxml
diff --git a/test/samples/w3c/tests/test478.scxml b/test/samples/w3c/ecma/test478.scxml
index 9821608..9821608 100644
--- a/test/samples/w3c/tests/test478.scxml
+++ b/test/samples/w3c/ecma/test478.scxml
diff --git a/test/samples/w3c/tests/test479.scxml b/test/samples/w3c/ecma/test479.scxml
index 3d5b1ac..3d5b1ac 100644
--- a/test/samples/w3c/tests/test479.scxml
+++ b/test/samples/w3c/ecma/test479.scxml
diff --git a/test/samples/w3c/tests/test480.scxml b/test/samples/w3c/ecma/test480.scxml
index 0fde260..0fde260 100644
--- a/test/samples/w3c/tests/test480.scxml
+++ b/test/samples/w3c/ecma/test480.scxml
diff --git a/test/samples/w3c/tests/test481.scxml b/test/samples/w3c/ecma/test481.scxml
index a0505f6..a0505f6 100644
--- a/test/samples/w3c/tests/test481.scxml
+++ b/test/samples/w3c/ecma/test481.scxml
diff --git a/test/samples/w3c/tests/test482.scxml b/test/samples/w3c/ecma/test482.scxml
index 00eb3fe..00eb3fe 100644
--- a/test/samples/w3c/tests/test482.scxml
+++ b/test/samples/w3c/ecma/test482.scxml
diff --git a/test/samples/w3c/tests/test487.scxml b/test/samples/w3c/ecma/test487.scxml
index 30a50eb..30a50eb 100644
--- a/test/samples/w3c/tests/test487.scxml
+++ b/test/samples/w3c/ecma/test487.scxml
diff --git a/test/samples/w3c/tests/test488.scxml b/test/samples/w3c/ecma/test488.scxml
index 45e775c..45e775c 100644
--- a/test/samples/w3c/tests/test488.scxml
+++ b/test/samples/w3c/ecma/test488.scxml
diff --git a/test/samples/w3c/ecma/test495.scxml b/test/samples/w3c/ecma/test495.scxml
new file mode 100644
index 0000000..e3a8e58
--- /dev/null
+++ b/test/samples/w3c/ecma/test495.scxml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?><!-- test that the scxml event i/o processor puts events in the correct queues.--><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">
+
+
+<state id="s0">
+ <onentry>
+ <!-- default target is external queue -->
+ <send event="event1" type="http://www.w3.org/TR/scxml/#SCXMLEventProcessor"/>
+ <send event="event2" target="#_internal" type="http://www.w3.org/TR/scxml/#SCXMLEventProcessor"/>
+ </onentry>
+ <!-- we should get the internal event first -->
+ <transition event="event1" target="fail"/>
+ <transition event="event2" target="s1"/>
+ </state>
+
+<state id="s1">
+ <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> \ No newline at end of file
diff --git a/test/samples/w3c/ecma/test500.scxml b/test/samples/w3c/ecma/test500.scxml
new file mode 100644
index 0000000..26beec6
--- /dev/null
+++ b/test/samples/w3c/ecma/test500.scxml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?><!-- test that location field is found inside entry for SCXML Event I/O processor --><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="_ioprocessors['http://www.w3.org/TR/scxml/#SCXMLEventProcessor'].location"/>
+ </datamodel>
+
+<state id="s0">
+ <transition cond="Var1" target="pass"/>
+ <transition 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> \ No newline at end of file
diff --git a/test/samples/w3c/ecma/test501.scxml b/test/samples/w3c/ecma/test501.scxml
new file mode 100644
index 0000000..6cca0f5
--- /dev/null
+++ b/test/samples/w3c/ecma/test501.scxml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?><!-- test that the location entry for the SCXML Event I/O processor can be used as the target for an event --><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="_ioprocessors['http://www.w3.org/TR/scxml/#SCXMLEventProcessor'].location"/>
+ </datamodel>
+
+<state id="s0">
+ <onentry>
+ <send targetexpr="Var1" event="foo"/>
+ <send event="timeout" delay="2s"/>
+ </onentry>
+ <transition event="foo" 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> \ No newline at end of file
diff --git a/test/samples/w3c/tests/test503.scxml b/test/samples/w3c/ecma/test503.scxml
index 6e1ab2b..6e1ab2b 100644
--- a/test/samples/w3c/tests/test503.scxml
+++ b/test/samples/w3c/ecma/test503.scxml
diff --git a/test/samples/w3c/tests/test504.scxml b/test/samples/w3c/ecma/test504.scxml
index 6e2679b..6e2679b 100644
--- a/test/samples/w3c/tests/test504.scxml
+++ b/test/samples/w3c/ecma/test504.scxml
diff --git a/test/samples/w3c/tests/test505.scxml b/test/samples/w3c/ecma/test505.scxml
index 01d326b..01d326b 100644
--- a/test/samples/w3c/tests/test505.scxml
+++ b/test/samples/w3c/ecma/test505.scxml
diff --git a/test/samples/w3c/tests/test506.scxml b/test/samples/w3c/ecma/test506.scxml
index 1a7a1da..1a7a1da 100644
--- a/test/samples/w3c/tests/test506.scxml
+++ b/test/samples/w3c/ecma/test506.scxml
diff --git a/test/samples/w3c/tests/test521.scxml b/test/samples/w3c/ecma/test521.scxml
index e4b00d8..e4b00d8 100644
--- a/test/samples/w3c/tests/test521.scxml
+++ b/test/samples/w3c/ecma/test521.scxml
diff --git a/test/samples/w3c/tests/test525.scxml b/test/samples/w3c/ecma/test525.scxml
index 432e760..432e760 100644
--- a/test/samples/w3c/tests/test525.scxml
+++ b/test/samples/w3c/ecma/test525.scxml
diff --git a/test/samples/w3c/tests/test527.scxml b/test/samples/w3c/ecma/test527.scxml
index 426cc6c..426cc6c 100644
--- a/test/samples/w3c/tests/test527.scxml
+++ b/test/samples/w3c/ecma/test527.scxml
diff --git a/test/samples/w3c/tests/test528.scxml b/test/samples/w3c/ecma/test528.scxml
index 9f1ebd4..9f1ebd4 100644
--- a/test/samples/w3c/tests/test528.scxml
+++ b/test/samples/w3c/ecma/test528.scxml
diff --git a/test/samples/w3c/tests/test529.scxml b/test/samples/w3c/ecma/test529.scxml
index 91dc002..91dc002 100644
--- a/test/samples/w3c/tests/test529.scxml
+++ b/test/samples/w3c/ecma/test529.scxml
diff --git a/test/samples/w3c/tests/test530.scxml b/test/samples/w3c/ecma/test530.scxml
index 9361181..9361181 100644
--- a/test/samples/w3c/tests/test530.scxml
+++ b/test/samples/w3c/ecma/test530.scxml
diff --git a/test/samples/w3c/tests/test533.scxml b/test/samples/w3c/ecma/test533.scxml
index a4550e3..a4550e3 100644
--- a/test/samples/w3c/tests/test533.scxml
+++ b/test/samples/w3c/ecma/test533.scxml
diff --git a/test/samples/w3c/tests/test537.scxml b/test/samples/w3c/ecma/test537.scxml
index 350d422..350d422 100644
--- a/test/samples/w3c/tests/test537.scxml
+++ b/test/samples/w3c/ecma/test537.scxml
diff --git a/test/samples/w3c/tests/test539.scxml b/test/samples/w3c/ecma/test539.scxml
index 450bfd9..450bfd9 100644
--- a/test/samples/w3c/tests/test539.scxml
+++ b/test/samples/w3c/ecma/test539.scxml
diff --git a/test/samples/w3c/tests/test539.txt b/test/samples/w3c/ecma/test539.txt
index de1b0a1..de1b0a1 100644
--- a/test/samples/w3c/tests/test539.txt
+++ b/test/samples/w3c/ecma/test539.txt
diff --git a/test/samples/w3c/tests/test540.scxml b/test/samples/w3c/ecma/test540.scxml
index 641509f..641509f 100644
--- a/test/samples/w3c/tests/test540.scxml
+++ b/test/samples/w3c/ecma/test540.scxml
diff --git a/test/samples/w3c/tests/test540.txt b/test/samples/w3c/ecma/test540.txt
index 2191239..2191239 100644
--- a/test/samples/w3c/tests/test540.txt
+++ b/test/samples/w3c/ecma/test540.txt
diff --git a/test/samples/w3c/tests/test542.scxml b/test/samples/w3c/ecma/test542.scxml
index 1101471..1101471 100644
--- a/test/samples/w3c/tests/test542.scxml
+++ b/test/samples/w3c/ecma/test542.scxml
diff --git a/test/samples/w3c/tests/test544.scxml b/test/samples/w3c/ecma/test544.scxml
index fd09502..fd09502 100644
--- a/test/samples/w3c/tests/test544.scxml
+++ b/test/samples/w3c/ecma/test544.scxml
diff --git a/test/samples/w3c/tests/test546.scxml b/test/samples/w3c/ecma/test546.scxml
index 728843b..728843b 100644
--- a/test/samples/w3c/tests/test546.scxml
+++ b/test/samples/w3c/ecma/test546.scxml
diff --git a/test/samples/w3c/tests/test547.scxml b/test/samples/w3c/ecma/test547.scxml
index 8c04c95..8c04c95 100644
--- a/test/samples/w3c/tests/test547.scxml
+++ b/test/samples/w3c/ecma/test547.scxml
diff --git a/test/samples/w3c/tests/test550.scxml b/test/samples/w3c/ecma/test550.scxml
index 0ca4c1a..0ca4c1a 100644
--- a/test/samples/w3c/tests/test550.scxml
+++ b/test/samples/w3c/ecma/test550.scxml
diff --git a/test/samples/w3c/tests/test551.scxml b/test/samples/w3c/ecma/test551.scxml
index cd267eb..cd267eb 100644
--- a/test/samples/w3c/tests/test551.scxml
+++ b/test/samples/w3c/ecma/test551.scxml
diff --git a/test/samples/w3c/tests/test552.scxml b/test/samples/w3c/ecma/test552.scxml
index 94267c6..94267c6 100644
--- a/test/samples/w3c/tests/test552.scxml
+++ b/test/samples/w3c/ecma/test552.scxml
diff --git a/test/samples/w3c/tests/test552.txt b/test/samples/w3c/ecma/test552.txt
index d8263ee..d8263ee 100644
--- a/test/samples/w3c/tests/test552.txt
+++ b/test/samples/w3c/ecma/test552.txt
diff --git a/test/samples/w3c/tests/test553.scxml b/test/samples/w3c/ecma/test553.scxml
index 114c4a2..114c4a2 100644
--- a/test/samples/w3c/tests/test553.scxml
+++ b/test/samples/w3c/ecma/test553.scxml
diff --git a/test/samples/w3c/tests/test554.scxml b/test/samples/w3c/ecma/test554.scxml
index b328ae9..b328ae9 100644
--- a/test/samples/w3c/tests/test554.scxml
+++ b/test/samples/w3c/ecma/test554.scxml
diff --git a/test/samples/w3c/tests/test555.scxml b/test/samples/w3c/ecma/test555.scxml
index 79dea75..79dea75 100644
--- a/test/samples/w3c/tests/test555.scxml
+++ b/test/samples/w3c/ecma/test555.scxml
diff --git a/test/samples/w3c/tests/test557.scxml b/test/samples/w3c/ecma/test557.scxml
index 6f4eed1..6f4eed1 100644
--- a/test/samples/w3c/tests/test557.scxml
+++ b/test/samples/w3c/ecma/test557.scxml
diff --git a/test/samples/w3c/tests/test557.txt b/test/samples/w3c/ecma/test557.txt
index a8e51da..a8e51da 100644
--- a/test/samples/w3c/tests/test557.txt
+++ b/test/samples/w3c/ecma/test557.txt
diff --git a/test/samples/w3c/tests/test558.scxml b/test/samples/w3c/ecma/test558.scxml
index a075100..a075100 100644
--- a/test/samples/w3c/tests/test558.scxml
+++ b/test/samples/w3c/ecma/test558.scxml
diff --git a/test/samples/w3c/tests/test558.txt b/test/samples/w3c/ecma/test558.txt
index bb2bcc7..bb2bcc7 100644
--- a/test/samples/w3c/tests/test558.txt
+++ b/test/samples/w3c/ecma/test558.txt
diff --git a/test/samples/w3c/tests/test560.scxml b/test/samples/w3c/ecma/test560.scxml
index d283b1a..d283b1a 100644
--- a/test/samples/w3c/tests/test560.scxml
+++ b/test/samples/w3c/ecma/test560.scxml
diff --git a/test/samples/w3c/tests/test561.scxml b/test/samples/w3c/ecma/test561.scxml
index 40f414a..e50e00c 100644
--- a/test/samples/w3c/tests/test561.scxml
+++ b/test/samples/w3c/ecma/test561.scxml
@@ -1,5 +1,5 @@
-<?xml version="1.0" encoding="UTF-8"?><!-- in the ECMA data model, test that processor creates correct DOM structure in
- _event.data when receiving XML in an event --><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">
+<?xml version="1.0" encoding="UTF-8"?><!-- in the ECMA data model, test that processor creates an ECMAScript object
+ _event.data when receiving JSON in an event --><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">
<state id="s0">
diff --git a/test/samples/w3c/tests/test562.scxml b/test/samples/w3c/ecma/test562.scxml
index f5997bb..f5997bb 100644
--- a/test/samples/w3c/tests/test562.scxml
+++ b/test/samples/w3c/ecma/test562.scxml
diff --git a/test/samples/w3c/ecma/test568.scxml b/test/samples/w3c/ecma/test568.scxml
new file mode 100644
index 0000000..79d7c92
--- /dev/null
+++ b/test/samples/w3c/ecma/test568.scxml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?><!-- test that location field is found inside entry for SCXML Event I/O processor in the XPath
+data model. The tests for the relevant event i/o processors will test that it can be used to
+send events. --><scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="xpath">
+
+
+<state id="s0">
+ <transition cond="$_ioprocessors/scxml/location/text()" target="pass"/>
+ <transition 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> \ No newline at end of file
diff --git a/test/samples/w3c/tests/test569.scxml b/test/samples/w3c/ecma/test569.scxml
index 832a0c0..832a0c0 100644
--- a/test/samples/w3c/tests/test569.scxml
+++ b/test/samples/w3c/ecma/test569.scxml
diff --git a/test/samples/w3c/tests/test570.scxml b/test/samples/w3c/ecma/test570.scxml
index 2f5ccbe..2f5ccbe 100644
--- a/test/samples/w3c/tests/test570.scxml
+++ b/test/samples/w3c/ecma/test570.scxml
diff --git a/test/samples/w3c/tests/test576.scxml b/test/samples/w3c/ecma/test576.scxml
index 2bed2ca..2bed2ca 100644
--- a/test/samples/w3c/tests/test576.scxml
+++ b/test/samples/w3c/ecma/test576.scxml
diff --git a/test/samples/w3c/ecma/test578.scxml b/test/samples/w3c/ecma/test578.scxml
new file mode 100644
index 0000000..bdb5e2d
--- /dev/null
+++ b/test/samples/w3c/ecma/test578.scxml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?><!-- in the ECMA data model, test that processor creates an ECMAScript object
+ _event.data when receiving JSON in an event --><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">
+
+
+<state id="s0">
+ <onentry>
+ <send event="foo">
+ <content>{ productName : "bar", size : 27 }</content>
+ </send>
+ </onentry>
+ <transition event="foo" cond="_event.data.productName == 'bar'" 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> \ No newline at end of file
diff --git a/test/samples/w3c/tests/test441a.scxml b/test/samples/w3c/tests/test441a.scxml
deleted file mode 100644
index 31ed3b2..0000000
--- a/test/samples/w3c/tests/test441a.scxml
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?><scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" datamodel="null" version="1.0" exmode="lax" initial="s01">
-
-<!-- since exmode=lax, the processor should ignore all datamodel elements and complete without an error -->
-<datamodel>
- <data id="Var1" expr="1"/>
- </datamodel>
-
-<state id="s0">
- <onentry>
- <assign location="foo" expr="2"/>
- <script>
- x = y
- </script>
- <foreach array="baz" item="bat">
- <log expr="this is a mistake"/>
- </foreach>
- </onentry>
-
- <state id="s01" initial="s01final">
- <final id="s01final">
- <donedata>
- <param name="result" expr="foo"/>
- </donedata>
- </final>
- </state>
-
- <transition cond="Var1==1" target="fail"/>
- <transition event="error" target="fail"/>
- <transition event="done" target="s1"/>
- </state>
-
-<state id="s1">
- <onentry>
- <raise event="noerror"/>
- </onentry>
- <transition event="error" target="fail"/>
- <transition event="noerror" target="pass"/>
- </state>
-
-<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final>
-<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final>
-
-
-</scxml> \ No newline at end of file
diff --git a/test/samples/w3c/tests/test441b.scxml b/test/samples/w3c/tests/test441b.scxml
deleted file mode 100644
index 1a35eba..0000000
--- a/test/samples/w3c/tests/test441b.scxml
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?><scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" datamodel="null" version="1.0" exmode="strict" initial="s01">
-
-<!-- since exmode=strict, the processor should reject this document. Therefore this is a manual test -->
-<datamodel>
- <data id="Var1" expr="1"/>
- </datamodel>
-
-<state id="s0">
- <onentry>
- <assign location="foo" expr="2"/>
- <script>
- x = y
- </script>
- <foreach array="baz" item="bat">
- <log expr="this is a mistake"/>
- </foreach>
- </onentry>
-
-
- <state id="s01" initial="s01final">
- <final id="s01final">
- <donedata>
- <param name="result" expr="foo"/>
- </donedata>
- </final>
- </state>
-
- <transition target="fail"/>
-
- </state>
-
-<state id="s1">
- <onentry>
- <raise event="noerror"/>
- </onentry>
- <transition event="error" target="fail"/>
- <transition event="noerror" target="pass"/>
- </state>
-
-<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final>
-<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final>
-
-
-</scxml> \ No newline at end of file
diff --git a/test/samples/w3c/tests/test486b.scxml b/test/samples/w3c/tests/test486b.scxml
deleted file mode 100644
index c6cf7be..0000000
--- a/test/samples/w3c/tests/test486b.scxml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?><!-- test that <script> is processed according to 'exmode'. In this
- case, the entire file should be rejected (hence this is a manual test --><scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" name="scxmltest" exmode="strict" initial="s0" version="1.0" datamodel="xpath">
- <script>some script</script>
-
-<state id="s0">
-
- <transition 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> \ No newline at end of file
diff --git a/test/samples/w3c/txml/robots.txt b/test/samples/w3c/txml/robots.txt
new file mode 100644
index 0000000..54f3e01
--- /dev/null
+++ b/test/samples/w3c/txml/robots.txt
@@ -0,0 +1,96 @@
+#
+# robots.txt for http://www.w3.org/
+#
+# $Id: robots.txt,v 1.66 2012/07/17 21:30:56 gerald Exp $
+#
+
+# For use by search.w3.org
+User-agent: W3C-gsa
+Disallow: /Out-Of-Date
+
+User-agent: W3T_SE
+Disallow: /Out-Of-Date
+
+User-agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT; MS Search 4.0 Robot)
+Disallow: /
+
+# W3C Link checker
+User-agent: W3C-checklink
+Disallow:
+
+# the following settings apply to all bots
+User-agent: *
+# Blogs - WordPress
+# https://codex.wordpress.org/Search_Engine_Optimization_for_WordPress#Robots.txt_Optimization
+Disallow: /*/wp-admin/
+Disallow: /*/wp-includes/
+Disallow: /*/wp-content/plugins/
+Disallow: /*/wp-content/cache/
+Disallow: /*/wp-content/themes/
+Disallow: /blog/*/trackback/
+Disallow: /blog/*/feed/
+Disallow: /blog/*/comments/
+Disallow: /blog/*/category/*/*
+Disallow: /blog/*/*/trackback/
+Disallow: /blog/*/*/feed/
+Disallow: /blog/*/*/comments/
+Disallow: /blog/*/*?
+Disallow: /community/trackback/
+Disallow: /community/feed/
+Disallow: /community/comments/
+Disallow: /community/category/*/*
+Disallow: /community/*/trackback/
+Disallow: /community/*/feed/
+Disallow: /community/*/comments/
+Disallow: /community/*/category/*/*
+Disallow: /community/*?
+Disallow: /Consortium/Offices/trackback/
+Disallow: /Consortium/Offices/feed/
+Disallow: /Consortium/Offices/comments/
+Disallow: /Consortium/Offices/category/*/*
+Disallow: /Consortium/Offices/*/trackback/
+Disallow: /Consortium/Offices/*/feed/
+Disallow: /Consortium/Offices/*/comments/
+Disallow: /Consortium/Offices/*?
+# Wikis - Mediawiki
+# https://www.mediawiki.org/wiki/Manual:Robots.txt
+Disallow: /wiki/index.php?
+Disallow: /wiki/index.php/Help
+Disallow: /wiki/index.php/MediaWiki
+Disallow: /wiki/index.php/Special:
+Disallow: /wiki/index.php/Template
+Disallow: /wiki/skins/
+Disallow: /*/wiki/index.php?
+Disallow: /*/wiki/index.php/Help
+Disallow: /*/wiki/index.php/MediaWiki
+Disallow: /*/wiki/index.php/Special:
+Disallow: /*/wiki/index.php/Template
+# various other access-controlled or expensive areas
+Disallow: /2004/ontaria/basic
+Disallow: /Team/
+Disallow: /Project
+Disallow: /Web
+Disallow: /Systems
+Disallow: /History
+Disallow: /Out-Of-Date
+Disallow: /2002/02/mid
+Disallow: /mid/
+Disallow: /2005/06/blog/
+Disallow: /2004/08/W3CTalks
+Disallow: /2007/11/Talks/search
+Disallow: /People/all/
+Disallow: /RDF/Validator/ARPServlet
+Disallow: /2003/03/Translations/byLanguage
+Disallow: /2003/03/Translations/byTechnology
+Disallow: /2005/11/Translations/Query
+Disallow: /2000/06/webdata/xslt
+Disallow: /2000/09/webdata/xslt
+Disallow: /2005/08/online_xslt/xslt
+Disallow: /Bugs/
+Disallow: /Search/Mail/Public/
+Disallow: /2006/02/chartergen
+Disallow: /2004/01/pp-impl
+Disallow: /Consortium/supporters
+Disallow: /2007/08/pyRdfa/
+Disallow: /WAI/PF/comments/
+
diff --git a/test/samples/w3c/txml/test189.txml b/test/samples/w3c/txml/test189.txml
new file mode 100644
index 0000000..cd1cd19
--- /dev/null
+++ b/test/samples/w3c/txml/test189.txml
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<!-- we test that #_internal as a target of <send> puts the event on the internal queue. If it does,
+event1 will be processed before event2, because event1 is added to the internal queue while event2 is
+added to the external queue (event though event2 is generated first) -->
+
+<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance">
+
+
+<state id="s0">
+ <onentry>
+ <!-- goes to the external queue -->
+ <send event="event2"/>
+ <!-- to the internal queue -->
+ <send event="event1" target="#_internal"/>
+ </onentry>
+
+ <!-- once we've entered the state, we should check for internal events first -->
+ <transition event="event1" conf:targetpass=""/>
+ <transition event="event2" conf:targetfail=""/>
+ </state>
+
+ <conf:pass/>
+ <conf:fail/>
+
+</scxml> \ No newline at end of file
diff --git a/test/samples/w3c/txml/test190.txml b/test/samples/w3c/txml/test190.txml
new file mode 100644
index 0000000..e6090eb
--- /dev/null
+++ b/test/samples/w3c/txml/test190.txml
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<!-- we test that #_scxml_sessionid as a target of <send> puts the event on the external queue. If it does,
+event1 will be processed before event2, because event1 is added to the internal queue while event2 is
+added to the external queue (event though event2 is generated first). we have to make sure that event2
+is actually delivered. The delayed <send> makes sure another event is generated (so the test doesn't hang) -->
+
+<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance">
+<datamodel>
+ <data conf:id="1" conf:quoteExpr="#_scxml_"/>
+ <data conf:id="2" conf:systemVarExpr="_sessionid"/>
+ </datamodel>
+
+<state id="s0">
+ <onentry>
+ <conf:concatVars id1="1" id2="2"/>
+ <!-- goes to the external queue -->
+ <send event="event2" conf:targetExpr="1"/>
+ <!-- to the internal queue -->
+ <raise event="event1"/>
+ <!-- this should get added to the external queue after event2 -->
+ <send event="timeout"/>
+ </onentry>
+
+ <!-- once we've entered the state, we should check for internal events first -->
+ <transition event="event1" target="s1"/>
+ <transition event="*" conf:targetfail=""/>
+ </state>
+
+<!-- now check that we get event2 and not a timeout -->
+<state id="s1">
+ <transition event="event2" conf:targetpass=""/>
+ <transition event="*" conf:targetfail=""/>
+ </state>
+
+ <conf:pass/>
+ <conf:fail/>
+
+</scxml> \ No newline at end of file
diff --git a/test/samples/w3c/txml/test191.txml b/test/samples/w3c/txml/test191.txml
new file mode 100644
index 0000000..60b44a9
--- /dev/null
+++ b/test/samples/w3c/txml/test191.txml
@@ -0,0 +1,34 @@
+<?xml version="1.0"?>
+<!-- we test that #_parent works as a target of <send> . a subscript is invoked and sends the event
+childToParent to its parent session (ths session) using #_parent as the target. If we get this event, we
+pass, otherwise we fail. The timer insures that some event is generated and that the test does not hang. -->
+
+<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance">
+
+
+<state id="s0" >
+ <onentry>
+ <send event="timeout" delay="5s"/>
+ </onentry>
+ <invoke type="scxml" >
+ <content>
+ <!-- send an event to the parent session using #_parent as the target -->
+ <scxml initial="sub0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance">
+ <state id="sub0">
+ <onentry>
+ <send event="childToParent" target="#_parent"/>
+ </onentry>
+ <transition target="subFinal"/>
+ </state>
+ <final id="subFinal"/>
+ </scxml>
+ </content>
+ </invoke>
+ <transition event="childToParent" conf:targetpass=""/>
+ <transition event="*" conf:targetpass=""/>
+</state>
+
+ <conf:pass/>
+ <conf:fail/>
+
+</scxml> \ No newline at end of file
diff --git a/test/samples/w3c/txml/test192.txml b/test/samples/w3c/txml/test192.txml
new file mode 100644
index 0000000..7331750
--- /dev/null
+++ b/test/samples/w3c/txml/test192.txml
@@ -0,0 +1,58 @@
+<?xml version="1.0"?>
+<!-- we test that #_invokeid works as a target of <send> . A child script is invoked and sends us
+childToParent once its running. Then we send it the event parentToChild using its invokeid as the target.
+If it receives this event, it sends sends the event eventReceived to its parent session (ths session).
+If we get this event, we pass, otherwise the child script eventually times out sends invoke.done and we fail.
+We also set a timeout in this process to make sure the test doesn't hang -->
+
+<scxml initial="s0" conf:datamodel="" version="1.0" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance">
+
+<state id="s0" initial="s01" >
+ <onentry>
+ <send event="timeout" delay="5s"/>
+ </onentry>
+
+ <invoke type="scxml" id="invokedChild">
+ <content>
+ <!-- let the parent session know we're running by sending childToParent, then wait for parentToChild.
+ If we get it, send eventReceived. If we don't we eventually time out -->
+ <scxml initial="sub0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance">
+
+ <state id="sub0">
+ <onentry>
+ <send event="childToParent" target="#_parent"/>
+ <send event="timeout" delay="3s"/>
+ </onentry>
+
+ <transition event="parentToChild" target="subFinal">
+ <send target="#_parent" event="eventReceived"/>
+ </transition>
+
+ <transition event="timeout" target="subFinal"/>
+ </state>
+
+ <final id="subFinal"/>
+
+ </scxml>
+ </content>
+ </invoke>
+
+ <transition event="timeout" conf:targetfail=""/>
+ <transition event="done.invoke" conf:targetfail=""/>
+
+<state id="s01">
+ <transition event="childToParent" target="s02">
+ <send target="#_invokedChild" event="parentToChild"/>
+ </transition>
+</state>
+
+<state id="s02">
+ <transition event="eventReceived" conf:targetpass=""/>
+ </state>
+
+</state>
+
+ <conf:pass/>
+ <conf:fail/>
+
+</scxml> \ No newline at end of file
diff --git a/test/samples/w3c/txml/test226.txml b/test/samples/w3c/txml/test226.txml
index 843bfdc..0d83070 100644
--- a/test/samples/w3c/txml/test226.txml
+++ b/test/samples/w3c/txml/test226.txml
@@ -13,7 +13,7 @@ success. otherwise it will hang and the timeout in this doc signifies failure.
</onentry>
- <invoke type="http://www.w3.org/TR/scxml/" src="file:test226sub1.txml">
+ <invoke type="http://www.w3.org/TR/scxml/" src="file:test226sub1.scxml">
<param conf:name="1" conf:expr="1"/>
</invoke>
diff --git a/test/samples/w3c/txml/test302.txml b/test/samples/w3c/txml/test302.txml
index f1b99c0..b5ecbae 100644
--- a/test/samples/w3c/txml/test302.txml
+++ b/test/samples/w3c/txml/test302.txml
@@ -4,7 +4,7 @@
Var1. Hence, if script is evaluated at download time, Var1 has a value in the initial state s0.
This test is valid only for datamodels that support scripting -->
-<scxml version="1.0" xmlns="http://www.w3.org/2005/07/scxml"
+<scxml version="1.0" xmlns="http://www.w3.org/2005/07/scxml" conf:datamodel=""
xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0">
<conf:script/>
diff --git a/test/samples/w3c/txml/test303.txml b/test/samples/w3c/txml/test303.txml
index 6fd1e9c..b7fe556 100644
--- a/test/samples/w3c/txml/test303.txml
+++ b/test/samples/w3c/txml/test303.txml
@@ -3,7 +3,8 @@
<!-- to test that scripts are run as part of executable content, we check that it changes the value of a var at the
right point. This test is valid only for datamodels that support scripting -->
-<scxml version="1.0" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0">
+<scxml version="1.0" xmlns="http://www.w3.org/2005/07/scxml"
+ conf:datamodel="" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0">
<datamodel>
<data conf:id="1" conf:expr="0"/>
</datamodel>
diff --git a/test/samples/w3c/txml/test304.txml b/test/samples/w3c/txml/test304.txml
index 9ed6cbb..a165ff8 100644
--- a/test/samples/w3c/txml/test304.txml
+++ b/test/samples/w3c/txml/test304.txml
@@ -2,7 +2,8 @@
<!-- test that a variable declared by a script can be accessed like any other part of the data model -->
-<scxml xmlns="http://www.w3.org/2005/07/scxml" version="1.0" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0">
+<scxml xmlns="http://www.w3.org/2005/07/scxml" conf:datamodel=""
+ version="1.0" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0">
<conf:script/>
<state id="s0">
diff --git a/test/samples/w3c/txml/test321.txml b/test/samples/w3c/txml/test321.txml
index 74da9c3..9cd6b02 100644
--- a/test/samples/w3c/txml/test321.txml
+++ b/test/samples/w3c/txml/test321.txml
@@ -4,7 +4,7 @@
<scxml initial="s0" conf:datamodel="" version="1.0" xmlns="http://www.w3.org/2005/07/scxml" name="machineName" xmlns:conf="http://www.w3.org/2005/scxml-conformance">
<datamodel>
- <data conf:id="1" conf:expr="$_sessionid"/>
+ <data conf:id="1" conf:systemVarExpr="_sessionid"/>
</datamodel>
<state id="s0">
diff --git a/test/samples/w3c/txml/test323.txml b/test/samples/w3c/txml/test323.txml
index afd3400..a16333c 100644
--- a/test/samples/w3c/txml/test323.txml
+++ b/test/samples/w3c/txml/test323.txml
@@ -4,7 +4,7 @@
<scxml initial="s0" version="1.0" xmlns="http://www.w3.org/2005/07/scxml" conf:datamodel="" name="machineName" xmlns:conf="http://www.w3.org/2005/scxml-conformance">
<datamodel>
- <data conf:id="1" conf:expr="$_name"/>
+ <data conf:id="1" conf:systemVarExpr="_name"/>
</datamodel>
<state id="s0">
diff --git a/test/samples/w3c/txml/test347.txml b/test/samples/w3c/txml/test347.txml
new file mode 100644
index 0000000..4a87324
--- /dev/null
+++ b/test/samples/w3c/txml/test347.txml
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+
+<!-- test that the scxml event I/O processor works by sending events back and forth between an invoked child
+and its parent process -->
+
+<scxml initial="s0" conf:datamodel="" version="1.0" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance">
+
+
+<state id="s0" initial="s01">
+ <invoke id="child" type="scxml" >
+ <content>
+ <scxml initial="sub0" version="1.0" conf:datamodel="" name="machineName" xmlns:conf="http://www.w3.org/2005/scxml-conformance">
+ <state id="sub0">
+ <onentry>
+ <send type="http://www.w3.org/TR/scxml/#SCXMLEventProcessor" target="#_parent" event="childToParent"/>
+ </onentry>
+ <transition event="parentToChild" target="subFinal"/>
+ </state>
+ <final id="subFinal"/>
+ </scxml>
+ </content>
+ </invoke>
+ <onentry>
+ <send delay="20s" event="timeout"/>
+ </onentry>
+ <transition event="timeout" conf:targetfail=""/>
+
+ <state id="s01">
+ <transition event="childToParent" target="s02"/>
+ </state>
+
+ <state id="s02">
+ <onentry>
+ <send type="http://www.w3.org/TR/scxml/#SCXMLEventProcessor" target="#_child" event="parentToChild"/>
+ </onentry>
+ <transition event="done.invoke" conf:targetpass=""/>
+ <transition event="error" conf:targetfail=""/>
+ </state>
+</state>
+
+ <conf:pass/>
+ <conf:fail/>
+
+</scxml> \ No newline at end of file
diff --git a/test/samples/w3c/txml/test348.txml b/test/samples/w3c/txml/test348.txml
new file mode 100644
index 0000000..c633a74
--- /dev/null
+++ b/test/samples/w3c/txml/test348.txml
@@ -0,0 +1,20 @@
+<?xml version="1.0"?>
+
+<scxml initial="s0" conf:datamodel="" version="1.0" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance">
+
+ <!-- test that event param of send sets the name of the event -->
+
+<state id="s0">
+
+ <onentry>
+ <send type="http://www.w3.org/TR/scxml/#SCXMLEventProcessor" event="s0Event"/>
+ </onentry>
+ <transition event="s0Event" conf:targetpass=""/>
+ <transition event="*" conf:targetfail=""/>
+
+</state>
+
+ <conf:pass/>
+ <conf:fail/>
+
+</scxml> \ No newline at end of file
diff --git a/test/samples/w3c/txml/test349.txml b/test/samples/w3c/txml/test349.txml
new file mode 100644
index 0000000..6b1fff1
--- /dev/null
+++ b/test/samples/w3c/txml/test349.txml
@@ -0,0 +1,33 @@
+<?xml version="1.0"?>
+
+<!-- test that value in origin field can be used to send an event back to the sender -->
+
+<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance">
+<datamodel>
+ <data conf:id="1"/>
+ </datamodel>
+
+<state id="s0">
+
+ <onentry>
+ <send type="http://www.w3.org/TR/scxml/#SCXMLEventProcessor" event="s0Event"/>
+ </onentry>
+ <transition event="s0Event" target="s2">
+ <assign conf:location="1" conf:eventField="origin"/>
+ </transition>
+ <transition event="*" conf:targetfail=""/>
+
+</state>
+
+<state id="s2">
+ <onentry>
+ <send type="http://www.w3.org/TR/scxml/#SCXMLEventProcessor" conf:targetVar="1" event="s0Event2"/>
+ </onentry>
+ <transition event="s0Event2" conf:targetpass=""/>
+ <transition event="*" conf:targetfail=""/>
+</state>
+
+ <conf:pass/>
+ <conf:fail/>
+
+</scxml> \ No newline at end of file
diff --git a/test/samples/w3c/txml/test350.txml b/test/samples/w3c/txml/test350.txml
new file mode 100644
index 0000000..b57e881
--- /dev/null
+++ b/test/samples/w3c/txml/test350.txml
@@ -0,0 +1,26 @@
+<?xml version="1.0"?>
+
+<!-- test that target value is used to decide what session to deliver the event to. A session should be
+able to send an event to itself using its own session ID as the target -->
+
+<scxml initial="s0" conf:datamodel="" version="1.0" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance">
+<datamodel>
+ <data conf:id="1" conf:expr="'#_scxml_' + _sessionid"/>
+ </datamodel>
+
+<state id="s0">
+
+ <onentry>
+ <send delay="5s" event="timeout"/>
+ <send type="http://www.w3.org/TR/scxml/#SCXMLEventProcessor" conf:targetVar="1" event="s0Event"/>
+ </onentry>
+ <transition event="s0Event" conf:targetpass=""/>
+ <transition event="*" conf:targetfail=""/>
+
+</state>
+
+
+ <conf:pass/>
+ <conf:fail/>
+
+</scxml> \ No newline at end of file
diff --git a/test/samples/w3c/txml/test351.txml b/test/samples/w3c/txml/test351.txml
new file mode 100644
index 0000000..de3bfcc
--- /dev/null
+++ b/test/samples/w3c/txml/test351.txml
@@ -0,0 +1,52 @@
+<?xml version="1.0"?>
+
+<!-- test that sendid is set in event if present in send, blank otherwise -->
+
+<scxml initial="s0" conf:datamodel="" version="1.0" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance">
+<datamodel>
+ <data conf:id="1"/>
+ <data conf:id="2"/>
+ </datamodel>
+
+
+<state id="s0">
+
+ <onentry>
+ <send delay="5s" event="timeout"/>
+ <send type="http://www.w3.org/TR/scxml/#SCXMLEventProcessor" id="send1" event="s0Event"/>
+ </onentry>
+ <transition event="s0Event" target="s1">
+ <assign conf:location="1" conf:eventField="sendid"/>
+ </transition>
+ <transition event="*" conf:targetfail="">
+ </transition>
+
+</state>
+
+<state id="s1">
+ <transition conf:idQuoteVal="1=send1" target="s2"/>
+ <transition conf:targetfail=""/>
+ </state>
+
+<state id="s2">
+
+ <onentry>
+ <send delay="5s" event="timeout"/>
+ <send event="s0Event2"/>
+ </onentry>
+ <transition event="s0Event2" target="s3">
+ <assign conf:location="2" conf:eventField="sendid"/>
+ </transition>
+ <transition event="*" conf:targetfail=""/>
+</state>
+
+<state id="s3">
+ <transition conf:noValue="2" conf:targetpass=""/>
+ <transition conf:targetfail=""/>
+ </state>
+
+
+ <conf:pass/>
+ <conf:fail/>
+
+</scxml> \ No newline at end of file
diff --git a/test/samples/w3c/txml/test352.txml b/test/samples/w3c/txml/test352.txml
new file mode 100644
index 0000000..448a21e
--- /dev/null
+++ b/test/samples/w3c/txml/test352.txml
@@ -0,0 +1,32 @@
+<?xml version="1.0"?>
+
+<!-- test the origintype is 'http://www.w3.org/TR/scxml/#SCXMLEventProcessor' -->
+<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance">
+<datamodel>
+ <data conf:id="1"/>
+ </datamodel>
+
+
+<state id="s0">
+ <onentry>
+ <send delay="5s" event="timeout"/>
+ <send type="http://www.w3.org/TR/scxml/#SCXMLEventProcessor" event="s0Event"/>
+ </onentry>
+ <transition event="s0Event" target="s1">
+ <assign conf:location="1" conf:eventField="origintype"/>
+ </transition>
+ <transition event="*" conf:targetfail="">
+ </transition>
+
+</state>
+
+<state id="s1">
+ <transition conf:idQuoteVal="1=http://www.w3.org/TR/scxml/#SCXMLEventProcessor" conf:targetpass=""/>
+ <transition conf:targetfail=""/>
+ </state>
+
+
+ <conf:pass/>
+ <conf:fail/>
+
+</scxml> \ No newline at end of file
diff --git a/test/samples/w3c/txml/test441a.txml b/test/samples/w3c/txml/test441a.txml
deleted file mode 100644
index 9e290a8..0000000
--- a/test/samples/w3c/txml/test441a.txml
+++ /dev/null
@@ -1,47 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<scxml xmlns="http://www.w3.org/2005/07/scxml" datamodel="null"
-xmlns:conf="http://www.w3.org/2005/scxml-conformance" version="1.0" exmode="lax" initial="s01">
-
-<!-- since exmode=lax, the processor should ignore all datamodel elements and complete without an error -->
-<datamodel>
- <data conf:id="1" conf:expr="1"/>
- </datamodel>
-
-<state id="s0">
- <onentry>
- <assign location="foo" expr="2"/>
- <script>
- x = y
- </script>
- <foreach array="baz" item="bat">
- <log expr="this is a mistake"/>
- </foreach>
- </onentry>
-
- <state id="s01" initial="s01final">
- <final id="s01final">
- <donedata>
- <param name="result" expr="foo"/>
- </donedata>
- </final>
- </state>
-
- <transition conf:idVal="1=1" conf:targetfail=""/>
- <transition event="error" conf:targetfail=""/>
- <transition event="done" target="s1"/>
- </state>
-
-<state id="s1">
- <onentry>
- <raise event="noerror"/>
- </onentry>
- <transition event="error" conf:targetfail=""/>
- <transition event="noerror" conf:targetpass=""/>
- </state>
-
-<conf:pass/>
-<conf:fail/>
-
-
-</scxml> \ No newline at end of file
diff --git a/test/samples/w3c/txml/test441b.txml b/test/samples/w3c/txml/test441b.txml
deleted file mode 100644
index a318b9b..0000000
--- a/test/samples/w3c/txml/test441b.txml
+++ /dev/null
@@ -1,47 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<scxml xmlns="http://www.w3.org/2005/07/scxml" datamodel="null"
-xmlns:conf="http://www.w3.org/2005/scxml-conformance" version="1.0" exmode="strict" initial="s01">
-
-<!-- since exmode=strict, the processor should reject this document. Therefore this is a manual test -->
-<datamodel>
- <data conf:id="1" conf:expr="1"/>
- </datamodel>
-
-<state id="s0">
- <onentry>
- <assign location="foo" expr="2"/>
- <script>
- x = y
- </script>
- <foreach array="baz" item="bat">
- <log expr="this is a mistake"/>
- </foreach>
- </onentry>
-
-
- <state id="s01" initial="s01final">
- <final id="s01final">
- <donedata>
- <param name="result" expr="foo"/>
- </donedata>
- </final>
- </state>
-
- <transition conf:targetfail=""/>
-
- </state>
-
-<state id="s1">
- <onentry>
- <raise event="noerror"/>
- </onentry>
- <transition event="error" conf:targetfail=""/>
- <transition event="noerror" conf:targetpass=""/>
- </state>
-
-<conf:pass/>
-<conf:fail/>
-
-
-</scxml> \ No newline at end of file
diff --git a/test/samples/w3c/txml/test456.txml b/test/samples/w3c/txml/test456.txml
index 50734d7..e1365e0 100644
--- a/test/samples/w3c/txml/test456.txml
+++ b/test/samples/w3c/txml/test456.txml
@@ -4,7 +4,7 @@ just run a simple one and check that it can update the data model. -->
<scxml initial="s0" version="1.0" datamodel="ecmascript" xmlns="http://www.w3.org/2005/07/scxml"
xmlns:conf="http://www.w3.org/2005/scxml-conformance">
<datamodel>
- <data conf:id="1"/>
+ <data conf:id="1" conf:expr="0"/>
</datamodel>
<state id="s0">
diff --git a/test/samples/w3c/txml/test486b.txml b/test/samples/w3c/txml/test486b.txml
deleted file mode 100644
index bac9748..0000000
--- a/test/samples/w3c/txml/test486b.txml
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0"?>
- <!-- test that <script> is processed according to 'exmode'. In this
- case, the entire file should be rejected (hence this is a manual test -->
-
- <scxml xmlns="http://www.w3.org/2005/07/scxml" name="scxmltest" exmode="strict"
- xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="xpath">
- <script>some script</script>
-
-<state id="s0">
-
- <transition conf:targetfail=""/>
-
- </state>
-
-<conf:pass/>
-<conf:fail/>
-
-</scxml> \ No newline at end of file
diff --git a/test/samples/w3c/txml/test495.txml b/test/samples/w3c/txml/test495.txml
new file mode 100644
index 0000000..a2cf76c5
--- /dev/null
+++ b/test/samples/w3c/txml/test495.txml
@@ -0,0 +1,26 @@
+<?xml version="1.0"?>
+<!-- test that the scxml event i/o processor puts events in the correct queues.-->
+
+<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance">
+
+
+<state id="s0">
+ <onentry>
+ <!-- default target is external queue -->
+ <send event="event1" type="http://www.w3.org/TR/scxml/#SCXMLEventProcessor"/>
+ <send event="event2" target="#_internal" type="http://www.w3.org/TR/scxml/#SCXMLEventProcessor"/>
+ </onentry>
+ <!-- we should get the internal event first -->
+ <transition event="event1" conf:targetfail=""/>
+ <transition event="event2" target="s1"/>
+ </state>
+
+<state id="s1">
+ <transition event="event1" conf:targetpass=""/>
+ <transition event="*" conf:targetfail=""/>
+ </state>
+
+ <conf:pass/>
+ <conf:fail/>
+
+</scxml> \ No newline at end of file
diff --git a/test/samples/w3c/txml/test500.txml b/test/samples/w3c/txml/test500.txml
new file mode 100644
index 0000000..21ed2ff
--- /dev/null
+++ b/test/samples/w3c/txml/test500.txml
@@ -0,0 +1,19 @@
+<?xml version="1.0"?>
+
+<!-- test that location field is found inside entry for SCXML Event I/O processor -->
+
+<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance">
+<datamodel>
+ <data conf:id="1" conf:scxmlEventIOLocation=""/>
+ </datamodel>
+
+<state id="s0">
+ <transition conf:isBound="1" conf:targetpass=""/>
+ <transition conf:targetfail=""/>
+
+ </state>
+
+ <conf:pass/>
+ <conf:fail/>
+
+</scxml> \ No newline at end of file
diff --git a/test/samples/w3c/txml/test501.txml b/test/samples/w3c/txml/test501.txml
new file mode 100644
index 0000000..772edc8
--- /dev/null
+++ b/test/samples/w3c/txml/test501.txml
@@ -0,0 +1,23 @@
+<?xml version="1.0"?>
+
+<!-- test that the location entry for the SCXML Event I/O processor can be used as the target for an event -->
+
+<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance">
+<datamodel>
+ <data conf:id="1" conf:scxmlEventIOLocation=""/>
+ </datamodel>
+
+<state id="s0">
+ <onentry>
+ <send conf:targetVar="1" event="foo"/>
+ <send event="timeout" delay="2s"/>
+ </onentry>
+ <transition event="foo" conf:targetpass=""/>
+ <transition event="*" conf:targetfail=""/>
+
+ </state>
+
+ <conf:pass/>
+ <conf:fail/>
+
+</scxml> \ No newline at end of file
diff --git a/test/samples/w3c/txml/test578.txml b/test/samples/w3c/txml/test578.txml
new file mode 100644
index 0000000..a4de932
--- /dev/null
+++ b/test/samples/w3c/txml/test578.txml
@@ -0,0 +1,24 @@
+<?xml version="1.0"?>
+ <!-- in the ECMA data model, test that processor creates an ECMAScript object
+ _event.data when receiving JSON in an event -->
+
+ <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">
+
+
+<state id="s0">
+ <onentry>
+ <send event="foo">
+ <content>{ productName : "bar", size : 27 }</content>
+ </send>
+ </onentry>
+ <transition event="foo" cond="_event.data.productName == 'bar'"
+ conf:targetpass=""/>
+ <transition event="*" conf:targetfail=""/>
+ </state>
+
+
+<conf:pass/>
+<conf:fail/>
+
+</scxml> \ No newline at end of file