Welcome to the LimeSurvey Community Forum

Ask the community, share ideas, and connect with other LimeSurvey users!

How to use token attributes in expression manager when survey is set to anonymou

More
2 weeks 6 days ago #273220 by vytautas.volungevicius
Please help us help you and fill where relevant:
Your LimeSurvey version: 6.15.24
Own server or LimeSurvey hosting: LimeSurvey hosting
Survey theme/template:
==================
(Write here your question/remark)
Hello,

I was wondering if there is a way to use participant attributes to display questions and apply logic to questions when a survey is set to Anonymous?

Problem is that we have a survey where we pass different information for participants, like a list of people to evaluate, department names, positions and so on. 

Lets assume i have attributes:
ATTRIBUTE_1 : DepartmentName,
ATTRIBUTE_2: Manager1,
ATTRIBUTE_3: Manager2,
ATTRIBUTE_4: Employee1
ATTRIBUTE_5: Employee2
...

Some of the questions has attributes in them like "How would you evaluate department {TOKEN:ATTRIBUTE_1}"? 

Some of the questions have display condition only like if {TOKEN:ATTRIBUTE_5} is not null then display question. 

As you can imagine ATTRIBUTE_1 can be different for participants, and attributes 2..5 can also be different for every single participant. 

Based on quick look i would say that em_manager_helper.php needs a change at line 3983://'code' => $anonymized ? '' : $val,'code' => $val,
So that it would allow the use of attributes in question display and logic. 

Or if not maybe then there should be changed checklogic functionality so that in anonymous survey it would not show as correct. 


P.S. Also tried to set default values for questions answers from participant attributes and then use questions but it did not helped too.

Sincerely,
LimeSurvey user

Please Log in to join the conversation.

More
2 weeks 6 days ago #273224 by Joffm
Hi,
it's not a bug, it's a feature.
Consider you entered in these attributes name and email of the participant in an anonymous survey.
This would break the anonymity.

Therefore:
Do not run the survey anonymously,
But observe the professional codes of conduct of the market and opinion research associations in your country, especially ESOMAR (European Society of Opinion and Market Research)

Joffm

Volunteers are not paid.
Not because they are worthless, but because they are priceless

Please Log in to join the conversation.

More
2 weeks 6 days ago #273232 by holch

I was wondering if there is a way to use participant attributes to display questions and apply logic to questions when a survey is set to Anonymous?

Short answer: You can't. 

Long answer: If you can pass data from the token table to the answer table / or use attributes from the token table in the survey, you have a connection between the participant table and its personal data with the responses.

If this is the case, a technically anonymous survey can not be guaranteed by Limesurvey, because you could put personal data into any attribute, pass it into the survey and store it there. This way you would break the anonymity of a survey that Limesurvey says is anonymous. But it isn't. This would totally break the anonymous mode.

So at the end, you want a "non-anonymous anonymous mode", which doesn't make sense from a technical standpoint. 

Now, we as market researches have similar problems as you describe. We need to be able to connect personal data or data about the respondent with the response data. And there comes what I call "ethical anonymity" into play. While we could connect response data with personal data, we follow the ESOMAR code of conduct, which requires us to separate personal data from response data. So we could connect data, but we won't. Of course respondents need to trust us. But that would be same with the "non-anonymous anonymous" mode that you would like to use. People would need to trust you to not pass on personal data to the survey data and store it there.

My opinion: If Limesurvey offers an anonymous mode, there should be no way for users to transfer data from the token table to the survey, as people will expect a technical anonymity (no out of the box ways to circumvent the anonymity mode easily). There are always ways that can be found to go around those things somehow, but why would we do this?

Just tell it how it is: You need certain variables of their profile for the survey to work and for asking the right questions. But you guarantee that you won't connect their survey responses with their person. Ethical anonymity. They will need to trust you anyway.

Help us to help you!
  • Provide your LS version and where it is installed (own server, uni/employer, SaaS hosting, etc.).
  • Always provide a LSS file (not LSQ or LSG).
Note: I answer at this forum in my spare time, I'm not a LimeSurvey GmbH employee.

Please Log in to join the conversation.

More
2 weeks 6 days ago #273239 by jelo

it's not a bug, it's a feature.
 liked the old way since you need attributes as a workaround to control display in certain groups.As long as LimeSurvey is lacking in other parts using attributes inside an anonymous survey is crucial.
As I see a feature request/bug report about that new behaviour is already existing.
bugs.limesurvey.org/view.php?id=20353

The survey creator has to ensure that results don't get into wrong hands.I wonder when there will be a bug report about free text fields and why they have to be no longer allowed inside anoymous surveys ;-)  At least an enforced message above each text field to not enter personal data ;-)  
 

The meaning of the word "stable" for users
www.limesurvey.org/forum/development/117...ord-stable-for-users

Please Log in to join the conversation.

More
2 weeks 5 days ago #273251 by holch
There is a "slight" difference between free text fields, where the survey taker (if not completely dumb), knows that data they post there is part of the responses and can break an anonymous survey.

But if Limesurvey states that the survey is anonymous, in my opinion it needs to guarantee that no personal data from the respondent table can be passed on to the response data.

You can easily have the old way. Just don't do not use the anonymous mode. The old way it was also no real anonymous mode, because you could pass personal data through the attribute fields. So there was actually no anonymous mode.

Today you have an anonymous mode that doesn't allow to pass on attributes (yes, that is the trade off for a technical anonymity), but you can also do the same you had before, run a not anonymous survey and pass on attributes. Then as a survey creator, if you want to guarantee anonymity, you need to promise it and people need to trust you that you actually do it. Just like before with the normal mode AND the anonymous mode.

So before we had a "non-anonymous anonymous" mode and a "non-anonymous" mode. Today you have an "anonymous" mode and an "non-anonymous" mode. I find today's situation a lot better. Because as the anonymity previously could get circumvented easily with out of the box features there was no real anonymous mode. You could have just used the normal mode as well. Almost no difference in anonymity. Today there is a difference. So I think that is a good thing. You can still do everything that could do before. With basically the same level of anonymity (or the lack thereof), but now you can do more.

Help us to help you!
  • Provide your LS version and where it is installed (own server, uni/employer, SaaS hosting, etc.).
  • Always provide a LSS file (not LSQ or LSG).
Note: I answer at this forum in my spare time, I'm not a LimeSurvey GmbH employee.

Please Log in to join the conversation.

Moderators: tpartnerholch

Lime-years ahead

Online-surveys for every purse and purpose