Skip to main content

Annotations

Using annotations, the application can be configured and adapted to customer requirements. Existing element types and their properties can be modified and new, customer-specific properties can be added.

Tooltip

All default element types and properties that can be modified using annotations are described in the metamodel. The metamodel documents all element types and properties in dataspot and can be accessed in the predefined database meta.

Annotations have an immediate impact on the user interface and in all programming interfaces (metadata REST/API, metadata upload/download). In the user interface, modified properties and new, customer-specific properties are displayed in the respective elements as input fields. New properties are also taken into account in the programming interfaces during import and export.

Annotations are specified in YAML (.YAML, .YML). YAML is a simplified markup language, based on XML, and designed for human-readability. In YAML, data structures are represented exclusively with key/value pairs (associative arrays), lists and scalars.

Note

Only users with the access level Administrator are authorized to edit annotations on the tenant page.

Configuration

Existing element types and their properties can be modified in YAML. New, customer-specific properties can be added to existing element types.

Element type

Note

Element type names are written in UpperCamelCase.

First, the name of the element type (according to the metamodel) is specified at the top level. The element type can then be modified using the appropriate keys.

# Rename element type 'BusinessAttribute' and change icon
BusinessAttribute:
label:
de: Eigenschaft | Eigenschaften
en: Property | Properties
fr: Propriété | Propriétés
icon: wrench
Tooltip

The key label changes the label of the element type. Optionally, the plural of the label can be defined separated with a |.

The key icon changes the displayed icon.

Tooltip

A detailed description of all keys can be found here.

Property

Note

Property names are written in lowerCamelCase.

Existing properties of an element type can be modified with the key properties. Following properties, the name of the property (according to the metamodel) is specified.

# Rename existing property 'title'
BusinessAttribute:
properties:
title:
label:
de: Überschrift
en: Header
fr: Titre

New, customer-specific properties can be added to an existing element type with the key customProperties. Following customProperties, the name of the new property is assigned. This name must uniquely identify the property and may not conflict with other existing properties of the element type.

Note

The technical name of a custom property must start with a letter, : or _ and may further only contain letters, digits, ., :, - or _ but no spaces or other special characters (/, &, ?, <, >, +, =, etc.).

# New properties 'confidentiality' and 'priority'
BusinessAttribute:
customProperties:
confidentiality:
label:
de: Vertraulichkeit
en: Confidentiality
fr: Confidentialité
baseType: STRING
priority:
label:
de: Priorität
en: Priority
fr: Priorité
literals:
LOW:
label:
de: Niedrig
en: Low
fr: Faible
MEDIUM:
label:
de: Mittel
en: Medium
fr: Moyen
HIGH:
label:
de: Hoch
en: High
fr: Haut
Tooltip

The key baseType defines the data type of the property. The key literals defines a list of valid values. In the user interface, these values are displayed in a dropdown list.

New properties become part of the metamodel. In the user interface, they are displayed as input fields for the respective element. New properties are also taken into account in the programming interfaces during import and export.

Tooltip

Element types can be stereotyped with the key stereotype. The key customProperties then defines distinct, customer-specific properties for each stereotype.

Note

In YAML, each level must be indented with two spaces.

An element type may only occur once in the configuration. All customizations of the element type should be done there.

Attention

If customer-specific properties are deleted, it must be ensured that the affected properties are empty before deletion. This is particularly important for stereotypes, as otherwise there may be problems in processing.

Multi-tenancy

The configuration of a base tenant is inherited by all subordinate tenants, i.e. all subordinate tenants adopt the configuration of their base tenant.

A subordinate tenant cannot delete the inherited configuration of the base tenant, but can extend or overwrite it:

  • The configuration of the subordinate tenant can add new properties.
  • The configuration of the subordinate tenant can overwrite properties already defined in the base tenant.
Note

On the tenant page of a subordinate tenant, the tenant annotations and tenant profiles of the base tenant are displayed but cannot be edited.

Tenant profiles of the base tenant can be assigned to models of the subordinate tenant.

Element types

Tooltip

The metamodel describes all element types.

The following list specifies all relevant, concrete element types that can be configured. The element types are grouped according to the model types in which they occur:

