Field Question Response List

After the question type line, you must enter the response list which includes all the possible responses and the codes for each.

The syntax for a response list item is:

(-, skipto label, O or popup=label) Response Code Response Text
  • The parentheses are not required unless you are specifying one of the options.
  • The response text is not required — you could have just a response code.
  • The response codes may be letters and/or numbers; all the codes must be the same length (see caret exception note).
  • The response codes have a maximum of nine characters.
  • Some special characters are allowed as codes (such as period and underscore), but should only be used in special cases and should be tested thoroughly.
  • All alphabetic codes are changed to capital letters when stored in the data (i.e., abc becomes ABC).
  • Each response code for a particular question must be unique.
  • A caret (^) may be used at the end of the response codes as a placeholder in cases where you want different lengths for your response codes.
  • If all carets are used in a response list, this allows an interviewer to press enter as a response.
    • If used, no data will be stored in the FIELD question.
  • The [SAMEAS label] function can be used to use a previous response list.
  • The equal sign (=) option can be used to add in comments within your response list.
  • The dash (-) option is used to designate response codes as exclusive, meaning they cannot be answered with any other response in a multi-response FIELD question.
  • The (skipto label) option is used to skip to a designated question if that response code is chosen.
    • This option CANNOT be used inside of grids.
  • The (o=label or popup=label) options are used to display a question if that response code is chosen.
    • Typically used to “popup” an Other (Specify) question if chosen.
  • Multiple languages can be designated in the response code list.
  • Response items can be rotated within the list.
  • The response text maximum is 5000 characters.
    • The response text can be as long as will fit on one line OR
    • The response text can be continued onto the next line by putting an ampersand (&) at the end of the first line and then each additional line as needed

EXAMPLE:

{ HOME:
Which of the following describes your home?
!FIELD
A Apartment
C Condo
D Duplex
H Home (single-family)
N None of the above }

In the above example, the first initial of each response is used for its code. The code is stored in the data as entered by the interviewer.

EXAMPLE:

{ STATE:
What states have you visited?
!FIELD,,MAXIMUM_RESPONSES=3
CA California
OR Oregon
WA Washington
(-)XX Other }

In the above example, the state code(s) would be stored in the data.  A response of XX cannot be answered with another code, this is an exclusive response and is designated by using a (-) in front of the code. The codes will be placed in the data in response order with no spaces in-between.

EXAMPLE:

{ QLABEL:
Do you like or dislike the product?
!FIELD
YES I like it
NO^ I don’t like it
^^^ }

In the above example, Yes or No can be chosen.  Notice the caret at the end of the “No” response to act as a placeholder for the 3rd character of the response.  If the 3 carets (^^^) is chosen by pressing enter, no data will be stored in the question called QLABEL.

Using the Same Response List Multiple Times

You may want to use the same response list for more than one question.  By using [SAMEAS label] in place of a response list, the program will use the one from the specified question.  The SAMEAS option can only be used if the question exists prior to the current question and the two questions are the same question type.  The [SAMEAS label] option will cause not only the same response codes and text to be used, but also the same exclusive mentions or skip patterns (if any).  The number of responses allowed must be re-specified on the question type line.

EXAMPLE:

{ QLABEL1:
How often do you use a Google search?
!FIELD
5 Very Often
4 Often
3 Sometimes
2 Not Very Often
1 Never }

{ QLABEL2:
How often do you use a Yahoo search?
!FIELD
[SAMEAS QLABEL1] }

In the above example, the response list from question labelled QLABEL1 is used in the QLABEL2 question. The question QLABEL2 will display the responses exactly as they are seen in the question QLABEL1.

Comment-Only (Equal Sign) Response Codes

The equal sign (=) response code indicates that this response cannot be chosen by the interviewer or respondent.  Use this option to format or annotate the screen presented to the interviewer or respondent.  In Highlightcats mode, the highlight bar will be positioned on an equal sign response code if it is the first response, therefore forcing the interviewer to do more than press Enter to move from this question on a single response question.

  • Equal sign response codes must be the same length as other response codes.
  • Equal sign responses will not move in a rotated list unless they are fixed with items, although things can move around them.
  • Parenthesis may not start the text except when used with a list of valid response codes to generate a “Net” category for the DEF file to pass to Mentor.
  • Equal sign responses do not have responses in the data file.
  • You can specify any number of equal sign responses in a single question.
    • Prepare does not count them as duplicate responses.

EXAMPLE:

{ QLABEL:
Field question using comment response codes
!FIELD
== Products
01 Product 1
02 Product 2
03 Product 3
04 Product 4
05 Product 5
== Services
06 Service 1
07 Service 2
08 Service 3
09 Service 4
10 Service 5 }

In the above example the word Product and Services will display on the screen to the interviewer or respondent.  In this example they are used as headers for each section.  Notice there are 2 equal signs used since the response codes are 2 digits.

