Assign instantiable classes per workspace
- Last updated on July 19, 2022 at 12:36 PM
Reading time : 2 min.
Although users can be organized by groups, and assigned fine-tuned access rights to workspaces, they are allowed to create instances of any classes of the model in any workspaces they have edit rights on.
A feature introduced in ITM 7.8.0 allows the administrator to restrict classes that users can instantiate in a given workspace.
Note that :
- if nothing is configured for a given workspace, ITM allows all classes to be instantiated in that workspace
- classes that are explicitely declared as abstract in the data model, cannot be made instantiable with this mechanism
Define instantiable classes for a workspace
With the administration menu, go to the “Manage workspaces” screen. You will see :
- the current organization of the all workspaces
- available actions related to workspace management
Click on the “Assign instantiable classes” button :
On the left you will find the current organization of the workspaces.
- Click on the workspace for which you want to configure instantiable classes
On the right you will find :
- the name of the workspace you’re configuring the classes for
- the hierarchy of classes defined in the data model (both your client model and ITM’s base model), presented in Miller Columns. Green badges with an ‘a’ show classes that are flagged as abstract in the data model.
- a dropdown widget that enables to preview the result of the current configuration, as a list of instantiable classes
In order to configure a class and its subclasses to be instantiable for the selected workspace, browse through the classes hierarchy to the desired class, and check the box.
You will see that :
- checking a class automatically checks its subclasses : the subclasses are highlighted in yellow, and cannot be manually checked
- abstract classes can be checked. As mentioned in the introduction for this feature, classes declared as abstract in the data model cannot be made instantiable with this configuration, but checking them enables to configure their subclasses to be instantiable (except for abstract subclasses, of course)
You can click on the refresh button of the preview widget to see the impact of your configuration.
The preview shows the list of classes, as it would be displayed in the Add Topics UI, for that workspace.
When you are done configuring the instantiable classes for the workspace, and want the configuration to be applied for all users connected to that workspace :
- connect to the workspace that you configured
- go to the Administration panel, and reload the ontology in memory for that workspace
Impacts in ITM
You should now see in Add Topics the same list of classes as the one you configured in “Assign instantiable classes”.
Similarly, when viewing a centered topic, if its class has not been configured as an instantiable class, then you will not be able to access the action “New instance <className>”