NameLabel (labelEn)
BusinessDataModelBusiness data model
BusinessObjectBusiness object
BusinessAttributeBusiness attribute
RelationshipRelationship
BusinessConstraintBusiness constraint
MeasuresCatalogMeasures catalog
MeasureMeasure
DimensionDimension
DimensioningDimensioning
DataCatalogData catalog
DatasetDataset
SubDatasetSubdataset
DistributionDistribution
CompositionComponent
ReferenceDataModelReference data model
ReferenceObjectReference object
ReferenceValueReference value
MappingMapping
TranslationTranslation
SystemCatalogSystem catalog
SystemSystem
SubsystemSubsystem
ProcessingRecordsProcessing directory
ProcessingProcessing
UsageUsage
ProjectDirectoryProject directory
ProjectProject
SubprojectSubproject
UsageUsage
DataDomainModelData domain model
DataDomainData domain
QualityModelQuality model
IndicatorIndicator
ApplicationAssignment
MeasurementMeasurement
UmlModelData model
UmlClassData object
UmlAttributeAttribute
UmlAssociationRelationship
UmlOperationOperation
UmlParameterParameter
UmlDatatypeData type
UmlEnumerationEnumeration
UmlLiteralLiteral
UmlConstraintConstraint
DxOrganizationOrganization
RoleRole
PostPost
GroupGroup
PersonPerson
TaskTask
TenantTenant
UserUser
WorkflowWorkflow
IssueIssue
ApprovalApproval
DiscussionDiscussion

In addition, there are element types that cannot be associated with a single model type, but occur in different models:

NameLabel (labelEn)
CollectionCollection
AttributionAttribution
DerivationDerivation
DeploymentDeployment
DependencyDependency
TransformationTransformation
RuleRule

Hierarchy

The metamodel describes a hierarchy of element types. In this hierarchy, concrete element types (e.g. BusinessDataModel, BusinessObject, BusinessAttribute or Group) are derived from abstract element types (e.g. Scheme, Classifier, Attribute or Agent). The concrete element types inherit the properties from the abstract element types (e.g. BusinessDataModel inherits from Scheme, BusinessObject inherits from Classifier, BusinessAttribute inherits from Attribute and Group inherits from Agent).

Note

Annotations can be defined for abstract element types. All concrete element types derived from these abstract element types also inherit their annotations.

The following list specifies some abstract element types and their derived, concrete element types:

Abstract element typeDerived, concrete element type
ClassifierBusinessObject
UmlClass
AttributeBusinessAttribute
UmlAttribute
AssociationRelationship
UmlAssociation
ConstraintBusinessConstraint
UmlConstraint
EnumerationReferenceObject
UmlEnumeration
LiteralReferenceValue
UmlLiteral
SchemeBusinessDataModel
ReferenceDataModel
MeasuresCatalog
DataCatalog
QualityModel
ProjectDirectory
ProcessingRecords
DataDomainModel
SystemCatalog
UmlModel
TicketIssue
Approval
Discussion
Note

The entire hierarchy of configurable element types, including all abstract and concrete element types and their derivatives, is described in the metamodel.

A specific distinction can be made as to whether a concrete element type (e.g. BusinessDataModel) or an abstract element type (e.g. Scheme) - including all derived element types - should be configured.

# Customer-specific property 'confidentiality' in all models
Scheme:
customProperties:
confidentiality:
label:
de: Vertraulichkeit
en: Confidentiality
fr: Confidentialité

# Customer-specific property 'priority' only in business data models
BusinessDataModel:
customProperties:
priority:
label:
de: Priorität
en: Priority
fr: Priorité

Status

Each metadata object has a specific status within a workflow. During processing, transitions occur from one status to another. The available statuses can be modified or removed, and new, customer-specific statuses can be defined.

Each status is assigned to one of the following groups:

