ESM Listener Implemented Target Conditions
ESM Listener Implemented Target Conditions
CombinedTargetCondition
Combines multiple conditions (which can also be CombinedTargetConditions themselves) to one with operators AND or OR.
<combined_target_condition boolean="OR">
<target_condition>
...
</target_condition>
<combined_target_condition>
<target_condition>
...
</target_condition>
<target_condition>
...
</target_condition>
</combined_target_condition>
</combined_target_condition>ValueTargetCondition
Compares an attribute value from data card to some constant with some operator. Supported operators depend on the data type, for example references can't be compared to data card name or id. An exception to this is a reference to source or reference from source (configured with attribute code).
By value
<!-- Target condition that matches data cards where the status attribute's value is "Open" -->
<target_condition>
<value>
<attribute>
<code>status</code>
</attribute>
<operator>=</operator>
<compared_value>Open</compared_value>
</value>
</target_condition>By reference to source
<!-- Target condition that matches data cards which refer to source data card -->
<target_condition>
<reference_to_source>
<attribute>
<code>Target entity's attribute code</code>
</attribute>
</reference_to_source>
</target_condition>By reference from source
<!-- Target condition that matches data cards which are referred by source data card -->
<target_condition>
<reference_from_source>
<source_attribute>
<code>Source entity's attribute code</code>
</source_attribute>
</reference_from_source>
</target_condition>PropertyTargetCondition
Compares data card's attribute's value to some other attribute's value with some operator. Supported operators depend on the data types used.
<!-- Target condition that matches data cards where the attribute First name's value is not the same as Last name's -->
<target_condition>
<property>
<attribute>
<code>First name</code>
</attribute>
<operator><></operator>
<compared_attribute>
<code>Last name</code>
</compared_attribute>
</property>
</target_condition>SourcePropertyTargetCondition
Compares target data card's attribute's value to an attribute's value on the source data card with some operator. Supported operators depend on the data types used.
<target_condition>
<source_property>
<attribute>
<code>target_status</code>
</attribute>
<operator><></operator>
<compared_attribute>
<code>source_status</code>
<current_value>true</current_value>
</compared_attribute>
</source_property>
</target_condition>EntityTargetCondition
Are we about to save a new data card: yes or no
<!-- Target condition which matches a removed data card (data card is in the trashcan) -->
<target_condition>
<entity>
<state>entityIsDeleted</state>
<value>true</value>
</entity>
</target_condition>
<!-- Target condition which matches a hidden data card -->
<target_condition>
<entity>
<state>entityIsHidden</state>
<value>true</value>
</entity>
</target_condition>SpecialTargetCondition
This condition can be used to define/check the following properties:
- A template, which the source data card is (special condition required in root condition in XML).
- Is the data card in a specific folder (folder code) or some where else.
- Is the data card same or different than source (for example when target conditions refer to same template as source data card, one may exclude the source data card from possible target data cards).
- Does the target data card refer to source through a specified path of references (target_refers_to_source). The path is defined using attribute codes as follows: template_code1:attribute_code1$template_code2:attribute_code2... The first template code is the code of the target template and the attribute code is a code of such attribute, which can refer to the data cards which are next in the path. The last template and attribute code pair is used to mark an attribute which refers directly to the source data card. (Since: Efecte 4.1 4113).
<root_target_condition>
<template_condition>
<code>computer</code>
</template_condition>
<combined_target_condition boolean="AND">
<target_condition>
<folder>
<code>Removed</code>
<operator>!=</operator>
</folder>
</target_condition>
<target_condition>
<not_equals_source></not_equals_source>
</target_condition>
<target_condition>
<target_refers_to_source>
<path>system:related_cis$app_instance:related_cis$runtime_engine:related_cis</path>
</target_refers_to_source>
</target_condition>
</combined_target_condition>
</root_target_condition>
Table of Contents