The configurable modifier actions file defines an action
configuration containing a set of actions to be performed if the associated
set of trigger conditions, as defined in the configurable modifier
triggers file, is satisfied.
You create a separate actions file for each action
configuration.
The configurable modifier actions file has the
following structure:
<action-configuration name=action_configuration_name>
... action definitions ...
</action-configuration>
The action-configuration element has the following attribute:
- name
- The name of the action configuration.
Within the action-configuration element, you
specify subelements that define the actions to be performed. There
are separate subelements for each of the following types of action:
- Creating an object.
- Updating one or more objects.
- Deleting one or more objects.
- Making one or more objects governable.
- Applying a state transition to one or more objects.
- Removing governance from one or more objects.
- Creating a subscription object.
Descriptions of these subelements, and an example actions file,
are provided in the following subtopics (you must specify at least
one of these subelements; they can be in any order, and will run in
the order you specify).
Note: Configurable triggers and actions
are extremely flexible, and it is possible to design actions which
result in a cyclic loop. For example:
a modifier trigger is created which fires when a particular property
field is updated to a specified value on an object. The triggered
action is to create a new object and relate it back to the original
object. Creating the new relationship requires updating the original
object again. The property field value of the original object has
not changed, and so the modifier trigger is fired again, resulting
in an unhelpful loop being set up. This is only one example; there
are many possible configurations that might inadvertently activate
a trigger that you do not want to be activated. This sort of behaviour
can be avoided by remembering that any of the triggers can discriminate
by properties, classifications and relationships, including both source
and target objects of a relationship. You must ensure that these trigger
criteria are sufficiently restrictive.