如何根据https://www.w3.org/TR/scxml/#LegalStateConfigurations定义“合法状态配置”。我想指定目标集(!),而不是单个目标。可以在initial
和<scxml>
元素的<state>
属性内以及target
元素的<transition>
属性中定义目标集。但我似乎无法在上述属性中找到任何一个以上状态的符号示例。它们必须是空间分隔的吗?或者根据JavaScript的数组表示法?或对象表示法?还是以逗号分隔?
感谢任何提示。
但无论如何我想知道,我在标准中错过了什么,以确保独立于翻译。
这是一个小测试代码:
<scxml xmlns="http://www.w3.org/2005/07/scxml" version="1.0">
<initial>
<transition target="State_3_2 State_4_2" />
</initial>
<parallel id="Parallel_1">
<history id="hist" type="deep">
<transition target="State_1_2 State_2_2" />
</history>
<state id="State_1">
<state id="State_1_1" />
<state id="State_1_2" />
</state>
<state id="State_2">
<state id="State_2_1" />
<state id="State_2_2" />
</state>
</parallel>
<parallel id="Parallel_2">
<transition target="hist" event="switch_hist" />
<state id="State_3">
<state id="State_3_1" />
<state id="State_3_2" />
</state>
<state id="State_4">
<state id="State_4_1" />
<state id="State_4_2" />
</state>
</parallel>
</scxml>
要测试:在输入时,状态State_3_2
和State_4_2
必须处于活动状态(initial
元素正确执行),在事件switch_hist
之后,状态State_1_2
并且State_2_2
必须处于活动状态(transition
属性正确执行)。
如果有人拥有除SCION之外的其他翻译,你能在那里测试一下吗?
另外的语法是将前4行替换为
<scxml xmlns="http://www.w3.org/2005/07/scxml" version="1.0" initial="State_3_2 State_4_2">
谢谢。