Add special values to linked questions


Several question types have user-provided special values. Formally, numeric questions do. Informally, non-linked single-select and multi-select questions do, insofar as one can add “don’t know” as an option. However, once a single-select or multi-select question becomes a linked question, special values are no longer possible. Yet special values are desirable for linked questions. The most common use case is a question that asks for the ID of the person who did something: if a household member, their ID; if a non-member, a special code that describes them (e.g., guest).

Affected subsystems

Since this proposed feature would invovle modifying a question type, I presume it would affect all sub-systems. However, the impact to the subsystems would be a function of how much implementation required extending the definition of a single-select and multi-select linked question.


This has been a long-standing request for surveys where linked questions aim to identify who–members and/or non-members do something (e.g., own/control assets, consume food, etc.).

Here’s a an old forum thread that asked if this were possible.


There are several surveys this would benefit.

Going to the field shortly: Bangladesh Individual Consumption Study (BICS).

Going to the field at regular intervals: LSMS surveys that ask about access, ownership, and control of assets:

  • Malawi Integrated Household Survey (IHS)
  • Tanzania National Panel Survey
  • Nigeria General Household Survey


For the most part, questions on paper that ask for ID codes of members and codes for non-members can be reformulated into multiple questions:

  • Is there anyone within the household
  • Who within the household
  • Is there anyone outside the household
  • What type of person outside the household

What is the effect of this feature?

This could reduce:

  • Time to develop CAPI application (e.g., create 1 question rather than 4 as in example above)
  • Size of CAPI applicaiton


While not limits, per se, these are cases that need to be thought about:

  • How to avoid collision between list/roster index values and special values (e.g, household member IDs can range from 1 to 60, special values need to be in a non-overlapping range). Perhaps this could be negative values.
  • How to manage cases where selections from a multi-select linked question trigger a roster. The rowcodes in the roster need to mirror the indices of the selections. Perhaps the special values would need to be positive numbers that are larger than the largest value that a linked multi-select could assume.