Asset:
properties:
status:
groups:
DRAFT:
label:
de: Entwurf
en: Draft
fr: Brouillon
NOT_PUBLIC:
label:
de: Nicht öffentlich
en: Not Public
fr: Non public
PUBLIC:
label:
de: Öffentlich
en: Public
fr: Public
  • Metadata objects, whose status is from the group DRAFT, are only visible to administrators and editors. The latest published version is visible to read-only users.
  • Metadata objects, whose status is from the group NOT_PUBLIC, are only visible to administrators and editors. The latest published version is not visible to read-only users.
  • Metadata objects, whose status is from the group PUBLIC, are visible to all users.

By default, the following statuses are defined:

Asset:
properties:
status:
literals:
WORKING:
label:
de: In Arbeit
en: Working
fr: En cours
title:
de: Noch in Arbeit bzw. in Überarbeitung
en: Work in progress or in revision
fr: En cours e traitement ou de révision
icon: wrench
order: 0
group: DRAFT
SUBMITTED:
label:
de: Abgestimmt
en: Submitted
fr: Soumis
icon: scale-balanced
order: 1
group: DRAFT
ACCEPTED:
label:
de: Abgenommen
en: Accepted
fr: Accepté
icon: gavel
order: 2
group: DRAFT
FINAL:
label:
de: Finalisiert
en: Final
fr: Final
icon: badge-check
order: 3
group: NOT_PUBLIC
PUBLISHED:
label:
de: Veröffentlicht
en: Published
fr: Publié
icon: globe
order: 4
group: PUBLIC
INACTIVE:
label:
de: Inaktiv
en: Inactive
fr: Inactif
icon: solid-do-not-enter
order: 5
group: NOT_PUBLIC
inactive: true
REJECTED:
label:
de: Abgelehnt
en: Rejected
fr: Rejeté
icon: thumbs-down
order: 6
group: DRAFT
inactive: true
Note

The key inactive marks a status as inactive. Inactive statuses are displayed accordingly in the user interface.

StatusGroupVisibility of metadata objects
WorkingDRAFTMetadata objects are visible to administrators and editors. The latest published version is visible to read-only users.
SubmittedDRAFTMetadata objects are visible to administrators and editors. The latest published version is visible to read-only users.
AcceptedDRAFTMetadata objects are visible to administrators and editors. The latest published version is visible to read-only users.
FinalNOT_PUBLICMetadata objects are visible to administrators and editors but not visible to read-only users.
PublishedPUBLICMetadata objects are visible to all users.
InactiveNOT_PUBLICMetadata objects are visible to administrators and editors but not visible to read-only users.
RejectedDRAFTMetadata objects are visible to administrators and editors. The latest published version is visible to read-only users.

In order to customize the existing status or add new, customer-specific status, the key literals must be extended or modified accordingly in the property status in the element type Asset.

Attention

If a status is deleted, it must be ensured that the status is removed from all workflows before deletion.

Theme

Each theme can be customized. It is possible to select the underlying color scheme, define the colors of selected screen components (e.g. sidebar, status colors) and change the font.

Note

It is only possible to customize the existing standard themes LIGHT (Light), DARK (Dark) and CVD (Color vision deficiency). It is not possible to add new themes.

