Scenario: Sometimes, an answer to a given question may conduct to skip an entire section or only some of the questions in the same section or in other sections, also some questions can be turned off in different sections or changed by other questions.
- It has been found that the system allows a question not to be presented depending on the answers obtained in one or several previous questions. The way to do it is to write a validation on each one of the subsequent questions that may be skipped. This approach makes the design of questionnaires a complicated and tedious task. Is there a practical solution to solve this situation?
Simply write an enablement condition that dictates when a questionnaire object–question, section, sub-section, or roster row–should administered. If the object is always administered, there’s no need for a condition. If the object is administered only under certain conditions, one writes the conditions under which the object is administered. The complexity of the task is a function of the complexity of the condition.
Enabling conditions are how you implement skip codes in Survey Solutions. Instead of syntax to skipping to a certain question or question, the enabling conditions determines when the question will appear. If the condition evaluates to “True”, then the question/section/subsection/roster item will appear to the interviewer. If not, then it will be grayed out/not appear and effectively be skipped.
It is better to think about it as “when should this question be answered?” or “when should the respondent be asked this question?” when writing the enabling condition. And if a certain question/section has to be filled out for everyone, then it does not require an enabling condition.
Implementing skip logic in the way you have described will be unnecessarily complex.
Or put those subsequent questions in a sub-section and write a condition once on that subsection.