Main use:
The variables in a Virtual Question are conceptually similar to the options in other Choice Based Questions. The variables in the virtual question will be TURE or auto-selected if the relevant conditions set for the variables are met.
A few typical use cases -
Termination Logics
There are instances when we need to set up termination logic based on multiple questions. For example, we want to terminate people when they did NOT buy the product in the past year AND they do not plan to buy it in the next 6 months (these are two separate questions related to past and future purchases). In this case, we would create a Virtual Question and create a variable based on the two questions for past and future purchases. We then add this Virtual Question as a Custom Screener on the Audience page and set up the termination logic accordingly. Please see the details here.
Quota Setting
There are circumstances when we need to allocate quotas over combined options and/or multiple questions. For instance, quotas based on Age x Gender where we require a quota of 100 each for females aged 18-35, females over 35, males aged 18-35, and males over 35. In this scenario, we would create a Virtual Question with 4 variables 18-35 Female, 35+ Female, 18-35 Male, and 35+ Male. We will then add this Virtual Question as a Custom Screener on the Audience page to set up quotas accordingly. Please see the details here.
Answer Reference
Sometimes we want to show dynamic wording in the question based on the previous choices, but it's not a direct answer reference from the option wording, but something more complicated. For Example, we want to ask the participants to what extent they agree that the company offers special products and services for students [IF THEY ARE STUDENTS]/ customers like me [IF THEY ARE NOT STUDENTS]. We have another question at the start asking if they are students or not. In this case, we would create a Virtual Question with 2 variables - the first writing "student" in the Display Text and defining the logics that they are students, and the second writing" customers like me" in the Display Text and defining the logics that they are NOT students. After that, we Answer Reference this Virtual Question in the question wording "To what extent do you agree that the company offers special products and services for [Virtual Question]?". Please see the details here.
Other
There are situations when we need to categorize customers based on complex criteria, and then use that category as a pre-condition in many other questions. Instead of reapplying these complex logics each time, we can create a Virtual Question for customer categories. This Virtual Question can then be used in the logic setting for other questions.
The above use cases are the typical ones, but there can be many more use cases. Just be CREATIVE:)
How to set up the platform:
1. In the Questionnaire Builder page, add a new question OR insert a new question by hovering over an existing question and clicking the green (+) button (either above or below the existing question)
2. Select Virtual Question from the popup menu that appears.
3. Write your question number or label in the upper box.
4. In the Virtual Options Box, write the name of the new variable in the Option Content field
5. To start adding logic in the Condition field, select the SOURCE question (labeled in the box as "The variable will be true if") . You can type in the question or select from the drop down.
6. Then select the CONDITION you want to apply. The conditions vary per question type. (See further below for the different conditions), and then click Confirm.
7. To add more conditional logic to the same variable/Virtual option, click (+) Add Another Rule. Please note that every time you add a new rule, the logic applied will always be "AND".
In this example, the variable/Virtual Option "Females, 18-44" is defined in Condition 1 using the "AND" rule. This means that both rules must be satisfied so that the variable will be true (ie. Female AND Age 18-44)
8. To create a new variable/Virtual Option in the same Virtual Question, click (+) Add Option and then follow steps 4 to 6/7
In this example, a new option is created "Males, 18-44" in the same Virtual Question (Gender+Age)
10. Once the variables have been saved, the Virtual Question will have always have a Logic icon in the Question Tree sidebar.
Please note: The system would include a "Not Applicable" variable/option in each Virtual Question, where "Not Applicable" indicates who does not fulfill the criteria set for any of the variables/options in that question.
CONDITIONS PER QUESTION TYPE
a. If the source question is a Single Choice and similar questions, then the default conditions are:
| Single Choice Also for Rating / Scale / Map / Single Choice Popup Cards / Tradeoff Ranking / Treeman / NPSPlus | LOGIC |
| INCLUDES | If choosing the defined options from the source question |
| does not INCLUDES | If NOT choosing the defined options from the source question |
| is Displayed | if the question is displayed/asked |
| is NOT Displayed | If the question is NOT displayed/asked |
Please note in the Tradeoff Ranking Question, INCLUDES and does not INCLUDE applies to the Top Choice only. For example, the user can set up a logic where a Tradeoff Ranking Question INCLUDES Idea 1 or Idea 2 in the Top Choice.
b. If the source question is an Multiple Choice and similar questions, then the conditions are
| Multiple Choice Also for Rank Order /Multiple Choice Popup Cards / Virtual Question / Image Hotspot | LOGIC |
| INCLUDES | If choosing the defined options from the source question |
| does not INCLUDES | If NOT choosing the defined options from the source question |
| number of selected value GREATER THAN | If number of selected options is greater than the custom value |
| number of selected value EQUALS to | If number of selected options is the same as the custom value |
| number of selected value LESS THAN | If number of selected options is less than the custom value |
| is Displayed | If the question is displayed/asked |
| is NOT Displayed | If the question is NOT displayed/asked |
Please note in Rank Order Question: User can specify a specific rank order after INCLUDES and does not INCLUDE the options. For example, user can set up a logic where a Rank Order Question INCLUDES Option (Close to my home) in the 1st rank. They can also set up a logic where a Rank Order Question INCLUDES Option (Close to my home) in ANY rank order.
c. If the source question is an Open-ended or Numeric mention, then the applicable conditions are:
| Open-end / Numeric Question | LOGIC |
| Contains [text] | If the answer mentions the custom word/value |
| does not Contains [text] | If the answer does NOT mention the custom word/value |
| Equals [text] | If the exact answer is only the custom word/value |
| does not Equals [text] | If the exact answer is NOT the custom word/value |
| Greater than [numeric] | If the answer is greater than the custom value |
| Greater than OR EQUALS [numeric] | If the answer is greater than or EQUALS the custom value |
| Equals [numeric] | If the exact answer is a custom value |
| does not Equals [numeric] | If the exact answer is NOT the custom value |
| Less than [numeric] | If the answer is less than the custom value |
| Less than OR EQUALS [numeric] | If the answer is less than or EQUALS the custom value |
| is Displayed | If the question is displayed/asked |
| is NOT Displayed | If the question is NOT displayed/asked |
d. If the source question is System Metadata (includes Language, Self-provided Panel, and Device Type),then the conditions are
| System Metadata | LOGIC |
| INCLUDES | If including the defined options from the system metadata |
| does not INCLUDES | If NOT including the defined options from the system metadata |
e. If the source question is URL Metadata (please see more details about URL Meta data here)
| URL Metadata | LOGIC |
| Contains [text] | If the URL metadata mentions the custom word/value |
| does not Contains [text] | If the URL metadata does NOT mention the custom word/value |
| Equals [text] | If the exact URL metadata is only the custom word/value |
| does not Equals [text] | If the exact URL metadata is NOT the custom word/value |
| Greater than [numeric] | If URL metadata is greater than the custom value |
| Greater than OR EQUALS [numeric] | If URL metadata is greater than or EQUALS the custom value |
| Equals [numeric] | If the exact URL metadata is a custom value |
| does not Equals [numeric] | If the exact URL metadata is NOT the custom value |
| Less than [numeric] | If URL metadata is less than the custom value |
| Less than OR EQUALS [numeric] | If URL metadata is less than or EQUALS the custom value |
Please note that Piped options work the same as other options and can be included in the logic system.