Theme:
instances:
LIGHT:
label: Hell
labelEn: Light
labelFr: Clair
icon: sun-bright
order: 1
appFont: Nunito Sans
sidebarBackgroundColor: "d1dfe2"
sidebarBorderColor: "dcdcdc"
sidebarHeaderColor: "656565"
sidebarHeaderHoverColor: "464646"
sidebarButtonColor: "464646"
sidebarButtonHoverBackgroundColor: "84b2ba"
sidebarButtonActiveColor: "ffffff"
sidebarButtonActiveBackgroundColor: "096574"
statusDraftColor: "a24372"
statusPublicColor: "1b5860"
statusNotPublicColor: "49506c"
statusInactiveColor: "ff6347"
statusNoneColor: "98661f"
DARK:
label: Dunkel
labelEn: Dark
labelFr: Sombre
icon: moon
order: 2
appFont: Nunito Sans
sidebarBackgroundColor: "03353d"
sidebarBorderColor: "323232"
sidebarHeaderColor: "9fa6ad"
sidebarHeaderHoverColor: "cdd7e1"
sidebarButtonColor: "cdd7e1"
sidebarButtonHoverBackgroundColor: "076574"
sidebarButtonActiveColor: "464646"
sidebarButtonActiveBackgroundColor: "d1dfe2"
statusDraftColor: "d384b0"
statusPublicColor: "84b2ba"
statusNotPublicColor: "b7a9d6"
statusInactiveColor: "db9180"
statusNoneColor: "b6876a"
CVD:
label: Farbsehschwäche
labelEn: Color vision deficiency
labelFr: Déficience de la vision des couleurs
icon: eye-slash
order: 3
appFont: Inter
sidebarBackgroundColor: "272727"
sidebarBorderColor: "323232"
sidebarHeaderColor: "9f9f9f"
sidebarHeaderHoverColor: "cdcdcd"
sidebarButtonColor: "cdcdcd"
sidebarButtonHoverBackgroundColor: "1a1a1a"
sidebarButtonActiveColor: "464646"
sidebarButtonActiveBackgroundColor: "d1d1d1"
statusDraftColor: "b5889b"
statusPublicColor: "6a8fda"
statusNotPublicColor: "b4b3ef"
statusInactiveColor: "db9180"
statusNoneColor: "b6876a"
colorScheme: DARK
Note

Colors are specified as RGB values (hexadecimal color code). It is recommended to specify the RGB values with double quotes.

It is possible to overwrite individual keys without changing the other settings.

Theme:
instances:
CVD:
appFont: Lato

The following keys can be customized:

KeyDescription
label, labelEn, labelFrThe label of the theme in the menu.
iconThe icon of the theme in the menu.
orderThe ordinal number used for sorting the themes in the menu.
appFontThe application font [Inter,Lato,Noto Sans, Nunito Sans].
sidebarBackgroundColorThe background color of the sidebar and the buttons in the menu bar.
sidebarBorderColorThe border color of the sidebar and the buttons in the menu bar.
sidebarHeaderColorThe font color of the titles in the sidebar.
sidebarHeaderHoverColorThe font color of the titles in the sidebar when hovered.
sidebarButtonColorThe font color of the buttons in the sidebar and menu bar.
sidebarButtonHoverBackgroundColorThe background color of the buttons in the sidebar and menu bar when hovered.
sidebarButtonActiveColorThe font color of the selected buttons in the sidebar.
sidebarButtonActiveBackgroundColorThe background color of the selected buttons in the sidebar.
appBarBackgroundColor (deprecated)The background color of the menu bar.
appBarColor (deprecated)The font color of the menu bar.
statusDraftColorThe color for assets in publication state draft.
statusPublicColorThe color for assets in publication state public.
statusNotPublicColorThe color for assets in publication state not public.
statusInactiveColorThe color for assets in an inactive status.
statusNoneColorThe color for elements without a status.
colorSchemeThe underlying color scheme [LIGHT,DARK].
Note

The key colorScheme can only be changed for the theme CVD (Color vision deficiency).

Note

For compatibility reasons, the keys appBarBackgroundColor and appBarColor (deprecated), if present, are automatically converted to the keys sidebarButtonColor, sidebarBackgroundColor, sidebarHeaderColor, etc. and overwrite their explicitly set values, if any. To be able to explicitly set the keys sidebarButtonColor, sidebarBackgroundColor, sidebarHeaderColor, etc. the keys appBarBackgroundColor and appBarColor must be removed.

Login Dialog

The input fields of the login dialog can be customized. The properties loginId and password of the element type User can be specified in the default tenant:

  • The key label defines the label displayed next to the input field in the login dialog.
  • The key title defines the description displayed as a tooltip above the input field in the login dialog.
# Customer-specific login dialog
User:
properties:
loginId:
label:
de: Login-ID
en: Login ID
fr: Identifiant de connexion
title:
de: Die Benutzerkennung des Benutzers
en: The login ID of the user
fr: L'identifiant de l'utilisateur
password:
label:
de: Passwort
en: Password
fr: Mot de passe
title:
de: Das Passwort des Benutzers (mind. 8 Zeichen)
en: The password of the user (min. 8 characters)
fr: Le mot de passe de l'utilisateur (au moins 8 caractères)