up Inquisit Language Reference

validResponse attribute

The validResponse attribute specifies the set of responses considered valid for a given trial.

Member of

<defaults> <checkboxes> <dropdown> <image> <listbox> <radioButtons> <slider> <textbox> <trial> <openended> <sliderTrial>

Syntax

/ validResponse = (character, character,...)

or

/ validResponse = (scancode, scancode, ...)

or

/ validResponse = (anyResponse, noResponse, ...)

or

/ validResponse = (stimulusname, stimulusname, ...)

or

/ validResponse = (mouseevent, mouseevent, ...)

or

/ validResponse = (gamepadevent, gamepadevent, ...)

or

/ validResponse = (joystickevent, joystickevent, ...)

or

/ validResponse = (word, word, ...)

or

/ validResponse = (keyword)

or

/ validResponse = (expression, expression, ...)

Parameters

Name Type Description
character string A character indicating a valid keyboard response.
scancode integer An integer specifying the scancode of a valid keyboard response. To determine the scancode of a given key, use the "Keyboard Scancode..." command on Inquisit's Tools menu, or see the scancodes table for corresponding key value assignments.
mouseevent mouseeventenum
ValueDescription
dragDropDragging and dropping a stimulus
lButtonDblClkLeft button double-click.
lButtonDownLeft button press.
lButtonUpLeft button release.
mButtonDblClkMiddle button double-click.
mButtonDownMiddle button press.
mButtonUpMiddle button release.
mouseMoveMoving the mouse
mouseWheelMoving the mouse wheel
rButtonDblClkRight button double-click.
rButtonDownRight button press.
rButtonUpRight button release.
xButton1DblClk
xButton1Down
xButton1Up
xButton2DblClk
xButton2Down
xButton2Up
xButtonNDblClk
xButtonNDown
xButtonNUp
gamepadevent gamepadeventenum
ValueDescription
buttonAButton a.
buttonBButton b.
buttonCenterCenter button.
buttonDownDown button.
buttonGuideGuide button.
buttonL1Button 1.
buttonL2Button 2.
buttonL3Button 3.
buttonLeftLeft direction button.
buttonR1Right shoulder button.
buttonR2Right trigger button.
buttonR3Right stick button.
buttonRightRight direction button.
buttonSelectSelection button.
buttonStartStart button.
buttonUpUp direction button.
buttonXX button.
buttonYY button.
changeAny change in the gamepad controls.
leftThumbstickBackLeft thumbstick back value.
leftThumbstickForwardLeft thumbstick forward value.
leftThumbstickLeftLeft thumbstick left value.
leftThumbstickRightLeft thumbstick right value.
rightThumbstickBackRight thumbstick back value.
rightThumbstickForwardRight thumbstick forward value.
rightThumbstickLeftRight thumbstick left value.
rightThumbstickRightRight thumbstick right value.
joystickevent joystickeventenum
ValueDescription
backJoystick moved back.
button1Button 1 was pressed.
button10Button 10 was pressed.
button11Button 11 was pressed.
button12Button 12 was pressed.
button13Button 13 was pressed.
button14Button 14 was pressed.
button15Button 15 was pressed.
button16Button 16 was pressed.
button17Button 17 was pressed.
button18Button 18 was pressed.
button19Button 19 was pressed.
button2Button 2 was pressed.
button20Button 20 was pressed.
button21Button 21 was pressed.
button22Button 22 was pressed.
button23Button 23 was pressed.
button24Button 24 was pressed.
button25Button 25 was pressed.
button26Button 26 was pressed.
button27Button 27 was pressed.
button28Button 28 was pressed.
button29Button 29 was pressed.
button3Button 3 was pressed.
button30Button 30 was pressed.
button31Button 31 was pressed.
button32Button 32 was pressed.
button4Button 4 was pressed.
button5Button 5 was pressed.
button6Button 6 was pressed.
button7Button 7 was pressed.
button8Button 8 was pressed.
button9Button 9 was pressed.
changeThe state of a button, slider, or joystick changed.
downJoystick moved down.
forwardJoystick moved forward.
leftJoystick moved left.
pov1BackPoint of view 1 moved back.
pov1ForwardPoint of view 1 moved forward.
pov1LeftPoint of view 1 moved left.
pov1RightPoint of view 1 moved right.
pov2BackPoint of view 2 moved back.
pov2ForwardPoint of view 2 moved forward.
pov2LeftPoint of view 2 moved left.
pov2RightPoint of view 2 moved right.
pov3BackPoint of view 3 moved back.
pov3ForwardPoint of view 3 moved forward.
pov3LeftPoint of view 3 moved left.
pov3RightPoint of view 3 moved right.
pov4BackPoint of view 4 moved back.
pov4ForwardPoint of view 4 moved forward.
pov4LeftPoint of view 4 moved left.
pov4RightPoint of view 4 moved right.
rBackRotate back.
rDownRotate down.
rForwardRotate forward.
rightJoystick moved right.
rLeftRotate left.
rRightRotate right.
rUpRotate up.
slider1LeftSlider 1 moved left.
slider1RightSlider 1 moved right.
slider2LeftSlider 2 moved left.
slider2RightSlider 2 moved right.
upJoystick moved up.
response responseenum
ValueDescription
anyResponseAny response.
noResponseNo response.
stimulusname visualstimulus The name of a stimulus element defined elsewhere in the script.
word string A string (in quotes) indicating a valid spoken or openended response.
keyword responseenum
ValueDescription
anyResponseAny response.
noResponseNo response.
expression value A dynamic expression that resolves to response value.

