Option and binding naming conventions

Binding references

Binding references should use the script references for nodes, described in Naming conventions. Specifically:

  • Form references should begin with "form", so the node "Enquiry Form" might use the binding "formEnquiry".
  • Script references should begin with "script".

Options

Options are defined using properties within a component-level object, such as:

{
"myComponent": {
"myProperty": "My value",
... more properties ...
}
}

These are referenced in processes and status rules using syntax such as "${myComponent.myProperty}".

Generally there will be a configuration object per component. However, some components might add to or override the configuration of other components.

The configuration object names and individual property names should use lowerCamelCase.

Placeholder overrides use deep merge logic, not simple replacement, which means the values from previously-defined objects will not be removed, but must be replaced (e.g. with null). Some care is required to design overrides for objects such that they do as intended.

Form and script references

Although form and script bindings are not set in the process, they often apply to only the process and are therefore resolved in the immediately surrounding component. A typical form placeholder option would be something like this.

{
"enquiry": {
"form": "${form:formEnquiry}"
}
}