Professional > Interview scripting > Writing interview scripts > Filtering questions and response lists > Filtering categorical response lists > Response lists of answers not chosen at a previous question
 
Response lists of answers not chosen at a previous question
You can create response lists that show answers that were not chosen at a previous question. This is common in brand awareness studies where you have a pair of questions that are used together to find out which brands the respondent can name. The first question is unprompted and asks the respondent to say which brands they know; the second question asks the respondent specifically about any brands not named at the unprompted question.
When you want to apply this sort of filtering, the first step is to define the two questions in the metadata section with the same response list. A shared list is the easiest way to do this but you can type each response list out in full if you prefer. Then, in the routing section, before you ask the second question, filter its response list so that only the responses that were not mentioned at the first question are displayed.
Syntax
Name.Categories.Filter = Name.DefinedCategories() − PrevQname
Parameters
Name
The name of the question whose response list is being set up.
PrevQname
The name of the question whose answers will be excluded from the response list for Name.
Parameters
Here’s an example. The metadata section is:
BrandList define
{
Alpine, Finborough, Alsace,
DairyFresh "Dairy Fresh",
CountryFayre "Country Fayre"
};
OrganicBrandList define
{
HelenBradley "Helen Bradley's",
KentishFarm "Kentish Farm",
NaturesWay "Nature's Way Organic",
SimpleOrganix "Simple Organix"
};
Unaided "Which brands of yogurt can you name?" categorical [1..]
{
use BrandList,
use OrganicBrandList,
OtherUnaided "Other" Other fix,
NoneUnaided "None" excl fix
} asc;
Aided "Which of the following names do you recognize as yogurt
producers?" categorical [0..]
{
use BrandList,
use OrganicBrandList
} asc;
The routing section is:
Unaided.Ask()Aided.Categories.Filter = Aided.DefinedCategories() - Unaided.Response.Value Aided.Ask()
There are two points to notice in this example. First, Unaided has some additional responses defined in its response list. These apply to that question only and do not carry through to the filtering for Aided, because the response list for Aided is based solely on the BrandList and OrganicBrandList shared list. Second, the response range for Aided is specified as [0..] to cater for respondents who do not recognize any brands other than those that they have already mentioned at the previous question.
See also
Filtering categorical response lists