Ustawianie warunków
From LimeSurvey Manual
Przegląd warunków w LimeSurvey
LimeSurvey ma bardzo zaawansowaną funkcję logicznego rozgałęziania. Dostęp do niego można uzyskać, klikając przycisk „Ustaw warunki” - - znajdujący się na każdym pasek pytań.
W tym rozdziale opiszemy:
- jakie warunki znajdziesz w LimeSurvey
- co możesz, a czego nie możesz zrobić z warunkami
- jakich kroków musisz się nauczyć, aby ustawić proste lub bardziej złożone warunki
Aby zapoznać się ze szczegółowymi instrukcjami wideo, zobacz ten samouczek lub pobierz przykładową ankietę dotyczącą stanu: [[Media:LimeSurvey_Survey_Setting_Conditions.zip|LimeSurvey_Survey_Setting_Conditions.zip] ]

Ukryj/pokaż rozgałęzienia a rozgałęzienia skokowe
Za pomocą LimeSurvey możesz zaprojektować rozgałęzienia logiczne, co oznacza, że możesz zdecydować, że niektóre pytania będą wyświetlane tylko wtedy, gdy zostaną spełnione pewne warunki, np. „Pokaż pytanie X, jeśli odpowiedź na pytanie Y brzmiała Z”.
Nasze podejście polega na zaimplementowaniu logiki rozgałęziania „Ukryj/pokaż”:
- możesz zdefiniować warunek lub zestaw warunków na każdym pytaniu w swojej ankiecie - jeśli warunek zostanie spełniony, pytanie zostanie wystawiany:


- pytanie bez zdefiniowanego warunku będzie zawsze wyświetlane;
- pytanie ze zdefiniowanym warunkiem nie będzie wyświetlane, jeśli warunek nie jest spełniony .
Podejście to różni się od logiki rozgałęziania skoków, która jest czasami wdrażana przez inne oprogramowanie. W „logice rozgałęziania skoków” wynikiem spełnionego warunku byłoby przeskoczenie do innego pytania (to znaczy ukrycie wszystkich pytań pomiędzy). LimeSurvey nie implementuje metody logiki rozgałęziania skoku. Zamiast tego, jeśli chcesz przeskoczyć serię pytań, powinieneś po prostu ustawić ten sam warunek dla wszystkich pytań, których nie chcesz wyświetlać. Na przykład, jeśli warunek przeskoku, który chcesz ustawić w Pytaniu 2 to „Przeskocz do Pytania 5, jeśli odpowiedź na Pytanie 1 brzmi „Tak”, możesz po prostu:
- ustawić warunek na pytania 2, 3 i 4 tak, aby wyświetlał tylko „jeśli odpowiedź na Pytanie 1 brzmiała „NIE” „Tak”
LimeSurvey ułatwia ustawienie tego samego warunku dla wielu pytań (a tym samym wdrożenie „logiki rozgałęziania skoków”), umożliwiając „skopiowanie” warunku z jednego pytania do serii innych. W powyższym przykładzie zacząłbyś od ustawienia warunku w Pytaniu 2, a następnie z tego samego ekranu skopiowałbyś ten warunek do Pytania 3 i Pytania 4.

Obsługiwane typy warunków
Zasadniczo warunek może porównywać wartości i zwracać wartość true lub false.
Wartości, które można porównać, to „odpowiedzi na poprzednie pytania”. Na przykład, jeśli odpowiesz „Tak” na Pytanie 1, respondentowi ankiety zostanie wyświetlone Pytanie 2:

W tym momencie ważne jest, aby zrozumieć, co jest uważane za kwalifikujący się wpis pytania dla edytora warunków.
„Wpis pytania” to:
- proste pytanie (dla wszystkich typów pytań z wyjątkiem pytań typu Array)
- na przykład: pytania tekstowe, radio lub listy rozwijane, a nawet wielokrotne możliwości wyboru pytania
- lub wiersz w pytaniach Array (z wyjątkiem pytań Array z podwójną skalą i pytań elastycznych Array)
- na przykład: tablica z 5 przyciskami opcji lub tablica z etykietą pytania
- lub dowolna lewa część lub prawa część pytania o podwójnej skali Array
- lub każda komórka pytania elastycznego Array
- wartości stałe
- na przykład: "Jeśli odpowiadałeś na poniższe pytanie przez ponad 18 lat"

- Dane w profilu uczestników: Aby skorzystać z danych z tabeli uczestników ankiety, należy ustawić opcję „Anonimowe odpowiedzi” na „NIE”. Opcja ta dostępna jest w panelu ankiety Ustawienia uczestnika.

Obsługiwanych jest kilka operatorów porównania - od prostych „równa się” po zaawansowane „wyrażenie regularne”:
- Podstawowe odnoszą się do operacji „równe” i „nierówne”
- „Większy/mniejszy” Dostępna jest także rodzina operatorów than, która jest zwykle używana w przypadku numerycznych wpisów pytań
- Należy pamiętać, że w porównaniach w polach numerycznych wykorzystywana jest kolejność numeryczna. Na przykład 2 < 10
- Jeśli używasz pytania typu tekstowego, warunek może zostać oceniony jako „2” > „10” (kolejność ciągów znaków)!
- Pytania numeryczne, a także pytania tekstowe (jeśli mają ustawiony atrybut „numbers_only”), do porównań użyją kolejności numerycznej
- Dostępny jest również zaawansowany operator porównania korzystający z wyrażeń regularnych (nie panikuj! Jeśli nie wiesz co to oznacza, to nie potrzebujesz tego)
- wzorzec to „nie” należy ująć w znaki „/”
- na przykład: „””[a-zA -Z]$
Jak mogę połączyć warunki?
Możesz „budować złożone warunki” poprzez „łączenie prostych warunków” z operatorami logicznymi „AND” i „LUB”.

Jednakże ważne jest, aby zrozumieć, że „LimeSurvey automatycznie określa, który operator logiczny zastosować”. Oznacza to, że użycie operatorów „OR” lub „AND” jest określane „” zgodnie z kontekstem” warunku. W powyższym przykładzie istnieje tylko jeden scenariusz. Oznacza to, że LimeSurvey korzysta z algebry Boole’a, co oznacza, że operator „lub” jest „obliczany” jako pierwszy.
Porozmawiamy więcej o złożonych warunkach później. Najpierw skupmy się wspólnie na elementarnych.
Projektant warunków
Najpierw musisz uzyskać dostęp do Projektant warunków. Aby to zrobić, kliknij pytanie, do którego chcesz zastosować warunek:

Teraz poszukaj przycisku „Ustaw warunki” znajdującego się na górnym pasku pytań:

Po wejściu wyświetli się następująca strona:

Panel projektanta warunków można podzielić na trzy sekcje:
Pasek narzędzi projektanta warunków
Na pasku narzędzi możesz znaleźć następujące opcje:

- Pokaż warunki dla tego pytania: Kliknij ten przycisk, aby uzyskać szybki przegląd aktualnie istniejących warunków, które mają zastosowanie do Twojego pytania.
- Dodawaj i edytuj warunki: reprezentuje domyślną stronę, która otwiera się automatycznie po kliknięciu przycisku Ustaw warunki. Jest ono podzielone na dwie części: (1) tabelę wyświetlającą wszystkie istniejące warunki i scenariusze oraz (2) menu dodawania/edycji warunków.
- Kopiuj warunki: Czasami chcesz zastosować ten sam warunek do X pytań, aby na końcu wyświetlić pytanie Y. W tym celu kliknij „Kopiuj warunki”. Otworzy się nowe okno wyświetlające aktualne warunki dodane do Twojego pytania (nazwijmy to pytaniem 3). Aby dodać je do pytania 5, zaznacz żądane warunki, które chcesz skopiować, wybierz pytanie 5 i kliknij przycisk „Kopiuj warunki” znajdujący się w lewej dolnej części panelu. Aby uzyskać więcej informacji, kontynuuj czytanie sekcja wiki.
- Zapisz i zamknij: Po zakończeniu wprowadzania zmian kliknij „Zapisz i zamknij”, aby zapisać warunki.
- Przenieś do pytania: Aby nie opuszczać panelu projektanta warunków podczas przechodzenia do innego pytania, skorzystaj z poniższej opcji i wybierz z listy rozwijanej kolejne pytanie, do którego chcesz zastosować warunki. Należy pamiętać, że lista rozwijana wyświetla pytania, które są wyświetlane w ankiecie przed i po bieżącym pytaniu.
- Zamknij: Jeśli chcesz wyjść z panelu bez dokonywania jakichkolwiek zmian, możesz albo przejść bezpośrednio do zakładki Ustawienia/Struktura i wybrać żądaną opcję, albo kliknąć Zamknij, który znajduje się w prawym górnym rogu ekranu.
Przegląd istniejących warunków
W tej sekcji wyświetlana jest tabela zawierająca wszystkie istniejące scenariusze i warunki pytania. W tym miejscu można wykonać określone czynności:

