Millisecond Forums

interoperation with other online software package (Qualtrics)

https://forums.millisecond.com/Topic3369.aspx

By Rikkie - 9/15/2009

Hi,


I'd like to redirect my participants to another online software package (Qualtrics). Inquisit comes first, qualtrics comes next. Of course, I want to merge the Inquisit data with the Qualtrics data, but therefore, I have to forward the Inquisit subject ID to Qualtrics. How do I have to do this? I hope someone can help me.


regards, Hendrik

By Dave - 9/15/2009

Hi Hendrik,


this has been discussed before. There's a lengthy explanation by Sean right here: http://www.millisecond.com/forums/Topic1771.aspx#1771. And the Inquisit helpfile also sports a topic on this matter: http://www.millisecond.com/support/docs/v3/html/howto/interopsurveys.htm. I suggest you read through these and then post back here if you encounter additional problems.


Hope this helps,


~Dave

By Rikkie - 9/17/2009

Hi Dave,


Thanks a lot, but what if Inquisit comes first? In the explanation in the help file, the Inquisit part comes in between two other on line surveyes. In the example, the query parameter option is used to capture the subject number that is embedded in the URL. However, if Inquisit comes first, the subjectnumber has to be generated by Inquisit and has than to be forwarded to the other on line survey. So, how can I add additional information to the URL if subject numbers are generated by Inquisit?


regards, Hendrik


By Dave - 9/18/2009

I think the trick is to always start with the survey app. Have your participants start with a Qualtrics survey page that e.g. contains general information about the research they're about to participate in. Qualtrics will do it's magic and generate a subject id. After the info page, have Qualtrics redirect participants to the Inquisit page. Set Inquisit up to use the id generated by Qualtrics as subject number. Then let Inquisit redirect participants back to Qualtrics via the finishpage settings to complete the 'real' Qualtrics survey. Someone please correct me if I'm wrong.


~Dave


By Rikkie - 9/18/2009

I tried it, but Qualtrics generates alpha numeric subject'numbers' which seems not compatible with Inquisit...


regards, Hendrik

By seandr - 9/18/2009

Hi Hendrik,


Inquisit should handle alphanumeric IDs just fine. What problems are you running into with the subject ID?


-Sean

By Dave - 9/18/2009

Inquisit should handle alphanumeric IDs just fine.


Even if the script expects a numeric id? E.g.


<expt>
/ subjects = (1 of 2)
[...]
</expt>

<expt>
/ subjects = (2 of 2)
[...]
</expt>


Just asking out of general interest... BTW, Sean, can you confirm this?


I think the trick is to always start with the survey app. Have your
participants start with a Qualtrics survey page that e.g. contains
general information about the research they're about to participate in.
Qualtrics will do it's magic and generate a subject id. After the info
page, have Qualtrics redirect participants to the Inquisit page. Set
Inquisit up to use the id generated by Qualtrics as subject number.
Then let Inquisit redirect participants back to Qualtrics via the
finishpage settings to complete the 'real' Qualtrics survey. Someone
please correct me if I'm wrong.


Thanks,


~Dave

By seandr - 9/18/2009

In that case you would need to add "/groupassignment=random".


<expt>
/ subjects = (1 of 2)
/ groupassignment = random
</expt>

<expt>
/ subjects = (2 of 2)
/ groupassignment = random
</expt>


-Sean

By Dave - 9/18/2009

Thanks. I thought so. Any chance I can get an answer to my second question, too? Let me rephrase it: Is the correct way to have an online survey app and Inquisit share the same subject ID to always start with the survey app?

By seandr - 9/18/2009

Yes, that's the way to do it.


-Sean

By Dave - 9/18/2009

Thank you very much!

By Rikkie - 9/20/2009

Fantastic, it works!


without "/groupassignment=random", Inquisit closes automatically and redirects you immediately to the URL you specified in the settings.


many thanks, Hendrik

By seandr - 9/21/2009

Great!


The reason Inquisit bails without /groupassignment =random is that with a non-numeric id, it doesn't find any experimental conditions that apply.


Glad you are up and running.


-Sean

By so-tee - 1/21/2013


Hey!


I just want to double check something.


In my survey I am also using alphanumeric IDs (e.g. CA868804) so I figure I should also add /groupassignment =random under < exp > when I make Inquisit take subject IDs from the survey.


Does Inquisit make sure that the number of people assigned to all experimental groups (in my case 6) is roughly equal? The following shows up in the script registration wizard. 

























Subject ID Mode



URLQuery Parameter



Group ID Mode



Random Selection Without Replacement




I thought maybe the second row tells me Inquisit is doing exactly that? If it isn't, how can I tell it to keep the number of people assigned to the different groups roughly the same?

By Dave - 1/21/2013

Given a sufficiently large number of participants, randomness itself will lead to roughly equal Ns across your groups. Inquisit does not provide any explicit means to control those.


Also, if you want subjects assigned to groups based on the groupid, you need to set groupassignment to 'groupnumber', not 'random'. See the documentation for the /groupassignment attribute for details.

By so-tee - 1/21/2013

Given a sufficiently large number of participants, randomness itself will lead to roughly equal Ns across your groups. Inquisit does not provide any explicit means to control those.


Yes of course that makes sense. I am hoping to have at least 100 participants in the end - that will hopefully be enough for randomness.


Also, if you want subjects assigned to groups based on the groupid, you need to set groupassignment to 'groupnumber', not 'random'. See the documentation for the /groupassignment attribute for details.


I am not sure what you mean by this - or rather: I know and understand what you are saying, but am not sure why/how it is relevant to my problem.


This is what I am doing: I am using the site soscisurvey.de for my questionnaire. Participants will start out there by giving the alphanumeric participant code I provide them with. At some point in the questionnaire, they will be forwarded to Inquisit. The forwarding link has the participant code in it and I told Inquisit to get it from there, use it as subject ID and send participants back to the survey with attached subjID after IAT completion (this is all working perfectly).


From what I read above, assigning participants to groups based on the subject ID wouldn't work in my case because they are alphanumeric, right? And in my case, there is no group ID that participants are assigned by the questionnaire - that left me with "random" as solution. (the six different <exp> in my script are for counterbalancing block order to avoid practice effects. I really don't care which participant does which experiment, as long as its roughly balanced.)


Maybe I am missing the obvious here - I am quite the Inquisit newbie.

By Dave - 1/21/2013

Inquisit 4 allows you to assign participants to between-subjects-groups (e.g. different <expt>s) not only based on a numerical subject id but *also* based on a numerical group id. They are independent. I.e., if you have an *alphanumerical* subject id (which is unsuitable for condition assignment), you can still have a *numerical* group id (which *is* suitable for condition assignment). You need to set your scripts up accordingly via the correct /groupassignment mode.

By so-tee - 1/21/2013

Ok. I think in my case it will actually be easiest to use the subjID and random assignment to groups.


Just out of interest though: in another thread (http://www.millisecond.com/forums/Topic1764.aspx?PageIndex=3) you said "there currently is no other way to capture query parameters in the data file other than using it as subject id". So how would I capture group ID when forwarding from survey to Inquisit? I think I know how to append a second parameter that could be group ID to the forwarding link to Inquisit, but according to what you said in the other thread, Inquisit would then not know how to use it?! Also, I don't know how my questionnaire would handle the added parameter when Inquisit forwards back to it (I just tried, and it seems not to care - but I am not convinced yet).

By Dave - 1/21/2013

you said "there currently is no other way to capture query parameters in the data file other than using it as subject id"


This was and by and large still is correct. It does not touch on group id in any way, however.


So how would I capture group ID when forwarding from survey to Inquisit?


If it is provided by your survey app by the same way the subject id is captured: Read out the query parameter. Otherwise have the Inquisit launch page generate a group id. Group id is logged automatically to the data file in Inquisit 4, see the documentation for the <data> element, specifically the default data recording scheme for details.


To explicitly log it, use the script.groupid property in your <data> element's /columns attribute.


Inquisit does not care about any additional query parameters -- whatever you send in will be sent out.

By so-tee - 1/21/2013

Read out the query parameter. Otherwise have the Inquisit launch page generate a group id.


My Inquisit Web Script Wizard only gives me the option of specifying how subjIDs should be generated and enter the name of *the* query parameter that contains subjID. How do I make it read out another query parameter or generate any kind of group ID?


I am sorry to be asking all these questions - I have been sitting in front of this computer screen for a good 12h now and my head is spinning. I feel like I am being very dense, but I honestly have no clue.

By Dave - 1/21/2013

Group IDs are exclusive to Inquisit 4. They are not available in Inquisit 3.