Remarks

This attribute specifies an array of responses considered valid for this trial. Inquisit uses this attribute to determine whether a subject's response should be considered a valid possible response for the trial, or whether is should be ignored. The syntax of the settings depends on the type of input device used (e.g., mouse, keyboard, voice) as defined by the inputDevice attribute.

For all input devices, "noResponse" can be specified to indicate that the absence of a response should be considered a valid response. This setting can be used in conjunction with the timeout attribute to implement "go/no go" tasks.

For voice and openended input, the validResponse can be set to a stimulus name, in which case the all of the possible items in that stimulus are considered a valid responses.

For mouse input, the validResponse can be set to a visual stimulus name, in which case the subject may click on the area of the screen occupied by the stimulus. For overlapping visual stimuli, Inquisit evaluates whether the mouse click hits a stimulus according to the order in which stimuli are listed in validResponse. Thus, if a click falls within the region of two or more stimuli, the response will be counted as the whichever stimulus is listed prior to the others.

Examples

In the following trial, pressing the space bar or "8" key is considered valid:

<trial myTrial>
/stimulusTimes=[0=myText]
/ inputDevice=keyboard
/ validResponse=(" ", "8")
</trial>

In the following trial, pressing the key with a scancode or character value equal to the value.leftresponse and value.rightresponse properties is considered valid:

<trial myTrial>
/stimulusTimes=[0=myText]
/ inputDevice=keyboard
/ validResponse=(values.leftresponse, values.rightresponse)
</trial>

In the following trial, pressing the tab key is considered valid:

<trial myTrial>
/stimulusTimes=[0=myText]
/ inputDevice=keyboard
/ validResponse=(15)
</trial>

In the following trial, a right mouse press is considered valid:

<trial myTrial>
/stimulusTimes=[0=myText]
/ inputDevice=mouse
/ validResponse=(rButtonDown)
</trial>

In the following trial, pulling the left joystick back is considered valid:

<trial myTrial>
/stimulusTimes=[0=myText]
/ inputDevice=joystick
/ validResponse=(leftthumbstickback)
</trial>

In the following trial, a clicking the area on the screen occupied by the "myText" stimulus is considered valid:

<trial myTrial>
/stimulusTimes=[0=myText]
/ inputDevice=mouse
/ validResponse=(myText)
</trial>

In the following trial, pronouncing the currently selected item in "myText" is considered valid:

<trial myTrial>
/stimulusTimes=[0=myText]
/ inputDevice=voice
/ validResponse=(myText)
</trial>

In the following trial, typing the currently selected item in "myText" is considered valid:

<openended myTrial>
/stimulusTimes=[0=myText]
/ validResponse=(myText)
</openended>

In the following trial, typing "yes" is considered valid:

<openended myTrial>
/stimulusTimes=[0=myText]
/ validResponse=("yes")
</openended>

In the following trial, the absence of a response before the 1000 millisecond deadline is considered valid:

<trial myTrial>
/stimulusTimes=[0=myText]
/ inputDevice=voice
/ validResponse=(myText)
/ validResponse=(noResponse)
/ timeout = 1000 </trial>

Copyright Millisecond Software, LLC. All rights reserved.