28.3. Accessing more functionality on role instances

In the above we have seen how to edit a thing role’s properties or how to navigate to a context. But we have more things to do with role instances, such as putting it on the clipboard.

28.3.1. The clipboard

As copying a role is a very common action, we make it available by tap-hold.

Once on the clipboard, the user can remove it by sliding it from right to left. This will reveal a (red) remove button. Notice that this removes the role from the clipboard; not from its context! The user selects a role on the clipboard by tapping it. Tapping outside a role will deselect the currently selected role. The selected role can be pasted into another existing role instance in order to fill it. It can, in some circumstances, also be used to create and fill a new role instance.

28.3.2. Removing a role, filling it, etc.

In order to execute actions like removing a role or filling it, the end user has to open a menu on the applicable role instance by swiping from right to left over it. This will slide in from the right a context menu showing two or three buttons. The rightmost of these will show an ellipsis icon (three dots). Tapping that will bring up the full context menu from the bottom.

Items on the role context menu depend partly on the kind of role. The full list of actions is:

  • Remove the role

  • Remove the role and the context that fills it (just for contextroles)

  • Remove the filler of the role

  • Fill the role with the selected role on the clipboard

  • Open the context of the filler (also possible with double-tap)

  • Open the form to edit the contextrole properties (just for contextroles).

28.3.3. Adding a role or context instance

If the users perspective on a role allows it, the panel header displays a small icon on the right side (e.g. a plus sign). Tapping that icon will create a new role instance. In case of a context role, there may be multiple types of contexts that can be created. The end user chooses one of them on a panel that will slide in from the bottom.


1. If no authoring role is provided by the API caller, we take it to be the System User.