Many attributes inherit their values from the enclosing property or the global scope. In certain circumstances, this is not desirable, e. g. for list attributes. A list attribute is any attribute that takes a comma separated list of values as argument. allocate and flags.task are good examples of commonly used list attributes. By defining values for such a list attribute in a nested property, the new values will be appended to the list that was inherited from the enclosing property. The purge attribute resets any attribute to its default value. A subsequent definition for the attribute within the property will then add their values to an empty list. The value of the enclosing property is not affected by purge.
For scenario specific attributes, an optional scenario ID can be specified before the attribute ID. If it's missing, the default (first) scenario will be used.