Status Machine Server uses the following concepts.
Almost all configuration of flows is done in database tables. The important columns of tables are described below.
flowid: The name identifying the flow.flow_statusname: The name of the status, must be unique for all status belonging to the same flow.flow_id: References the flow the status belongs to.default_value_id: References the value that is the default value of the status. Optionalparent_id: References the parent status for a derived status.is_primary: ???simple_list: If this is true, no transitions have to be configured for this status. All of its values can mutually reach each other. Transitions rules can change this.status_valuestatus_id: References the status the value belongs to.value: The name of the value.position: Position of this value among all other values belonging to the same status.final: If this is true, the value is a final value of the status. There should be no transition away from this value.roleid: The name identifying the role.status_transitionold_status_id: References the value from which the transition is allowed.new_status_id: References the value to which the transition is allowed.role_id: The role for which the transition is allowed.status_transition_ruleimplementation: The Java class implementing this rule. Existing implementations are de.ecm4u.sbcs.sm.core.rule.StaticRule and de.ecm4u.sbcs.sm.core.rule.NashornRule. (see Status Transition Static Rules and Status Transition Rule Scripts)method: Specifies where to look for the body of the rule implementation. Can be inline or url.value: The implementation of the rule or a file URL to it.status_value_id: References the value for which the rule is applied after the transitions have been read from the status_transition table.position: Position of this rule among all other rules belonging to the same value.terminate: true, if no other rule shall be executed after this rule.derived_status_valueparent_value_id: References a value in the status that is the parent of a derived status.status_value_id: References a value in the derived status.labelid: A raw name, can be a flow, status, or value name.locale: The locale for which the name has the translation given in text.text: The translation to locale for the name.