Branching
Using simple branching you can set the simple question skip logic based on user input. You can do it manually for each question one by one or you can generate it automatically by clicking on the “Reset” button. When you click the “Reset” button, each question skips to the next question.
Once you set your skip logic, you need to save it.
Please note that when you modify an existing question, you must set the skip logic again.
Attribute | Description |
---|---|
Question | This is the question on which you want to apply skip logic. |
Option | This is the user input (response) based on which skip logic will be evaluated. |
Go to Question | This is the question to which it will be navigated when simple question skip logic returned true. |
Save | This button saves all simple skip logic defined. |
Reset | This button makes the question appearance order as in the order questions have been configured. |
Advanced Branching
Advanced Branching allows you to create custom rules to control the flow of your survey. You can set conditions based on respondents’ answers to navigate them to specific questions or even end the survey. This feature acts like a simple query builder, letting you combine multiple conditions using common operators.
Key Features and Attributes
- Evaluate On: Select the source question whose answer will determine the branching logic.
- Criteria: Define the conditions for branching using operators (e.g., Equal to, Greater Than) and values. You can combine multiple criteria using AND/OR operators.
- Target Question: Choose the question or action (e.g., “End Survey”) where the respondent will be directed if the condition is met.
- Active: Toggle this option to enable or disable the branching rule.
Supported Operators and Conditions
Below is a list of operators you can use to define branching rules, along with their descriptions and examples.
Basic Comparison Operators
Operator | SQL Symbol | Description | Example |
---|---|---|---|
Equal to | = |
Checks if the answer matches the specified value. | Q1 = "Yes" |
Not Equal to | <> |
Checks if the answer does not match the specified value. | Q1 <> "No" |
Greater Than | > |
Checks if the answer is greater than the specified value. | Q1 > 10 |
Less Than | < |
Checks if the answer is less than the specified value. | Q1 < 5 |
Greater or Equal | >= |
Checks if the answer is greater than or equal to the specified value. | Q1 >= 15 |
Less or Equal | <= |
Checks if the answer is less than or equal to the specified value. | Q1 <= 20 |
List-Based Operators
List-Based Operators are used to evaluate whether a respondent’s answer matches (or does not match) a set of predefined values. These operators are particularly useful for questions where users can select multiple options, such as checkboxes, and the backend stores the answers as a comma-separated list (e.g., 1,2,3
).
Operator | SQL Symbol | Description | Example |
---|---|---|---|
In | IN |
Checks if the answer (or any part of a multi-answer set) is one of the specified values (comma-separated). This is ideal for multi-select questions like checkboxes where the backend answer set might be 1,2,3 . If any of the selected values match the specified list, the condition returns true. |
|
Not In | NOT IN |
Checks if the answer (or any part of a multi-answer set) is not one of the specified values (comma-separated). For multi-select questions, the condition returns true only if none of the selected values match the specified list. |
|
Additional Notes on Multi-Select (Checkbox) Behavior:
- In a checkbox question, when users select multiple options, the backend stores the answers as a comma-separated string. For example, if a user selects options with values
1
,2
, and3
, the answer is stored as1,2,3
. - The
IN
operator checks if any of the selected values are present in the specified list. For example, if the answer is1,2
and the rule isQ1 IN 1,4,5
, the condition is true because1
is in the list. - The
NOT IN
operator checks if none of the selected values are present in the specified list. For example, if the answer is1,2
and the rule isQ1 NOT IN 3,4,5
, the condition is true because neither1
nor2
is in3,4,5
.
Range Operator
Operator | SQL Symbol | Description | Example |
---|---|---|---|
Between | BETWEEN |
Checks if the answer falls within a specified range (comma-separated). | Q1 Between 10,50 |
Pattern Matching Operators
Operator | SQL Symbol | Description | Example |
---|---|---|---|
Like | LIKE |
Matches the answer against a pattern. Use % for wildcards. |
Q1 LIKE "a%" (starts with ‘a’) |
Not Like | NOT LIKE |
Checks if the answer does not match the pattern. | Q1 NOT LIKE "%a" (does not end with ‘a’) |
Pattern Examples for LIKE/NOT LIKE:
a%
: Answer starts with ‘a’.%a
: Answer ends with ‘a’.%a%
: Answer contains ‘a’ anywhere.mango
: Answer is exactly ‘mango’.
Multi-Answer Operators (For Checkbox Questions)
These operators evaluate the number of selected options in a multi-answer question (e.g., checkboxes), where answers are stored as a comma-separated list (e.g., 1,3,5,7,9
).
Operator | SQL Symbol | Description | Example |
---|---|---|---|
EqualLength | = |
Checks if the number of selected options (length of the answer set) equals the specified value. | Q1 EqualLength 5 (e.g., answer: 1,3,5,7,9 , length is 5, condition is true) |
GreaterLength | > |
Checks if the number of selected options (length of the answer set) is greater than the specified value. | Q1 GreaterLength 3 (e.g., answer: 1,3,5,7,9 , length is 5, condition is true) |
LessLength | < |
Checks if the number of selected options (length of the answer set) is less than the specified value. | Q1 LessLength 4 (e.g., answer: 1,3 , length is 2, condition is true) |
How to Set Up a Branching Rule
- Add a New Rule: Click the “+Add” button in the Branching List.
- Select the Source Question: Under “Evaluate on,” choose the question to base your rule on.
- Define Criteria:
- Select the question (QN).
- Choose an operator (e.g., Equal to, Greater Than).
- Enter the value to compare against.
- Add more criteria if needed by clicking “Add new criteria” and joining them with AND/OR.
- Set the Target: Choose the target question or action (e.g., “End Survey”) under “Target Question.”
- Activate the Rule: Check the “Active” box to enable the rule.
- Save: Click “Save Rule” to apply the branching logic.
Notes
Order of Evaluation: Rules are evaluated in the order they appear in the Branching List. Use drag-and-drop to reorder them if needed.
Error Handling: If no criteria are defined, you’ll see a message: “Please select a Rule to see the evaluation criteria.”
Deleting Rules: You can delete a rule by clicking the “X” next to it in the Branching List.
This feature helps you create dynamic surveys that adapt to respondents’ answers, improving the user experience and data quality.
Advanced Validations
Advanced validation allows you to apply validation rules that come from multiple questions. Here you can configure your own error message related to the validation.
Question Type | When to use |
---|---|
Evaluate on question | Question on which evaluation of validation rules will be triggered when the next button is clicked. |
Function | Here you can select the type of operation you want to apply to Left side Expression. Currently there are three functions available i.e. SUM, LENGTH & VALUE. When you choose SUM, you need to check all questions whose values will be summed up for further comparison against the right side expression. |
LS Expression | Here you can select one part your expression that you want to validate. |
Operator | Here you can define the type of operation you want to perform Left side Expression and Right Side Expression. |
Evaluate By | Here you can select the type of operation you want to apply to Right side Expression. You can either choose the value of a question or a static value on your right side for validation. |
RS Expression | Here you can select other part your expression that you want to validate |
Error Text | You can put your custom validation error message here. When the validation result fails, the user will see this message. As part of your validation message you can also print the evaluation result of the left hand side as well as the right hand side by using $LHS$ and $RHS$ as part of your expression. |
Active | Using this flag, you can activate/deactivate an existing validation expression. Please note that only active expressions are evaluated during the survey workflow. |
Operator | Math Symbol | Description |
---|---|---|
Equal to | (==) | Evaluates if both LS Expression values and RS Expression values are equivalent. |
Not Equal to | != | Evaluates if both LS Expression values and RS Expression values are not equivalent. |
Greater than | > | Evaluates if LS Expression value is greater than RS Expression value. |
Greater than or equal to | >= | Evaluates if LS Expression value is greater than or equal to RS Expression value. |
Less than | < | Evaluates if LS Expression value is less than RS Expression value. |
Less than or equal to | <= | Evaluates if LS Expression value is less than or equal to RS Expression value. |