Use attributes and features
- Last UpdatedAug 12, 2025
- 2 minute read
Attributes enable data type additions to the template or instances. Attributes can be further enhanced by enabling features. Features extend the functionality of an attribute by adding input, output, history, and/or alarm characteristics.
Attributes are categorized as follows:
-
Calculated: The attribute is only modifiable by the instance. It will have no initial value until the object writes to it. Calculated attributes are typically used for totals, averages, and so on.
-
Object Writable: The attribute is writable only by instances within the Galaxy.
-
User Writable: At run time, the attribute is writable by a user (subject to security restrictions), other instances, and the configuration program.
Note: Locking an attribute makes it a constant. Constants are not writable at run-time.
Best Practice
-
When defining attributes with input or output extensions, never lock their source or destination within a template, since it will be unique to each instance and defined later.
-
Use three dashes ( --- ) to represent an unknown reference. This prevents the "could not resolve reference" warning when instances are created.
-
Arrayed attributes cannot be extended.
-
For a Boolean or Analog alarm that comes from the field device control logic and requires a corresponding Acknowledge, the "Acked" attribute should take on an output extension with the destination being the "Ack" point in the control logic.
-
If an underscore ( _ ) is the first character of an attribute name, that attribute is hidden from users at run time. Use this hidden attribute when you need variables to support certain functionality, but want to hide them from users in order to prevent confusion. A hidden attribute cannot be extended.
-
Any attributes and its extension created within a template is inherited by all derived objects. However, attributes and extensions are only propagated when the instance is created or when that particular attribute is locked.
-
Most attributes are checkpointed. This means that all data necessary to support automatic restart of a running Application Object is saved periodically. The restarted object has the same configuration, state, and associated data as the last checkpointed value.
Unlike other attributes, calculated attributes are not generally checkpointed unless they are configured as "Retentive Enabled," in which case they will be checkpointed with the other attributes in that object.