- W prawej górnej części dostępne są trzy akcje:
- Szybkie dodawanie warunków - przyspiesza proces dodawania warunków (przeczytaj poniżej, aby poznać wszystkie opcje )
- Przenumeruj scenariusze - po kliknięciu, scenariusze zostaną ponumerowane przyrostowo, zaczynając od jednego. Należy pamiętać, że ta opcja jest wyświetlana tylko wtedy, gdy do Twojego pytania zastosowano dwa lub więcej scenariuszy.
- Usuń wszystkie warunki - za pomocą tej akcji możesz usunąć wszystkie istniejące warunki i scenariusze zastosowane do Twojego pytania.

- Oprócz numeru identyfikacyjnego każdego scenariusza znajdują się trzy przyciski umożliwiające wykonanie następujących akcji:
- Usuń scenariusz
- Zmień numer scenariusza
- Dodaj warunek do tego scenariusza - kliknij na ten aby dodać kolejny warunek do żądanego scenariusza

- Na każdym warunku można wykonać dwie akcje:
- Usuń warunek
- Edytuj warunek - po kliknięciu będziesz mógł edytować warunek z menu warunki

Dodaj/edytuj warunki
Dolna część ekranu przypisana jest do menu Dodaj/edytuj warunki:

Aby zrozumieć jak działa funkcja warunków w LimeSurvey, najpierw przedstawimy warunki elementarne.


Definicja warunków elementarnych
Warunek elementarny to po prostu pojedynczy warunek „bez żadnych operatorów logicznych OR lub AND”.
Składa się z:
- lewego operandu: „testowanej wartości”. Możesz wybrać typ „testowanej wartości” wybierając odpowiednią zakładkę w edytorze warunków. Może to być albo poprzednie pytanie, albo atrybut uczestnik ankiety.

Jeśli wybierzesz wpis pytania (z zakładki „Poprzednie pytania”) i jeśli to pytanie zawiera predefiniowane odpowiedzi, wówczas odpowiednie predefiniowane odpowiedzi zostaną wyświetlone w zakładce „Predefiniowane” w wyborze wartości porównawczej .

- nie korzystać z odpowiedzi anonimowe
- używać tabela uczestników ankiety i dostęp zamknięty.
- „operator porównania”. Z listy rozwijanej wybierz „operator porównania”, który chcesz zastosować („mniejszy niż”, „mniejszy lub równy”, „równa się”, „nie równy”, „” większy lub równy, większy niż, wyrażenie regularne).
- prawy operand: „wartość porównania”. Typ wartości porównawczej możesz wybrać wybierając odpowiednią zakładkę w edytorze warunków. Tworząc warunek, możesz wybrać jako wartość porównawczą wstępnie zdefiniowaną wartość (odpowiedź), stałą, pytanie, atrybut uczestnika ankiety lub wyrażenie regularne:

Przykład warunków elementarnych i sposób ich tworzenia
- Pokaż pytanie „AAMN” „„jeśli”” „odpowiedź na pytanie „Płeć” to predefiniowana odpowiedź „Mężczyzna”
- „Wartość testowana” = odpowiedź na pytanie „Płeć”
** „operator porównania” = równa się
- „wartość porównania” = predefiniowany kod odpowiedzi (w tym przypadku odpowiedź „Mężczyzna”)

- Pokaż pytanie „Alkohol” „”jeśli”” „odpowiedź na pytanie „Wiek” jest większa lub równa wartości liczbowej „18”
- „Wartość testowana” = odpowiedź na pytanie „Wiek” '
- operator porównania = większy lub równy
- wartość porównania = wartość stała '18'


- Pokaż pytanie „Alkohol” „”jeśli”” „odpowiedź na pytanie „Data urodzenia” jest większa niż 2000-01-01””
- „Wartość testowana” = odpowiedź na pytanie „Data urodzenia” '
- operator porównania = większy lub równy
- wartość porównania = '2000-01-01' (format w polu stałym: 2000-01-01 )

- Pokaż pytanie „Alkohol” „jeśli” „„Historia picia” atrybut uczestnika” pasuje do ciągu „Tak”.
- „testowana wartość” = „ Wartość DrinkingHistory' pobrana z tabela uczestników ankiety
- operator porównania = równa się
- wartość porównania = wartość stała 'Tak'

Warunki i scenariusze w LimeSurvey
Domyślne kombinacje warunków
Jak powiedziano wcześniej, LimeSurvey automatycznie decyduje, który operator logiczny (AND lub OR) powinien zostać zastosowany pomiędzy warunkami, w zależności od „kontekstu”.
Należy również pamiętać, że „kolejność, w jakiej definiujesz warunki elementarne, nie ma znaczenia”, ponieważ LimeSurvey automatycznie zmieni ich kolejność zgodnie ze swoją własną logiką.
Przeanalizujmy to szczegółowo. Należy zawsze pamiętać o dwóch zasadach:
- Pierwsza zasada: warunki posiadające tę samą „testowaną wartość” są łączone OR
* Druga reguła: Warunki o różnych testowanych wartościach są poddawane działaniu AND
Pierwsza zasada: warunki mające tę samą „testowaną wartość” są łączone OR
Jeśli masz kilka warunków, są one poddawane operacji „OR” razem, jeśli mają tę samą „testowaną wartość”. Dzieje się tak w przypadku, gdy warunek dotyczy kilku odpowiedzi należących do jednego pytania. Przykładowo, poniżej zastosowano warunek do trzech odpowiedzi należących do tego samego pytania - jeśli odpowiedź na Pytanie 'FavColour' jest równa 'zielony' LUB odpowiedź na Pytanie 'FavColour' jest równa 'czerwony' LUB' „” odpowiedź na pytanie „FavColour” jest równa „niebieski”, wówczas respondentowi ankiety wyświetli się pytanie „BirthDate”:



Druga zasada: warunki mające różną „testowaną wartość” są poddawane operacji AND razem
Jeśli masz kilka warunków, są one „łączone” razem, jeśli nie mają tych samych „testowanych wartości”. Na przykład poniżej możesz zobaczyć przypadek kilku warunków opartych na różnych poprzednich pytaniach - „Jeśli odpowiedź na pytanie „Alkohol” jest równa „T”, odpowiedź „ORAZ” odpowiedź na pytanie „Płeć” równa się „F””, wówczas respondentowi ankiety wyświetli się pytanie „Spożycie alkoholu”:



Pytania z wieloma opcjami

Pytania typu „Wielokrotny wybór” i „Wielokrotny wybór z komentarzami” będą wyświetlane w dwóch wersjach:
- w wersji „Grupa pól wyboru”, która pozwala ustawić warunki dla wszystkich możliwych odpowiedzi odpowiednich pytanie;
- zestaw wpisów „Pojedyncze pole wyboru”, który umożliwia indywidualne ustawienie warunków dla każdego pola wyboru.

Grupa checkboxów smak
Skupmy się teraz na przykładzie, aby lepiej zrozumieć różnicę pomiędzy tymi dwoma smakami. Wyobraźmy sobie, że chcemy wyświetlić pytanie „Punkt wyboru” tylko wtedy, gdy respondent zaznaczy przynajmniej jedną z „testowanych odpowiedzi” wymienionych w pytaniu „Wiele organizacji”.
Jak wspomniano powyżej, grupa smaków pól wyboru pozwala ustawić warunki dla wszystkich możliwych odpowiedzi na dane pytanie. Dlatego poniżej jako „wartości porównawcze” wybrano jedynie opcje odnoszące się do obowiązków:

Jak możemy zaobserwować, warunki są poddawane operacji OR ze względu na wybraną na początku opcję „Grupa pól wyboru”.:

Warunki ORAZ w pytaniach wielokrotnego wyboru
Skupmy się teraz na podobnym przykładzie. Jednakże tym razem szukamy tylko najbardziej aktywnych członków, aby zadać im dalsze pytania. W tym celu korzystamy z opcji „Pojedyncze pole wyboru”, która umożliwia ustawienie warunków indywidualnie dla każdego pola wyboru.
W tym przykładzie pytanie X zostanie wyświetlone, jeśli zaznaczone są „A” i „B”:


Kiedy już to zrobisz, możesz zauważyć, że te dwa warunki są teraz połączone AND.

Oznacza to, że Twoje pytanie nie zostanie wyświetlone, jeśli nie zostaną spełnione obie testowane wartości (wybrane pytania podrzędne).
Wykorzystanie scenariuszy — użycie warunków typu OR pomiędzy różnymi pytaniami
Możesz teraz argumentować, że czasami potrzebujesz warunków „ORed”, nawet jeśli są one ustawione dla różnych pytań (to znaczy dla różnych „testowanych wartości”). Dlatego mamy scenariusze!
Definicja scenariusza
Scenariusz to po prostu „ręczne grupowanie warunków”, w którym niektóre warunki są oceniane niezależnie od innych warunków z innych scenariuszy. Warunek złożony skutkujący powiązaniem kilku scenariuszy zostanie spełniony tylko wtedy, gdy spełniony zostanie jeden scenariusz. Innymi słowy, scenariusze to „logiczne grupowanie warunków” z uwzględnieniem powyższych reguły oraz „które są połączone operatorem OR” w celu zbudowania złożonych warunków.
Wszystko opisane powyżej dotyczy warunków występujących w każdym scenariuszu. Domyślnie wszystkie nowe warunki tworzone są w ramach „Scenariusza domyślnego”, którego identyfikatorem jest liczba „1”. Tworząc nowe warunki, możesz wybrać, czy zostaną one dodane do scenariusza domyślnego, czy nie. Aby zmienić scenariusz wystarczy użyć innego identyfikatora.
Dodawanie pytania do innego scenariusza
Tworząc (lub edytując) warunek, możesz zmodyfikować scenariusz, w którym warunek jest przechowywany, po prostu klikając przycisk dodawania scenariusza:

Jak widać, domyślny scenariusz wykorzystuje jako identyfikator „1”. Aby dodać warunki do różnych scenariuszy należy zmienić identyfikator wpisując w polu inną liczbę.
Identyfikator liczbowy scenariusza nie ma znaczenia, a różne scenariusze mogą mieć nieciągłe identyfikatory.

Możesz zmienić numer przypisany do scenariusza, klikając tę ikonę i przypisując nowy identyfikator do scenariusza.


- zdecydować w jakiej kolejności będą wyświetlane scenariusze podczas korzystania z ankiety w wersji do druku
- połączyć warunki z dwóch scenariuszy (aby połączyć scenariusz 10 ze scenariuszem 1, wystarczy zmienić numer scenariusza 10, tak aby był to scenariusz 1).
Przykład: utworzenie trzech scenariuszy
Aby utworzyć trzy scenariusze potrzebne są co najmniej trzy warunki i do każdego z nich należy dodać inny identyfikator scenariusza. Po zakończeniu scenariusze zostaną połączone między sobą za pomocą operatora „OR”. Na przykład może to wyglądać tak:

AND vs OR w tym samym scenariuszu
W niektórych przypadkach w tym samym scenariuszu możesz znaleźć operatory logiczne AND i OR:

LimeSurvey zawsze zastosuje jako pierwszy LUB. Więcej szczegółów na ten temat można znaleźć w następującym artykule w Wikipedii na Algebra Boole’a.
Jednakże. kolejność działań można także sprawdzić w polu Równanie istotności. W powyższym przykładzie równanie istotności zostało podkreślone poniżej:

Jak można zauważyć, do operacji logicznych OR dodano zestaw dodatkowych nawiasów, aby poinformować oprogramowanie, że należy je najpierw „obliczyć”.

How to copy conditions
The copy conditions functionality can be used when you wish to apply the same set of conditions you applied to Question5 to Question10. In this way, you will not have to manually recreate the conditions you applied to the previous question(s).
To start copying conditions, you first have to select the question the condition(s) is/are applied to (Question 'LowQ' in our case). Then, select the conditions you wish to be copied and select the question you wish to have the conditions added to (Question 'Alcohol' in our case).


Please pay attention to how the copy conditions functions work when you wish to copy and apply a set of conditions located under different scenarios to another question which uses the same or different scenario id numbers. To summarise the possible cases you might have, check the following example:
- you wish to copy Scenario 1 - Condition A, Scenario 1- Condition B, Scenario 7 - Condition C, and Scenario 7 - Condition D from QuestionX into QuestionY
- QuestionY already contains Scenario 1 - Condition A, Scenario - Condition C, Scenario 6 - Condition E, Scenario 8- Condition F.
- Once copied, the following conditions will be applied to QuestionY:
- Scenario 1: Condition A, Condition B, Condition C -> Condition A is not copied anymore as it already exists in QuestionY, only condition B being copied.
- Scenario 6: Condition E -> not affected
- Scenario 7: Condition C, Condition D -> a new scenario is created where the two conditions are added to it
- Scenario 8: Condition F -> not affected
Reset conditions
To quickly reset all the survey conditions, click on one survey-related setting, look for Tools on the top toolbar, and click Reset conditions:

