The following chapter contains a detailed description of all data model object types, relationships and attributes.
All the attributes are listed in a table, and more complex attributes and relationships will be explained in more detail in the corresponding topics. The most important attribute properties are represented in the tables by symbols:
Symbol | Meaning |
---|---|
* or [M] | Mandatory attribute. This attribute must be assigned a value. |
[C] | (Choice) Occurs if there are at least two attributes for a type or relationship. Only one of these attributes may be assigned a value or set to true. |
[D] | (Dependency) Occurs if there are at least two attributes for a type or a relationship. These attributes depend on each other and must be modeled in specific ways. |
[O] | (Optional) Optional attribute. Optional attributes do not have a standard value and can be left empty. |
[U] | (Unique) The value of this attribute must be unique among the siblings of the same type. |
[UC] | (Unique choice) Precisely one type or one relationship among the siblings must set this attribute to true. Only occurs with boolean attributes. |
Each attribute value of SeqNo must be unique among the same types of a parent mode.
Certain attributes, such as ID, Label and SeqNo, are assigned to several object types and relationships. In principle, these always have the same meaning:
Mandatory attribute. The value of this attribute must be unique in the complete AWM. The use of a naming convention is therefore recommended.
Optional attribute. Labels are used for the display of objects and fields in the user interface. If the model interpreter does not find a label for an object of a type, the next matching attribute will be taken, which could be a label for a higher hierarchy level or the ID of an object type.
Example:
Action Descriptor ACT_DELETE | Label = “Delete Member” |
Element ELE_Member has Action Descriptor (relationship): | Label = “” (empty) |
Element ELE_Task has Action Descriptor (relationship): | Label = “Delete Task” |
For elements of type “ELE_Member”, the label “Delete Member” matches the action, which should delete a member. Elements of type “ELE_Task” should be deleted via the context menu with “Delete Task”, even if the same action descriptor is hidden behind it. In this case, the label of the action descriptors can be “overwritten” with the label of the relationship. If the action descriptor “ACT_DELETE” has no label, its ID will be used.
It is also possible to define sub-menus in context menus by using the forward slash character “/” in label definitions for action descriptors. Every block of characters ended by “/” will result in a submenu at run time.
Example:
The label definition “Test Submenu/Another Submenu/Some Action” will create two sub-menus in any context menu:
Only occurs in relationships. Defines the position of a referenced type in a sequence. For example, this could be the arrangement of the table columns or the sequence of tool parameters. Only numbers are valid values, and the lowest number means that the referenced object should appear first in the sequence (first table column or first tool parameter). The same sequence numbers among siblings of the same type generate no errors as long as the “Unique” ([U]) attribute is not defined. Use of the same sequence numbers leads to a random arrangement of the referenced objects.
Complex Attributes are made up of several individual attributes. Relationships and complex attributes can appear several times within a type.
Cardinalities of the following relationships and complex attributes will be described in tables in the next topics: