Dit werkt met de zogenaamde 'relevance equation'. Dit is een zogenaamde logische expressie, een uitdrukking die als true ('waar') of false ('onwaar') kan evalueren. Stel je voor dat je twee vragen hebt, "land" (met opties 1, Nederland, en 2, Belgie) en attitude, waarbij je de attitude alleen wil meten bij Nederlanders. Je kunt bij attitude dan de volgende relevance equation instellen:
land==1
Deze logische expressie evalueert naar true als de waarden aan weerszijden van het 'is gelijk aan-teken' (==) gelijk zijn, en anders naar false.
Deze vraag wordt dan dus alleen getoond als 'land' 1 is.
Je kunt ook logische expressies combineren in nieuwe logische expressies. Stel dat we ook een vraag 'geslacht' hebben, met 1 (man), 2 (vrouw), en 3 (zeg ik niet) als opties, en we zijn alleen geinteresseerd in Belgisch Vrouwen. Dan zou de relevance equation worden:
(land==2) && (geslacht==2)
&& betekent 'en', en die expressie evalueert dan alleen naar true als de expressies aan weerszijden van het en-teken true zijn.
Op die manier heb je ook 'of: || Dit evalueert naar true als minimaal een van de expressies aan weerszijden true is. Dus, in een tabel:
Ene expressie |
Operator ('teken') |
Andere expressie |
Dit is true als: |
A |
== |
B |
A gelijk is aan B |
A |
&& |
B |
A true is EN B true is |
A |
|| |
B |
A true is OF B true is OF A en B true is |
Deze zelfde logica herken je misschien van de IF of COMPUTE statements in SPSS, of het bouwen van queries voor databases. Als onderzoeker kom je dit 'taaltje' (het heet gewoon 'logica') vaak tegen.
In LimeSurvey heb je bovendien allerlei functies die je kunt gebruiken (zie voor een lijstje http://manual.limesurvey.org/Expression_Manager#Implemented_Functions). Een hiervan is 'is_empty'. Deze is true als zijn argument leeg is. Dus deze relevance equation:
is_empty(land)
evalueert naar true zolang de vraag 'land' nog niet is ingevuld, maar wordt 'false' zo gauw iemand een antwoord selecteert.
En dan is er nog de 'not' operator, die de espressie die er op volgt omdraait; false wordt true, en true wordt false. Die is dus handig te combineren met is_empty, als je wil dat een vraag pas zichtbaar wordt als een eerdere vraag is beantwoord. Als we de geslacht-vraag bijvoorbeeld pas willen laten zien als mensen de land-vraag hebben beantwoord, dan stellen we deze relevance equation in:
! is_empty(land)
En we kunnen zelfs attitude alleen weergeven als mensen al hebben aangegeven wat hun geslacht is EN uit welk land ze komen:
! is_empty(land) && ! is_empty(geslacht)
Zie ook http://oupsy.nl/help/66/limesurvey-vraag-aanpassen-antwoord-deelnemer-eerdere-vraag.
Zie voor meer informatie over logische expressions http://manual.limesurvey.org/Expression_Manager.