You are here: Reference > Rule types > About Declare Expression rules

About Declare Expression rules

  1. About 
  2. New 
  3. Expressions 
  4. Pages & Classes 
  5. Change Tracking 
  1. History 
  2. More... 

Use Declare Expression rules to define automatic computations of property values based on expressions.

Note: Do not confuse Declare Expression rules with simple expressions. Expressions — a syntax that includes constants, function calls, operators, and property references — are used in many situations in addition to Declare Expression rules.

Forward chaining

Often, target property values are computed automatically each time any of the other input values in the expression change, or when a value for this property is accessed, changed, or using other criteria. This technique is known as forward chaining.

For example, you can declare that a property named Order.TotalPrice is always the sum of:

and so on. You can also declare that OrderLine().TotalPrice is always equal to .Quantity multiplied by.UnitPrice.

Backward chaining

In an activity, the Property-Seek-Value method can access the computational relationships among properties in a Declare Expression rule to identify source values needed to compute a missing property value. This technique is known as backward chaining.

For example, consider a single Declare Expression rule defining Circumference as 3.1416 times Diameter with Change Tracking set to Whenever used. This rule can be used in either forward-chaining or backward-chaining mode:


Use the Application Explorer to access the Declare Expression rules that apply to work types in your application. Use the Records Explorer to list all Declare Expression rules available to you.


After you complete initial development and testing, you can delegate selected rules to line managers or other non-developers. Consider which business changes might require rule updates and if delegation to a user or group of users is appropriate.

For more details, see How to delegate a rule.


Declare Expression rules are instances of the Rule-Declare-Expressions rule type. They are part of the Decision category.

Note: This rule type name ends with S. The Rule-Declare-Expressions rule type replaces the 03-02 Rule-Declare-Expression class, which is deprecated.

Related topics About Expressions
About the Declarative Network display
Declarative processing — Concepts and terms
How to unit test a declare expression rule
Standard rules Standard declare expression rules

Decision category