Process model format

Use the node type Process Model to create process models manually.

A process model is represented as a JSON document.

"process": {
"reference": "processRef",
"name": "Process Name",
"properties": { .. process properties ..}
"roles": [
"reference": "roleRef",
"name": "Role Name",
"properties": { .. role properties ..}
}, .. more roles ..
"steps": [
"reference": "stepRef",
"name": "Step Name",
"roleReference": "ref",
"stepClass": "step|choice|start|intermediate|end|entity",
"properties": { .. step properties .. },
"flows": [
"reference": "flowRef",
"name": "Flow Name",
"toReference": "stepReference",
"properties": { .. flow properties .. }
}, .. more flows ..
}, .. more steps ..

The top-level object contains three objects.

process Provides a reference, name and properties for the overall process. This is optional. The process reference defaults to "process", and the name to the same as the reference.
roles Provides a list of roles included in the process. Each has a reference, name and properties.

A list of steps, which are the actions and other entities on the process model.

Each step has a reference, name and properties. It has an optional role reference which indicates what role carries out this process. It also has an optional stepClass which indicates whether this is an executable step or another type of entity. This defaults to "step".

Each step also contains a list of flows, which represent outgoing flows from this step. The flows might be execution flows, status rules, or references to other entities such as data areas. Each flow has an optional reference, name and properties, plus a toReference property which gives the reference of the step to which the flow is connected.

A process model must conform to the following:

  • Each role must have a reference
  • Each stepReference must be unique.
  • Each flow must have a toReference which matches the reference of a step.
  • Within a step, all the flows which give a reference must have different reference.