Asset model

The asset model is the technical structure of assets. You can use the asset model to refer to specific fields of assets: its attributes and properties. This is required for optimal use of validation rules.

Note This information does not apply to worfklows and APIs.

Graphical representation

The asset model can be represented graphically. Further below you can find explanations on each individual field.

General

Field Explanation
articulationScore The articulation score of the asset.
id The resource ID. Every resource that can be retrieved using the asset model has this property.
name

The full name of an asset. All resources have this property (community, vocabulary and asset).

signifier

Identical to name but only available for the BasicAssetModel.

Note This field is deprecated.

displayName The name of the resource. All resources have this property (community, vocabulary and asset).
status The status of the asset.
status.id The resource id of the status.
status.name The name of the status.
status.signifier

Identical to status.name.

Note This field is deprecated.

type The asset type.
type.id The resource ID of the asset type.
type.name The name of the asset type.
type.signifier Identical to type.name.
vocabulary The domain of the asset.
vocabulary.id The ID of the vocabulary.
vocabulary.name The name of the vocabulary.
vocabulary.community.id The ID of the community of the asset.
vocabulary.community.name The name of the community of the asset.
generalConcept

The general concept of the asset.

Note This field is deprecated.

generalConcept.id

The ID of the general concept.

Note This field is deprecated.

generalConcept.name

The name of the general concept.

Note This field is deprecated.

generalConcept.signifier

Identical to generalConcept.name.

Note This field is deprecated.

Attributes

Attributes is a dictionary that contains all attribute values. You can retrieve the list for a given attribute type name or attribute type ID.

There are several possibilities to navigate the attributes of an asset.

Field Explanation
attributes.'Definition' The list of all Definition attribute values.
attributes['Definition'] Identical to attributes.'Definition'.
attributes['00000000-0000-0000-0000-000000000202'] Identical to attributes.'Definition', but using the resource ID of the Definition attribute type.
attributes.'00000000-0000-0000-0000-000000000202'.first() The first attribute value within the list of all the Definition attributes.
attributes.'00000000-0000-0000-0000-000000000202'?.first()

Identical to attributes.'00000000-0000-0000-0000-000000000202'.first(), but null-safe.

Tip ?. is the null-safe getter of Groovy. You cannot combine the ?. with the [ ... ] notation. This means that if the referenced attribute is not present, the result is null, whereas the expression without the question mark fails to execute.

attributes['Definition'][1]

The second Definition attribute value of the asset.

Note This uses index-based navigation of the list, and the first element has index 0.

Relations

Relations allow you to retrieve the list of target assets through a given relation, and each target is an asset model in itself. Navigation is done in a similar way as for attributes.

Note (Complex) Relations are only available one level deep. This means that when your script refers to a target asset through a (complex) relation, that referred asset will contain all the aspects of the asset that are mentioned above (name, attributes, etc), but without the (complex) relations of the referred asset.

Field Explanation
relations['Related To'] The list of target assets of all Related To relations.
relations['Related To']?.first().name

The name of the first target asset using the Related To relation in a null-safe way.

Tip ?. is the null-safe getter of Groovy. You cannot combine the ?. with the [ ... ] notation. This means that if the referenced attribute is not present, the result is null, whereas the expression without the question mark fails to execute.

Complex relations

Complex relations are a type of relation. However, because they are less predictable, not all possible relations can be listed here.

Field Explanation
complexRelations.<complexRelationType(Name/Id)>.<firstrelationname>.<secondrelationname>

Similar to the relations, the end result will be an asset model.

Example

If you have a complex relation type

  • with name CRT and id 1,
  • containing four relation types up, down, left and right,
  • all sides referencing a business term.

These are the complex relations:

Field Explanation
complexRelations.CRT.up.right The list of the complex relations from up to right.
complexRelations['CRT']['up']['right'] Identical to complexRelations.CRT.up.right.
complexRelations.'CRT'?.'up'?.'right'

Identical to complexRelations.CRT.up.right, but does not fail in case the list of CRT is empty, nor if the up side is empty.

Tip ?. is the null-safe getter of Groovy. You cannot combine the ?. with the [ ... ] notation. This means that if the referenced attribute is not present, the result is null, whereas the expression without the question mark fails to execute.

complexRelations['1'].down.up The list of the complex relations from down to up.

Asset type model

Field Description
name

The full name of the asset type.

displayEnabled Parameter that determines whether the Identical asset names per domain feature is enabled for the asset type.
ratingEnabled Parameter that determines whether ratings are enabled for the asset type.
id The resource id.
signifier

Identical to name but only available for the BasicAssetModel.

Note This field is deprecated.