Skipping Forward or Backward Using Response Codes 

If you want the program to skip to another question when a certain response is given, specify that with SKIPTO label option. The label specifies which question the program should skip to if the response is chosen. If the sending question is multiple response and the responses dictate different skip patterns, the interview will skip to the closest place.

EXAMPLE:

{ QLABEL:
This is an example of using the skipto option.
!FIELD
1 Yes
2 No
(SKIPTO DEMOGRAPHICS)9 Refused }

In the question QLABEL if a 9 is chosen, the program will skip to a question called DEMOGRAPHICS.

NOTE1: This option cannot be used inside of a grid. (See SKIPTO and RESET statements).

NOTE2: Using this option to skip backwards in a questionnaire does not remove previous data. Use only after careful testing!

Pop-up Questions 

If you have a response such as Other (specify), where you do not have that answer listed, but want to give the interviewer or respondent a chance to type in the verbatim before they forget it, you can designate a question to “pop-up” on the screen once that response is chosen. The interviewer or respondent would then type in the verbatim, press Enter or ESC to exit that question, and be placed back on the original question, ready to enter additional responses.

To designate the question that will pop-up, enter O= or POPUP= followed by the question label or number of the question.  The label designated after the equal sign needs to be defined as a VARIABLE or TEXT question.  It will not be executed unless it is called, so you do not have to hide the question or put an IF condition on it.

EXAMPLE:

{  QLABEL_OTHER:
!VARIABLE,,80,2 }
 
{ QLABEL:
This is an example of using the O=label option.
!FIELD
1 Response 1
2 Response 2
3 Response 3
4 Response 4
5 Response 5
(O=QLABEL_OTHER) 6 Other }

In this example if a response code 6 is chosen, a popup verbatim box will display for the interviewer to type in a response.

You must be in Highlightcats or Echocats mode for terminal mode phone surveys. In Highlightcats mode, you will go to the designated question as soon as you have chosen the marked response, and then return to the original question with the existing codes intact (including the “other”) to enter more codes. In Echocats mode, it will ask for the response after all other responses are entered.

FIELD questions support the POPUP= in addition to O= syntax for pop-up question references. You can type “POPUP=QLABEL_OTHER”, for instance, instead of “O=QLABEL_OTHER” when you specify the question that you want to pop up.

Example:

{  QLABEL_OTHER:
!TEXT }
 
{ QLABEL:
This is an example of using the POPUP=label option.
!FIELD
1 Response 1
2 Response 2
3 Response 3
4 Response 4
5 Response 5
(POPUP=QLABEL_OTHER) 6 Other }

Response List Blocks for Languages

You may group response items for purposes of language definition. The blocks start with a left bracket and end with a right bracket.

EXAMPLE:

{ QLABEL:
This is an example of a multiple language block.
!FIELD
[L=EN]
1 Yes
2 No
[L=SP]
1 Si
2 No }

This syntax makes it much easier to define languages than using \L commands to separate the text on each response, especially for long lists or when referring to items using &file references (see Specifying Multiple Languages).

Rotating Code Lists

  • The !ROTATE command is used to rotate list items.
  • !Group and !Fix commands can be used extensively within FIELD lists.
  • Nested rotations within the lists are allowed for complex rotations.
  • Rotation seeds are required when rotating FIELD list items.
    • You can use the same rotate seed to control other questions so that your list and set of questions rotate in the same order.
    • Default length is 10.
  • The !ROTATE command allows all three rotate types (scramble, regular, and flip).
    • Survox recommends using the Scramble rotate 99% of the time.
    • The Flip rotate is good to use for only a few items.
    • Survox never recommends using a Regular rotate unless it’s absolutely necessary since the regular rotate is not a true randomization of items.

(See ROTATIONS for more information)

EXAMPLE:

{ ROTSEED1: HIDE
!VARIABLE,NUMERIC_ONLY,10,10 }
 
{ ROTSEED2: HIDE
!VARIABLE,NUMERIC_ONLY,10,10 }
 
{ QROT:
Nested Rotation Example
!FIELD,,MAXIMUM_RESPONSES=10
!ROTATE,SCRAMBLE,,ROTSEED1
!ROTATE,SCRAMBLE,,ROTSEED2
!FIX,1
== Products
01 Product 1
02 Product 2
03 Product 3
04 Product 4
05 Product 5
!ENDROTATE
!ROTATE,SCRAMBLE,,ROTSEED2
!FIX,1
== Services
06 Service 1
07 Service 2
08 Service 3
09 Service 4
10 Service 5
!ENDROTATE
!FIX,3
==
98 None of the above
99 Refused
!ENDROTATE  }

In this example, the products and services will rotate as well as the items within each of those groups will rotate.  The comment lines will remain at the beginning of each group and will rotate with each group.  The None of the above and Refused response codes will remain at the end of the list and not rotate.