SCXML 合规性¶
描述Qt SCXML实现与SCXML规范的符合情况。
支持的数据模型¶
Qt SCXML 支持以下数据模型:
空数据模型,如SCXML 规范 - B.1 空数据模型中所述
ECMAScript 数据模型,如 SCXML 规范 - B.2 ECMAScript 数据模型 中所述
C++ 数据模型,如
QScxmlCppDataModel文档中所述
支持的元素和属性¶
Qt SCXML 实现符合 SCXML 标准,但有一些例外情况:
事件数据 (
_event.data) 被实现为 QVariant。如果参数传递给,QVariant 将持有 QVariantMap,因此不支持具有相同名称的多个参数。事件没有“原始”表示。
不支持(可选的)基本HTTP事件I/O处理器。
唯一可以使用
实例化的服务是另一个SCXML状态机。为了保持动态创建的状态机和编译的状态机的行为一致,不支持typeexpr和srcexpr属性。此外,如果在
标签内使用标签,则该内容必须是XML。具体来说,不支持动态创建SCXML,例如通过将字符串与ECMAScript数据模型连接起来。
Qt SCXML 扩展¶
Qt SCXML 实现在以下方面扩展了 SCXML:
如果事件是错误事件,
_event.errorMessage将包含错误的更详细描述。