Next, confirm on the next page that you want to proceed and all the conditions will be deleted.
Things to watch out for
General considerations
There are a few basic rules you should keep in mind before setting conditions on a question:
- Once a single condition has been set for a question, that question will not be displayed unless that condition is met.
- Conditions can only be set based on questions that appear before the question on which the condition is set.
- If you change the order of questions in your survey after you create conditions, LimeSurvey does not warn you if the changed order will break any of your conditions. You should always put aside the creation of conditions until you are satisfied with the order of questions and groups in your survey.
- You can modify conditions even after a survey has been activated. This should be done with caution, as there is no "consistency checking" applied here.
Conditions using the 'no answer' predefined answer

Setting the following condition "Show question 'FavColour' if the answer to the question 'Gender' is 'no answer'" really means "show question 'FavColour' if question 'Gender' was displayed to the survey participant who did not submit answer".

Chained conditions
If you set conditions on a question that, itself, has conditions, you could end up with your survey behaving in ways you might not have predicted. For example, a typical side-effect is that if you hide all questions in a group with chained conditions, the group header will still be shown unless you correct these conditions as explained below.


In the above example, the 'Alcohol' question is displayed if the respondent has previously answered to the 'AAMN' question 'No (N)'. However, the 'AAMN' question might not be displayed at the end if the respondent did not select to the previous question ('Gender') answer 'Male (M)'. In this scenario, no 'Alcohol' question will be displayed if 'Male (M)' was chosen previously.
To have the 'Alcohol' question displayed, you have to copy the conditions from the earlier question(s) to the one you're editing. To have the 'Alcohol' question displayed, you need to set up the following set of conditions:
- Show 'AAMN' if the answer to 'Gender' is 'Male (M)'
- Show 'Alcohol' if answer to 'Gender' is 'Male (M)' and if answer to 'AAMN' is No (N)'.
After correction, the correct set of conditions for 'Alcohol' should look like this:

So if you are designing a complicated survey with a large number of conditions, make sure you test the survey for as many different combinations of results as you can think of.

Limitations and workarounds
Progress-bar
If you create a survey where many questions get skipped because of conditions, the progress bar either jumps over a set of questions or the survey ends at 50%.
To avoid such behavior, the questions that could be skipped should be arranged between the shown questions. In this way, only one or two questions get skipped per answer.
For example, based on Question1 (yes or no question), 14 questions (2A to 15A) will be displayed if the answer to Question1 is 'Yes', or 2B to 15B if the answer to Question1 was 'No'.
If you arrange the questions in one group and arrange them like 2A, 2B, 3A, 3B, and so on, you will get a nearly correct progress bar, while arranging the questions like 2A, 3A, 4A, [...], 2B, 3B, 4B, ... you will get a progress bar from 0 to 50% or from 50% to 100%, depending on the answer to the first question.
Setting a constant comparison value for a "Date" Question Type
You have to use the internal representation of Date values (which is YYYY-MM-DD) to define your constant comparison value.
Setting conditions for "Other" Options in the Multiple Options Question Type
In the multiple options question type, you can use the "Other" provided in the question type as a valid choice but you cannot set conditions on it. For example, Question No 1 says "Which color do you prefer to use?" Answer checkbox choices are Blue, Black and Other. If the participant chooses Blue, you can set a condition. If the participant chooses Black, you can set a different condition. However, if the participant chooses "Other" and types in something in the text box, there is NO way a condition can be set. LimeSurvey does not recognize if the participant chose the "Other" condition. This is NOT a bug but a limitation.
There is no real field recorded for the 'other' checkbox for this question type. Thus, the only way to know if the user has answered the 'other' part of the question or not would be to check if the value of the text written in the other input field is empty or not.
However, due to the specific way Multiple choice questions are handled, testing the 'other' text input field has never been implemented.
As a workaround, add an explicit answer option called 'Other' and do not use the built-in 'other' option of these question types. Then add an additional short text question which will be displayed if this 'Other' checkbox was clicked.
How to use parenthesis for the boolean expressions?
You can't!
If you want to design something like:
(condition1 OR condition2) AND (condition3 OR condition4),
you'll have to set up:
(condition1 AND condition3) OR
(condition1 AND condition4) OR
(condition2 AND condition3) OR
(condition2 AND condition4)