responseOptions
Experiments Surveys & forms In surveys it lists the answer choices; on experiment trials the same cell configures the response widget (slider, box, clicks, mic, sort).
A column with several distinct uses: what it means depends on the trial’s responseType (and, for surveys/forms, on the question type). It carries: (a) the list of answer choices for form/survey questions and label responses, (b) slider configuration, (c) input-box constraints, (d) click-response settings, (e) microphone recording settings, and (f) response-flow flags (min/max multiple responses, waitResponseWindow, waitTimeout, noButton).
Syntax
Section titled “Syntax”For a survey or form question, list the answer choices separated by ;: Never;Sometimes;Often. That is the most common use.
Everything in the cell is written as ;-separated values and flags. What those values mean depends on the trial’s responseType:
- Form/survey choices (
responseType=radio,checkboxes,dropdown,rank,likert, or a matrix built withresponseRows):;-separated choice texts; empty segments are ignored and%var%variables are replaced. A choice ending in:exclusivebecomes a mutually exclusive checkbox option, with the keyword removed from the displayed text. - Slider (
responseType=slider, standalone or in a form): the first segment ismin_max,min_max_step, or a_-separated list of labels; numeric endpoints may carry a label in parentheses, as in0(low)_10(high). Later segments: an optional start value (a number, or one of the labels), then any of the flagshideValue,hideStart,hideGrid,hideMinMax,hideLabels,removeFill.noButtonremoves or defers the Next button. - Input boxes (
responseType=box/box*N):option:valuepairs separated by;, namelysum:N,min:N,max:Nandwidth:N, plus HTML input attributes such aspattern:"[0-9]+",placeholder:...andmaxlength:....type:accepts color, date, datetime-local, email, month, number, range, tel, text, time, url and week; quotes around a value are removed. - Clicks (
responseType=clicks): flags can be written in any case:min:N/max:N(multi-click selection),pixel(report pixel coordinates),origin:center|topright|bottomleft|bottomright(shift the coordinate origin),grid(RxC)(bucket clicks into an RxC grid; ignored whenpixelis present). - Mic (
responseType=mic): flags can be written in any case:saveorsave:MS(save a recording anchored on the voice onset; 1000 ms by default),save:all(record the entire trial from trial start; impliesstart:trial),save:no(never save),start:trial(start recording at trial start instead of at voice onset),prevoice:N(keep N ms of audio before the detected voice onset),noHide,hideRec.save:all,save:no,start:trialandprevoice:Nmust each be their own;-separated segment;save,noHideandhideRecare recognized anywhere in the cell. - Sort trials:
;-separated stimulus positions (2;4;5) or alower:upperrange (2:5) saying which stimuli are sortable. - Keyboard and default trials:
min:N/max:N(spaces around:are allowed) let the participant give several key responses. - Flow flags (any responseType):
waitResponseWindowkeeps the trial open until the response window closes even after a response;waitTimeoutprevents the response window’s timeout from closing it. - Scoring labels: with a
scorecolumn, the;-separated segments here are the response values that map, in order, onto the;-separated numbers inscore.
Options
Section titled “Options”| Token / segment | Applies to | Effect |
|---|---|---|
text;text;... | forms, label, rank, likert, matrix | Choice list, order = display order (unless responseOptionsRandom) |
choice:exclusive | checkboxes | Exclusive option (unchecks/blocks others) |
min_max, min_max_step | slider | Numeric range and step (default step 1) |
N(label) endpoints | slider | Endpoint labels: 0(not at all)_10(very) |
lab1_lab2_lab3 | slider | Discrete labeled slider (values 1..n) |
number or label after first ; | slider | Start position |
hideValue | slider | Never show tooltip value |
hideStart | slider | Hide handle until touched; untouched slider records NA |
hideGrid, hideMinMax, hideLabels | slider | Hide the respective chrome |
removeFill | slider (standalone + forms) | Hide the filled bar |
noButton | slider (standalone) | No auto Next button |
sum:N | box | All boxes must sum to N; boxes become type=number |
min:N / max:N | box | Per-box numeric bounds; boxes become type=number |
width:N | box | Box width in px |
attr:value (e.g. pattern:"\d+", type:email, placeholder:x, maxlength:5) | box | Set as HTML input attribute |
min:N / max:N | keyboard/default trials | Multiple responses: confirm after >=min, auto-end at max |
min:N / max:N | clicks | Multi-click selection with Confirm button |
N (standalone segment) | clicks | No effect; use min:/max: instead (see Tips & gotchas) |
pixel | clicks | Response is stim_topxleft pixel position |
origin:center/topright/bottomleft/bottomright | clicks + pixel | Shift coordinate origin; only works when origin: is the sole x:y pair in the cell (see Tips & gotchas) |
grid(RxC) | clicks | Response bucketed to grid cell |
save, save:MS | mic | Save an onset-anchored recording; MS = duration in ms (default 1000) |
save:all | mic | Record the whole trial from trial start (forces start:trial); without buttons, keyboard or a responseWindow timeout the trial can never end |
save:no | mic | Never save the recording, even if another segment contains save |
start:trial | mic | Start recording at trial start instead of at voice onset |
prevoice:N | mic | Keep N ms of audio before the detected voice onset in the saved file |
noHide, hideRec | mic | Keep stimuli visible / hide the REC-waiting indicator; only unsaved voice-key trials ever hide stimuli, saved and start-at-trial recordings stay visible |
2;4;5 or 2:5 | sort | Which stimulus indices are sortable |
waitResponseWindow | any | Do not end trial before the response window closes |
waitTimeout | any | Response-window timeout does not close the trial |
| left blank | all | No options |
Defaults & missing values
Section titled “Defaults & missing values”- With no
responseOptionscolumn, or with the cell left blank, the trial falls back to the plain behavior of its response type: no answer choices, no extra flags, no multiple responses, and nothing recorded from the microphone. - Form question types that need choices (
radio,checkboxes,dropdown,rank,likert) should always fill this column in. Left blank, the question has nothing for the participant to pick. - Slider defaults: step
1, the handle starts at the minimum, and none of the hide flags apply. The scale is numeric unless the first segment is not a number, or has more than three_-separated parts, in which case those parts become labels with the values 1 to n. - Sort trials with the cell left blank have no sortable stimuli.
Works with
Section titled “Works with”responseType: decides which of this column’s meanings applies, both on test trials and in form questions.responseOptionsRandom: any value shuffles the choice order shown to the participant;responseCodein the results still counts positions in the ORIGINAL order you wrote here.responseRows: turns choices into matrix columns, one row perresponseRowsentry.responseOther: appends an “other” choice with text input.keyboard:min:/max:here is what enables multiple keyboard responses; see thekeyboardpage.key: for radio/dropdown/rank/checkboxes the expected answer is usually expressed asresponseCode=Nagainst the 1-based position in this column’s original order.score: this column’s segments are the lookup keys for thescorecolumn’s values.required: with box responses, any value inrequiredforces every box to be filled in before the trial can be submitted; with sliders, it hides the automatic Next button until the slider is touched.responseWindow: thewaitResponseWindowandwaitTimeoutflags change how the response window opens and closes the trial. The minimum-duration lock is written asmin:in theresponseWindowcolumn itself, not here.- Multiplayer:
responseOptionsis one of the columns shared to the arena. - Dynamic lists and variables: on form trials the expanded dynamic-list value is used, and variables in the cell are substituted before the question is built.
Examples
Section titled “Examples”| type | head | responseType | responseOptions | responseOptionsRandom |
|---|---|---|---|---|
| test | How do you feel today? | radio | Bad;Neutral;Good;None of these:exclusive | 1 |
type,head,responseType,responseOptions,responseOptionsRandom test,How do you feel today?,radio,Bad;Neutral;Good;None of these:exclusive,1
Randomized radio choices; responseCode records the position in the written (unrandomized) list.
| type | stim1 | responseType | responseOptions |
|---|---|---|---|
| test | pain_scale | slider | 0(no pain)_10(worst pain);5;hideValue;removeFill |
type,stim1,responseType,responseOptions test,pain_scale,slider,0(no pain)_10(worst pain);5;hideValue;removeFill
Numeric slider 0-10 with endpoint labels, starting at 5, tooltip hidden, fill bar removed.
| type | stim1 | stimFormat | responseType | responseOptions |
|---|---|---|---|---|
| test | map | .jpg | clicks | pixel;origin:center |
type,stim1,stimFormat,responseType,responseOptions test,map,.jpg,clicks,pixel;origin:center
Click response on the image reported as pixel coordinates relative to the image center. Do not add min:/max: (or any other x:y pair) to a cell that uses origin: (see Tips & gotchas); plain pixel;min:1;max:3 without origin: is fine.
Tips & gotchas
Section titled “Tips & gotchas”- On click trials
min:/max:must be written without spaces around the colon; on keyboard trials spaces are tolerated. - The standalone number for clicks does nothing;
min:/max:is what controls how many clicks are collected. pixelandgrid(...)cannot be combined:pixelwins.
- For form sliders with label lists, the recorded response is the label text and
responseCodeis the slider’s numeric value. - An untouched STANDALONE slider only records
NAwhenhideStartis present. An untouched slider inside a form always recordsNA, with or withouthideStart, even though the handle was showing its start value. A form slider the participant deliberately sets to0records0, notNA, and a required slider cannot be submitted untouched at all. - Input attributes written in this column are only applied to input boxes, whatever the trial’s response type.
- The standalone
boxandcommentresponse types split the cell on:as well as;, so labels containing a colon behave differently there.
Common combinations
Section titled “Common combinations”responseOptions appears in these worked recipes:
- Label choice task: Let participants assign on-screen text labels to images by drag and drop, requiring a minimum amount of labelling before they can continue.
- Likert block in random order: Present a block of likert questions in a fresh random order per participant, with the answer options in a fixed order.
- Slider rating trial: Rate each stimulus on a configurable slider scale inside an experiment trial.
- Voice-recorded picture naming: Collect spoken picture-naming responses, saving an audio recording and the voice onset for every trial.
- Factorial vignette study: Show each participant one version of a scenario from a factorial design, then have everyone rate it on the same questions.