Generic human roles define what a person or a group of people resulting from a people query can do with tasks and notifications. The permissions on task operations are based on the generic human role(s) a specific individual belongs to. The following generic human roles are taken into in Human Task specification:
A task initiator is the person who creates the task instance.
The task stakeholders are the people ultimately responsible for the oversight and outcome of the task instance. A task stakeholder can influence the progress of a task, for example, by adding ad-hoc attachments, forwarding the task, or simply observing the state changes of the task.
Potential owners of a task are persons who receive the task so that they can claim and complete it. A potential owner becomes the actual owner of a task by explicitly claiming it. Before the task has been claimed, potential owners can influence the progress of the task, for example by changing the priority of the task, adding ad-hoc attachments or comments
An actual owner of a task is the person actually performing the task. When task is performed, the actual owner can execute actions, such as revoking the claim, forwarding the task, suspending and resuming the task execution or changing the priority of the task.
Business administrators play the same role as task stakeholders but at task definition level. Therefore, business administrators can perform the exact same operations as task stakeholders. Business administrators can also observe the progress of notifications.
Notification recipients are persons who receive the notification, such as happens when a deadline is missed or when a milestone is reached. This role is similar to the roles potential owners and actual owner but has different repercussions because a notification recipient does not have to perform any action and hence it is more of informational nature than participation. A notification has one or more recipients
The WSO2 BPS 3.1.0 supports people assignments for generic human roles via the concept of logical people groups with role names. A logical people groups can be defined as a top level element in a human task definition. In WSO2 BPS 3.1.0 , Carbon role name is used to resolve people query for a particular role. For an example a logical people group could be defined as follows:
<htd:logicalPeopleGroups> <htd:logicalPeopleGroup name="regionalClerks"> <htd:documentation xml:lang="en-US"> The group of clerks responsible for the region specified. </htd:documentation> <htd:parameter name="role" type="xsd:string"/> </htd:logicalPeopleGroup> </htd:logicalPeopleGroups>
The parameter role will be used to assign the role name inside the task definition
Once the logical people groups are defined, we can use that particular logical people group for people assignments in the task definition. Refer the following segment for an example :
<htd:peopleAssignments> <htd:potentialOwners> <htd:from logicalPeopleGroup="regionalClerks"> <htd:argument name="role"> regionalClerksRole </htd:argument> </htd:from> </htd:potentialOwners> </htd:peopleAssignments>
The above example shows how people assignment is done for the Potential Owners role in the task definition. For the argument role we provide the value regionalClerksRole. In the HumanTask runtime we would evaluate this role for it's people and the people associated to that role at evaluation time would be qualified to act as potential owners of the particular task.
Presentation elements define the human readable information about a task. For example, a user queries for her tasks, getting a list of tasks she could work on, displaying a short description of each task. Upon selection of one of the tasks, more complete information about the task is displayed by the user interface.
Types of presentation elements:
Presentation Parameters
Presentation Parameters are a special set of parameters used in presentation elements subject and description.
When a presentationParameter is used within subject and description, the syntax is {$parameterName}.
The Human Task runtime will automatically evaluate the presentation parameter and replace
the occurrences with the actual value(s).