Entity types, i.e. Experiment/Collection, Object and Dataset types, as well as Property types and Controlled Vocabularies constitute the openBIS masterdata. They can be created by someone with Instance admin role in the new Admin openBIS UI.
The new Admin openBIS UI can be accessed via a URL of this type: https://openbis-xxx/openbis/webapp/openbis-ng-ui/
where openbis-xxx is the name of the server specified in the openBIS configuration file, during the installation by a system admin.
Register a new Object Type
- Select Types -> Object Types from the menu.
- Click Add at the bottom of the page.
3. Enter a Code. E.g. INSTRUMENT. This is the name of the Object to create and is unique. Please note that Codes should be in capital letters, and they can only contain A-Z, a-z, 0-9 and _, -, .
4. Provide a description (not mandatory).
5. Entity validation plugin is used when we want to have validation on some data entries. This is done via a custom script (see Entity Validation Scripts)
6. Enter the Generated Code Prefix. As a convention, we recommended to use the first 3 letters of the Object type code (e.g. INS, in this case). This field is used by openBIS to automatically generate Object codes: the codes will be for example INS1, INS2, INS3, etc.
7. Leave Generate Codes selected if you want to have codes automatically generated by openBIS.
8. Unique Subcodes is used for contained objects, which are not used in the ELN. Ignore this option.
9. Click Add Section at the bottom of the page. Sections are ways of grouping together similar properties. Examples of sections used in the ELN are General info, Storage info, Experimental Details, etc.
10. Add properties inside the Section, by clicking the Add Property button at the bottom of the page. To remove a property, use the Remove button at the bottom of the page.
11. Click Save at the bottom of the page.
Please note that new Object types created in the admin UI, do not automatically appear in ELN drop downs, but they have to be manually enabled, as described here: Enable Objects in dropdowns
Registration of Properties
When registering new properties, the fields below need to be filled in.
- Code. Unique identifier of the property. Codes can only contain A-Z, a-z, 0-9 and _, -, .
- Data Type. See below for data types definitions.
- Label. This is the property/column header that the user can see in the ELN.
- Description: The description is shown inside a field, to give hints about the field itself. In most cases, label and description can be the same.
- Dynamic Property Plugin: Script for calculated properties. See Dynamic properties
- Editable: Editable in the ELN interface. In some cases, metadata is automatically imported by scripts and this should not be changed by users in the interface.
- Mandatory: Field can be set as mandatory.
Property Data Types
- BOOLEAN: yes or no
- CONTROLLEDVOCABULARY: list of predefined values
- DATE. Date field
- HYPERLINK: URL
- INTEGER: integer number
- MATERIAL. Not used in ELN. It will be dismissed.
- MULTILINE_VARCHAR: long text. It is possible to enable a Rich Text Editor for this type of property. This is described here: Enable Rich Text Editor or Spreadsheet Widgets
- REAL: decimal number
- OBJECT. 1-1 connection to a specific object type.
- TIMESTAMP: date with timestamp
- VARCHAR: one-line text
- XML: to be used by Managed Properties (see openBIS Managed Properties) and for Spreadsheet components, as described here:Enable Rich Text Editor or Spreadsheet Widgets
Controlled vocabularies are pre-defined lists of values for a given field.
Existing Vocabularies can be visualised from the Types -> Vocabularies Tab. Vocabularies staring with the “$” symbol are internal: they cannot be deleted and their terms cannot be deleted. However, it is possible to add new terms to these vocabularies and these can also be deleted.
New Vocabularies can be added, by clicking the Add button at the bottom of the page.
When registering a new vocabulary, a Code for the vocabulary needs to be entered. This corresponds to the name of the vocabulary, and it is a unique identifier. Codes can only contain A-Z, a-z, 0-9 and _, -, .
To add terms to the list click Add Term at the bottom of the page. Vocabulary terms always have a code and a label: the code is unique and contain only alpha-numeric characters; labels are not necessarily unique and allow also special characters. If the label is not defined, codes are shown.
After creating the vocabulary and registering the terms, remember to Save.
Register a new Experiment/Collection type
The registration of a new Collection type is very similar to the registration of Object types. For Collection Types, you only need to provide a Code (which is a unique identifier), Description and add a validation plugin if you want to have metadata validation (see Entity Validation Scripts).
Register a new Dataset type
The registration of a new Dataset types is similar to the registration of object types.
It is possible to disallow deletion for a given dataset type.