A Relation (Connection), describes the relationship between one activity and another.
The following type of relations exists:
- Condition / #Milestone
- Response / No-response
- Include –
A condition and milestone are similar relations and are explained below.
The Condition creates a relation between an activity A and an activity B such that B can only occur if first A has occured. Activity B could for instance be “Prescribe medicin”. For that to happen a medical examination has to take place, which could be activity A.
The Milestone connection creates a relation between an activity A and an activity B such that B can occur initially. But if A becomes pending for a response connection by another activity C, then B cannot occur until A has ocurred.
A Milestone is simular to a Condition. A condition refers to first time execution of an event whereas a milestone refers to future executions of an event, i.e. block if the previous event has become pending again.
Activity B could for instance be “Prescribe medicine” which normally happens after activity D, “Medical examination”. But C, “further examination needed” becomes activated in stead, then A, “2nd medical examination” has to happen before any medicin can be perscribed (activity B).
The Response connection creates a relation between an activity A and an activity B such that B has to occur, at least once, at some point after, if A occurs. B can occur even if A never occurs. But if A, then B. If activity A is a broken leg then an examination (Activity B) must take place at least once.
The No-response connection creates a relation between an activity A and an activity B such that B does not have to occur, if A occurs. B can occur even if A never occurs. A no-response removes the pending state of an activity and is the opposite of a response..
The Include connection creates a relation between an activity A and an activity B such that the occurrence of activity A makes possible the occurrence of activity B if it wasn’t previously included in the workflow. Activity B could be a “Perform medical procedure” which has been previously rejected by a physician. Activity A could be an approval from a physician with more seniority than the one that first rejected the medical procedure.
The Exclude connection creates a relation between an activity A and an activity B such that B cannot occur if first A has occured. Activity A could for instance be “Reject medical procedure” and B “Perform medical procedure”. The exclusion can be cancelled out if an activity with an include connection to B occurs.
The Spawn connection creates a relation between an activity A and a subactivity B such that, when A occurs, a new instance of B is created. Activity B could for instance be “Meeting” and A be “Create meeting” as is depicted in Fig. 2.
Connection/Relations can guarded by writing an expression
When guarding a connection/relation, the expression found in the guard will be evaluated and if true, the connection/relation will be considered part of the graph.
In the above example, if the value of the event NL_Conditions is 1 then the activity Betingelser will be included in the graph.
Expressions are formally described at this link. Right now constacts can be integers, numbers, true or false, null or a string value.
Guards are mostly used in DCR Forms as forms have data attributes associated with activities/events.
The graph holds an example DCR Form where a decision event holds a guard from the decision to an explanation field. If the decision is Yes (1), the explanation event/field is included in the form:
Notice the [ and ] around the guard.
When choosing Yes in decision the extra field is included as illustrated below:
Read more about time in DCR 2.0.
To create a relation from one element to another follow these steps:
- Select an Activity by left click on it, it’s border will turn to blue this indicates as a source element from which connection will be made
- Now right click on other Activity or Process and the menu below will be shown, click on required relation or available relation option and a relation will be made from the selected item to this item