command /required=true does not work for questions included in blocks


command /required=true does not work for questions included in blocks

Author
Message
Giulio
Giulio
Respected Member
Respected Member (391 reputation)Respected Member (391 reputation)Respected Member (391 reputation)Respected Member (391 reputation)Respected Member (391 reputation)Respected Member (391 reputation)Respected Member (391 reputation)Respected Member (391 reputation)Respected Member (391 reputation)

Group: Forum Members
Posts: 2, Visits: 1

Hi,


I'm experiencing some problems in using command /required.


I want subjects to respond to some radiobuttons, and these radiobuttons are included in surveypages, that are in turn included in blocks elements (and cannot be included in survey elements). Each block is called many times (50 in the original script). I specify /required=true at the level of the radiobutton: this works well only the first time the block is called, but for the following times if the subject does not respond, the script does not forces him to answare before going on.


By inspecting the output I realized that Inquisit keeps in memory the latest answare to the radiobutton, and if the subject skips the question, Inquisit behaves such as the subject had given the same answare as before.


The problem have been solved in Inquisit 4, but I do not want to use a beta version, because I have to test many subjects in a single lab session, and it would be a big issue for me if something went wrong.


Is there any way to fix it in inquisit 3.0.6.0, at the level of the script? (e.g., some trick to flush inquisit memory before a new block begins?)


Here I post a brief script that reproduces the problem


__________________



<expt>


/ blocks = [1-10=block1]


</expt>



<block block1>


/ trials = [1=surveypage1]


</block>



<surveypage surveypage1>


/ questions = [1=radiobuttons1]


</surveypage>



<radiobuttons radiobuttons1>


/ caption = "A mandatory question"


/ options = ("option1", "option2")


/ orientation = vertical


/ required = true


</radiobuttons>


___________________



Thank you,


Giulio


Dave
Dave
Supreme Being
Supreme Being (678K reputation)Supreme Being (678K reputation)Supreme Being (678K reputation)Supreme Being (678K reputation)Supreme Being (678K reputation)Supreme Being (678K reputation)Supreme Being (678K reputation)Supreme Being (678K reputation)Supreme Being (678K reputation)

Group: Administrators
Posts: 9.8K, Visits: 46K

Is there any way to fix it in inquisit 3.0.6.0, at the level of the script? (e.g., some trick to flush inquisit memory before a new block begins?)


Unfortunately there isn't. All you can do is set up 50 *different* <radiobuttons>, etc. elements, so that every element is only run once across the whole script.


Giulio
Giulio
Respected Member
Respected Member (391 reputation)Respected Member (391 reputation)Respected Member (391 reputation)Respected Member (391 reputation)Respected Member (391 reputation)Respected Member (391 reputation)Respected Member (391 reputation)Respected Member (391 reputation)Respected Member (391 reputation)

Group: Forum Members
Posts: 2, Visits: 1

Thank you for answering so fast.


Ok, I'll use the 50 radiobuttons and wait for an official relase of Inquisit 4Smile


Jeff
Jeff
Guru
Guru (5.9K reputation)Guru (5.9K reputation)Guru (5.9K reputation)Guru (5.9K reputation)Guru (5.9K reputation)Guru (5.9K reputation)Guru (5.9K reputation)Guru (5.9K reputation)Guru (5.9K reputation)

Group: Forum Members
Posts: 39, Visits: 95

So just to clarify, is it only the radiobuttons that need to be unique for each question, only the survey pages that have to be unique, or both?  We have questions that vary in terms of the number of responses that are displayed for each question so we branch from an initial surveypage to a second surveypage that includes the radiobutton with the appropriate number of responses (and the formatting):




<surveypage test_trials_part1>


/ questions = [1 = caption_macro]


   / stimulustimes = [1= within_block_progress_report, item_index_report, block_report, caption_report, buttons_report]


   / branch =    [if (values.radiobuttonsneeded == 1) surveypage.test_trials_part2a]


   / branch =    [if (values.radiobuttonsneeded == 2) surveypage.test_trials_part2b]


...


</surveypage>



<surveypage test_trials_part2b>


   / questions = [1 = radiobutton_1b; 2 = prompts]


   / stimulustimes = [1=picture_macrovar]


</surveypage>




<radiobuttons radiobutton_1b>


   / caption = "Acceptable Responses       "


   / options = ("WRONG" , 


               "<% getitem(counter.option1,values.item_index) %>" , 


               "<% getitem(counter.option2, values.item_index) %>") 


   / other = "Other"


/ required =  true


   </radiobuttons>



The reason I ask is that we have 400-600 items that we are creating (then administering a subset to each participant), and if both are required uniquely, then that means we've just expanded our 2 surveypage and 5 radiobutton elements to 400-600 of each.  Yikes!



Thanks,


Jeff




Dave
Dave
Supreme Being
Supreme Being (678K reputation)Supreme Being (678K reputation)Supreme Being (678K reputation)Supreme Being (678K reputation)Supreme Being (678K reputation)Supreme Being (678K reputation)Supreme Being (678K reputation)Supreme Being (678K reputation)Supreme Being (678K reputation)

Group: Administrators
Posts: 9.8K, Visits: 46K

So just to clarify, is it only the radiobuttons that need to be unique for each question, only the survey pages that have to be unique, or both?


Both (unless I'm terribly mistaken). But you should be able to test that for yourself without much effort. A minimal test case would be


<block myblock>
/ trials = [1=pg1; 2=pg2]
</block>

<surveypage pg1>
/ questions = [1=q1]
</surveypage>

<surveypage pg2>
/ questions = [1=q1]
</surveypage>

<radiobuttons q1>
/ caption = "You should not  be able to move on without answering me. However, if you reuse me on multiple pages, that won't work."
/ options = ("A","B")
/ required = true
</radiobuttons>


If you can submit the 2nd page without providing a response to q1 (which is what actually happens), you have your answer. You can't reuse questions on multiple pages if you need to rely on /required=true, unfortunately.


GO


Reading This Topic


Login
Existing Account
Email Address:


Password:


Social Logins

Select a Forum....






Millisecond Forums


Search