Contents > 8 Defining Custom Design Metrics and Rules > 8.2 Definition of Sets > 8.2.1 Projection > 8.2.1.3 Attribute "exclude_self"

8.2.1.3 Attribute "exclude_self"

The attribute exclude_self can take the values "true" or "false" (default).

When exclude_self is set to true, the element for which the set is calculated is not included in the result set. For example, assume we want to determine, for a state in a state diagram, the set of states that can be reached from that state:

<set name="Reachable_States" domain="state"> 
  <description>The set of reachable states.</description>
  <projection relation="transsource" target="transition"
              element="transtarget" eltype="state"
              recurse="true" exclude_self="true" />
</set>
By setting exclude_self to true, the state for which the set is calculated is not included in the result set, even if the state-transition graph has loops back to the state.