Step 3: Define contextualized properties and expressions
- Last UpdatedApr 04, 2025
- 3 minute read
When you create a reporting point within a template, the location for that piece of equipment is expressed in a generic syntax so that as templates are applied across different locations in the hierarchy, each location can be contextualized for that location and/or piece of equipment. Contextualized properties are used so that properties from the target location can be used while maintaining a single template.
Condition expressions use a special generic syntax so that the expression can be contextualized and applied across various pieces of equipment.
Examples of syntax
|
Syntax |
Meaning |
|---|---|
|
<<TARGET>> |
Value of the target location. |
|
<<TARGET.SPEED>> |
Value of the custom field on the target location. |
|
<<LOOKUP (TARGET.TAGNAME)>> |
Looks up an item from the value of the property on the target location. |
Tip: The CalendarItem property of a field that belongs to an equipment template can evaluate the <<Target.CustomProperty >> contextualized syntax.
Contextualized syntax
Contextualized properties use special syntax in expressions that occur within templates.
<<Target>>
This syntax is replaced with the target location of the piece of equipment to which the template is applied.
Example:

Conveyor1 is of type conveyor and the template was applied to equipment type conveyor.
<<Target>> is replaced with Enterprise.Site1.Area.Conveyor1
<<Target.CustomProperty>>
CustomProperty is a custom property of the target equipment type.
The syntax is replaced with the value of the "CustomProperty" that is set on the equipment type for the target of the template.
Example:

Conveyor1 is of type conveyor and the template was applied to equipment type conveyor. Equipment type conveyor has a custom Property that is type int called "Voltage" and Conveyor1 instance has this value set to 415.
(int)(<<Target.Voltage>>) is replaced with 415
<<Lookup(Target.CustomProperty)>>
This syntax tells the template that the item stored in "CustomProperty" is a descriptor to another item in the project. The template looks up this item and then class members of the item are available.
As the template knows this is an actual item in the project, it also takes care of any dependencies required by the expression for the selected class member.

Conveyor1 is of type conveyor and the template was applied to equipment type conveyor.
Equipment type conveyor has a custom property that is type string called "Speed" and Conveyor1 instance has this value set to Enterprise.Site1.Area.SCADAConnector.Conv1Speed.
<<Lookup(Target.Speed)>>.Samples[time] < 10
This syntax is replaced with
Enterprise.Site1.Area.SCADAConnector.Conv1Speed.Samples[time] < 10
The expression has the dependency
Enterprise.Site1.Area.SCADAConnector.Conv1Speed.Samples[time].
Note: The CustomProperty must be of type String, and the item must exist or the template does not apply correctly.
Next step: Step 4: Add lookup model properties to an equipment template