Domain Attribute

The Domain Attribute object is the smallest unit in the Domain Model and is a sub-object of a Domain Entity. A domain attribute describes the individual properties of the entity, e.g., what type the attribute is and what relationship it has to another entity.

Properties

The table below documents the available properties for domain attributes. The 'name' column displays the property name as it can be used in Groovy and Java Scripts.

Name

Type

Default

Description

Cardinality

cardinality

Enum

n/a

Specifies the relationship between entities.

MANY_TO_MANY (MANY_TO_MANY)

Multiple entities are related to multiple entities.

MANY_TO_ONE (MANY_TO_ONE)

Multiple entities are related to one entity.

ONE_TO_MANY (ONE_TO_MANY)

One entity is related to multiple entities.

ONE_TO_ONE (ONE_TO_ONE)

One entity is related to one entity.

Description

description

String

n/a

An optional description for this object. The description can contain multiple lines to give more context on the configured object. The description is not used in a technical context.

Name

displayName

String

n/a

Specifies the name of the object. The name is used to display and identify the object in lists. The name can contain any valid UTF-8 characters. This field is mandatory.

Index attribute values

index

Boolean

n/a

This flag helps the web service indexing task template to find better test data for the edge cases and more variants for the general test definitions.

Key field

key

Boolean

n/a

Specifies whether the attribute is a key field.

Maps to

mapsTo

DomainEntity

n/a

Specifies the entity to which this attribute maps. This is used to define relationships between different domain entities.

Relation type

relationType

Enum

n/a

Specifies the type of relationship between entities.

AGGREGATION (AGGREGATION)

A relationship where the child can exist independently of the parent.

COMPOSITION (COMPOSITION)

A relationship where the child cannot exist independently of the parent.

Type

type

Enum

n/a

Specifies the type of the attribute. The following types can be specified:

BINARY (BINARY)

Represents basic data in a digital system.

BOOLEAN (BOOLEAN)

Represents the two possible values, true and false.

DATE (DATE)

Represents a date.

NUMBER (NUMBER)

Represents digits such integers and floats.

OBJECT (OBJECT)

Represents any object. This is used when mapsTo is set.

STRING (STRING)

Represents a sequence of characters.

TIME (TIME)

Represents a time.

TIMESTAMP (TIMESTAMP)

Represents a timestamp.

Actions

The available actions are described below. Some actions apply to the list, while others are specific to selected domain attributes.

List Actions

The following actions are available on the domain attributes list. If the action is disabled a tooltip will provide the exact reason for the deactivation. The required permissions are described in detail for each action.

  • Bulk Delete

  • List History

Delete the selected objects.

The following options are available:

Cascade

Recursively delete depending objects.

When using cascade, dependent objects are deleted first also with cascade enabled. Thus, a cascade deletion is a recursive function that deeply searches for dependent objects and deletes them first. There is only a confirmation for the first object. The dependent objects are deleted without confirmation but only when the user has the DELETE permission.

This feature is only available in development mode. More information about development mode can be found in the chapter User Settings. It should be used with caution.

An object in the result list can have two different states, these are:

DELETED

The object could be deleted.

NOT_DELETED

The object could be not deleted. This may be because the executing person does not have a delete permission on the object or the object is still referenced by others. A detailed reason can be determined with the help of the error message. If the object is still in use, these objects are also displayed.

The following permissions are required on the list:

  • DELETE

  • READ

The history list tracks all modifications made to objects within it. A new record is added each time an object is created, edited, or deleted. A record indicates who made the change, which object was affected, and when the change was made.

For more information about the concept of the history refer to the history concepts.

The following permissions are required on the list:

  • READ

Object Actions

The following actions are available on specific domain attributes. In order to execute the action, the user must possess the necessary permissions for the object. The permissions required for each action are described individually. If the user does not have these permissions, the action will be disabled and the tooltip will provide the exact reason for the deactivation.

  • Delete

  • Event List

  • Object History

  • Usage

  • Uses

Delete the object. If the object is still used by another entity, an error message is displayed, and the object is not deleted. The delete operation must be confirmed in a separate popup.

The following options are available:

Cascade

Recursively delete depending objects.

When using cascade, dependent objects are deleted first also with cascade enabled. Thus, a cascade deletion is a recursive function that deeply searches for dependent objects and deletes them first. There is only a confirmation for the first object. The dependent objects are deleted without confirmation but only when the user has the DELETE permission.

This feature is only available in development mode. More information about development mode can be found in the chapter User Settings. It should be used with caution.

The following permissions are required:

  • DELETE

  • READ

This list shows all registered events for the object. It includes events that are specific to the object, or for that type.

The following permissions are required:

  • READ

The history displays all changes made to the respective XDM object, including any changes made to its rules.

Each change record includes information about the operation performed (e.g. CREATE, UPDATE, DELETE), the timestamp, and the user responsible for the change.

For more information about the concept of the history refer to the history concepts.

The following permissions are required:

  • READ

The Usage List shows all objects that refer to the current object. It provides an overview of the relationships and makes it easy to track these relationships.

The following permissions are required:

  • READ

The Uses List shows all objects that the current object uses. It provides an overview of the relationships and makes it easy to track these relationships.

The following permissions are required:

  • READ