En esta página

Conformidad con SCXML

Modelos de datos compatibles

Qt SCXML admite los siguientes modelos de datos:

Elementos y atributos compatibles

La implementación de Qt SCXML es compatible con SCXML, con algunas excepciones:

  • Los datos de eventos (_event.data) se implementan como un QVariant. Si se pasan parámetros a <send>, el QVariant contiene un QVariantMap, por lo que no se admiten múltiples parámetros con el mismo nombre.
  • No existe una representación "en bruto" de un evento.
  • No se admite el procesador básico de E/S de eventos http (opcional).
  • El contenido de una etiqueta <script> y de una etiqueta <data> debe ser válido para el modelo de datos elegido. Así, a modo de ejemplo El contenido XML dentro de <data> no es compatible. Sin embargo, el modelo de datos ECMAScript sí admite datos en formato JSON.
  • El único servicio que puede instanciarse con <invoke> es otra máquina de estado SCXML.
  • Para que el comportamiento de las máquinas de estado creadas dinámicamente y las máquinas de estado compiladas sea el mismo, no se admiten los atributos typeexpr y srcexpr. Además, si se utiliza una etiqueta <content> dentro de una etiqueta <invoke>, ese contenido debe ser XML. En concreto, no se admite la creación dinámica de SCXML, por ejemplo concatenando cadenas con el modelo de datos ECMAScript.

Qt SCXML Extensiones

La implementación de Qt SCXML amplía SCXML de las siguientes maneras:

  • Si el evento es un evento de error, _event.errorMessage contendrá una descripción más detallada del error.

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.