Composite Attributes
You can combine primitive attributes as members of a composite attribute. This combination can either be done in simple mode or in table mode. In simple mode, you can store a single composite data entry in the composite attribute, such that the data entry is a combination of one value for each primitive attribute member. In table mode, you can store multiple such data entries in the composite attribute — when displayed and edited, each primitive attribute becomes a table column and each data entry a table row.
When a Model Manager server database is created, two composite attributes in table mode — Attachments and Model Versions — are automatically created for you. They correspond, respectively, to a list of uploaded file attachments and a list of linked model versions.
The Composite Attributes page, opened by clicking Composite Attributes in the Database navigation sidebar, shows a table with all composite attributes in the database. The table columns are:
The Label column — the label of the composite attribute.
The Description column — the optional description of the composite attribute.
Click on the label of a composite attribute in the table to show more details for that composite attribute. Click the Add button to add a new composite attribute.
Adding Composite Attributes
To add a new composite attribute:
1
Write an identifier for the composite attribute in the Identifier field. This identifier must be unique among the set of all attributes — primitive and composite — and start with a Latin alphabet character followed by zero or more additional such characters or an underscore.
The identifier of a composite attribute is used in the Model Manager search syntax when filtering on attribute values — see Searching on Asset Attributes.
2
Write a label for the composite attribute in the Label field. The label is shown on an asset page as a header to the primitive attribute members.
3
4
Select between Simple and Table mode in the Mode list.
5
Add member primitive attributes in the Select primitive attribute list. Added primitive attributes are shown in a table under Member attributes in the order they will appear on the asset page. You can rearrange the member attributes using drag and drop — see also Rearranging Table Rows.
6
Click Save to add the new composite attribute.
Defining a composite attribute in Table mode with a single primitive attribute is how you get a data field that can contain a list of values. Examples include a list of supplementary files or a list of linked model versions. The only exception is a list of string values for which you can use a primitive attribute with the Keyword array value type — see Table 3-5.
The Composite Attribute Page
The Composite Attribute page contains details on a composite attribute in the database. The fields are:
Identifier. The unique identifier of the composite attribute.
Label. The label of the composite attribute.
The label is used as the field text of the attribute on The Asset Page.
Description. The description of the composite attribute.
Mode. The mode of the composite attribute — either Table or Simple.
Member attributes. The list of primitive attributes making up the composite attribute.
Click Edit to edit the composite attribute, including possibly changing or rearranging its primitive attribute members.
Removing primitive attribute members from a composite attribute should be done with care. If you open and subsequently save a new version of an asset that uses a composite attribute for which a member has been removed, any data for that primitive attribute member will be excluded from the new version. Similarly, if you change from Table mode to Simple mode, only the data in the first table row will be kept in a new version of an asset.
Click Delete Permanently if you want to permanently delete the composite attribute in the database. The attribute will be automatically removed from any asset type using it. Any assets with data for the composite attribute will, however, be left untouched until you save a new version of the asset (in which case the data will simply be excluded from the new version).