10.1. Annotation Types

10.1.1. Properties
10.1.2. Options
10.1.3. Item types
10.1.4. Units
10.1.5. Categories

BASE has been engineered to closely map the MIAME concepts. However, since MIAME is focused on microarray processing workflow, information about the description biological samples themselves was left out. BASE users are free to annotate biomaterials (and most BASE items) as they wish, from basic free text description to more advanced ontology based terms. To accommodate the annotation needs of users eager with detailed sample annotations and also the needs of very different communities, BASE provides a mechanism that allows a high level of annotation customization. BASE allows to create descriptive elements for both quantitative annotation and qualitative annotation of Biomaterials via the Annotation Type mechanism. Actually, annotation types can be used to annotate not only Biomaterials but almost all BASE items, from Plates to Protocols and Bioassay sets.

Go to AdministrateTypesAnnotation types to manage your annotation types.

To create a new annotation type, click on the New… button. This behaves differently than other buttons found elsewhere and you must select one of the 9 different types which can be split in 4 main groups.

[Note] Note

These distinctions matter essentially to database administrators who need fine tuning of database settings. Therefore, creation of annotation type should be supervised by system administrators.

The Edit annotation type window is opened in a pop-up. It contains several tabs.

10.1.1. Properties

Figure 10.1. Annotation type properties

Annotation type properties


The name of the annotation type.

External ID

An ID identifying this annotation type in an external database. This value can be used by tools that need to update annotation types in BASE from external sources. The value does not have to be unique and is not used by BASE.


The maximum number of values that can be entered for this annotation type. The default is 1. A value of 0, means that any number of values can be used.

Default value

A value that can be used as the default when adding values.

Is identifier

If this flag is set, the annotation values can be used as identifiers for a particualar item. For example, the batch item importers can use the annotation type for finding items. Note that BASE doesn't require or implement checks that values are unique.

Required for MIAME

If a value must be specified for this annotation type in order for the experiment to be compliant with MIAME.

Protocol parameter

If the annotation type is a protocol parameter. As a protocol parameter an item can only be annotated if a protocol that includes this parameter has been used. See Section 13.1, “Protocol parameters” for more information.

Disable change log

If this option is checked, change history logging does not include the actual old/new annotation values. Note that the log will still contain an entry that the annotation was modified. It is recomended that this option is enabled for annotations containing sensitive data since access permissions to the change history are different.

Disable inheritance

If this option is checked, annotations of this type are not allowed to be inherited to other items. See Section 10.2.2, “Inheriting annotations from other items” for more information about inheritance. It is recomended that this option is enabled for annotations containing sensitive data since access permissions to inherited information may be different.

[Warning] Existing inherited annotations are removed

Be careful when enabling this option for an annotation type if there are existing items that already inherit this annotation type from their parents. The existing inheritance is automatically dropped, and it will not be re-created if resetting this option again.

Project annotations

If this option is checked, annotations can be set per project. A project-specific annotation value is created automatically when a project is active. If no project is active only the default value value is visible/can be edited. The default value is visible also when a project is active unless a project-specific value exists.


A short textual description to clarify the usage.

10.1.2. Options

Figure 10.2. Annotation type options

Annotation type options

The available options in this tab depends on the type of annotation type, eg. if is a string, numeric or another type.


Select the type of graphical element to use for entering values for the annotation type. You can select between three different options:

  • text box: The user must enter the value in a free-text box.

  • selection list: The user must select values from a list of predefined values.

  • radiobuttons/checkboxes: The user must select values by marking checkboxes or radiobuttons.

The last two options requires that a list of values are available. Enter possible values in the Values which will be activated automatically.

[Tip] Tip

In term of usability, a drop-down list can be more easily navigated especially when the number of possible values is large, and because selection-list and drop-down list allow use of arrow and tab for selection.

Min/max value

Available for numerical annotation types only. Specifies the minimum and maximum allowed value. If left empty, the bound(s) are undefined and any value is allowed.

Max length

The maximum allowed length of a string annotation value. If empty, 255 is the maximum length. If you need longer values than that, use a text annotation type.

Input box width/height

A suggested display width and height of the element used for input. These values are ignored in the current implementation.


A list of predefined values that the user is allowed to select from. This option is only activated if the Interface option is set to selection list or radiobuttons/checkboxes. Actual values can be supplied using one line for each value (a return entry is used as separator).

10.1.3. Item types

Figure 10.3. Annotation type items

Annotation type items

On this tab you select the item types that you wish to annotate with the annotation type. Simply use left and right buttons to move selection options between the Enabled for and Disabled for lists.

[Note] Note

If the annotation type has been marked as a Protocol parameter, these settings are ignored, with one exception. If you wish to view parameter values in the list view for a specific item type you must select the item type here. Otherwise the parameter will not be present as a displayable column.

10.1.4. Units

Figure 10.4. Annotation type units

Annotation type units

Numerical annotation types can optionally be given a quantity and unit.


Select which quantity to use for the annotation type. If you don't want to use units, select the do not use units option.

[Note] The quantity can't be changed later

Once a quantity has been selected and saved for an annotation type, it is not possible to change it to another quantity.

Default unit

This list will be populated with units from the selected quantity. You must select one default unit which is the unit that is used if a user leaves out the unit when annotating an item. The selected unit is also the unit that is used internally when storing the values in the database.

[Warning] Do not change the default unit

If you change the default unit for an existing annotation type, all annotation values that exists for it, must be converted to the new unit. This may result in loss of precision due to rounding/truncation errors.

Use units

By default, all units of the selected quantity can be used when annotating items. If you want, you may force the users to use some specific units by moving units into the Use units list. This is recommended since the range of available units is usually quite large. For example, if the weight of something is normally measured in milligrams, it may make sense to leave out kilograms, and only use microgram, milligram and gram.

10.1.5. Categories

Figure 10.5. Annotation type categories

Annotation type categories

Annotation type can be grouped together by placing them in one or more categories. This enhances display by avoid overcrowding the list of annotation types presented to users. It also allows to improve the display of information.

The Categories list displays the currently associated categories. Use the Add categories button to add more categories, or the Remove button to remove the selected categories.

[Tip] Create categories with the same name as item subtypes

If you, for example, have defined multiple subtypes of extracts (see Chapter 12, Item subtypes), it usually so that some annotation types are only intended for one subtype while some other annotation types are only intended for the other subtype. If you create categories with the same name as the item subtypes, BASE will automatically select the corresponding category when annotating an extract with a subtype. This makes the interface cleaner and easier to use since irrelevant annotation types are hidden. Note that it is possible for annotations to be part of more than one category so it is also possible to define annotation types that are intended for all types of extracts by including them in both categories.