A declarative rule is an instance in a class derived from the Rule-Declare- class.
You can establish required relationships among properties in a Declare Expression, Constraints, Declare OnChange or Declare Trigger rule. When the value of a property is involved in any of these declarative rules, the system automatically checks an internal dependency network for other values that are affected and performs other processing as determined by the network. This is known as forward chaining.
After the following types of events the system reevaluates most declarative rules:
Index rules operate when a value of any of the properties involved in the rule changes.
Trigger rules operate when an object is saved to the database.
Decision trees, decision tables, and case match rules are evaluated only upon explicit request, and do not use forward chaining.
Limited rule resolution applies to declarative rules, based on the RuleSet, Value, and Available fields. You can use circumstance processing and time-qualified processing with Declare OnChange, Declare Expression, and Declare Constraints rules.