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, and pressing Enter on an empty single box shows the error message and keeps the trial open (without it, that Enter is ignored); 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.