Difference between conditions and rules

Applies to Infiniti v8.0 or later
 
The difference between Conditions and Rules, and their use and applicability, is frequently confused.

This is due mostly to the setup looking very similar in Design, however there are some key differences.

The main difference is that Conditions control what is active and/or visible in a Project, whereas Rules control the output of an Auto Logic Answer.

Conditions are able to be placed on many elements in your Project; such as Pages, Questions, Group Logic Answers, Documents, Actions and Workflow Transitions. This means that Conditions essentially have over-arching control over how a Project displays and performs.

Rules are not able to be associated with so many elements. Rules are simply used on an Answer to an Auto Logic Question.

This does not mean that Rules are without their use! This simple difference actually makes Rules very useful, and this becomes apparent when you consider the main time that Auto Logic Rules are calculated by infiniti's engine: Generation.

While Conditions have to be evaluated constantly while someone is using a Project, Rules are under no such constraint. They can therefore be more complicated, as they know that the information they are referencing is complete. This is why Rules can reference Questions in Repeating Pages/Sections and evaluate them as a whole ("At least one must match" or "every answer must match"). Conditions can't do this, because they have to be evaluated on the fly as someone uses the project - the impact on performance could be too great.

Conditions and Rules are "cousins", but the difference is that Conditions are flexible while Rules are powerful.

While there are minor exceptions, consider Rules as determining what happens when the Project is generated (such as inserting content or applying styles) and Conditions as determining what happens while the Project is being used in Produce (such as hiding/showing Questions).
 

Related Articles

Keywords

 
conditions rules active visible output auto logic answer question autologic