Hoppe over spørsmål
Hopplogikk, også kjent som forgrening eller betinget logikk, lar deg lage dynamiske spørreundersøkelser som tilpasser seg respondentenes svar. I rtSurvey implementeres hopplogikk ved hjelp av relevant-kolonnen i XLSForm.
Grunnleggende hopplogikk
For å implementere grunnleggende hopplogikk, bruk relevant-kolonnen til å angi en betingelse:
| type | name | label | relevant |
|----------------|---------------|-----------------------------|--------------------|
| select_one y_n | likes_pizza | Liker du pizza? | |
| select_multiple pizza_toppings | favorite_topping | Favorittoppinger | ${likes_pizza} = 'yes' |
I dette eksemplet vises spørsmålet “Favorittoppinger” bare hvis respondenten svarer “ja” på om de liker pizza.
Syntaks for relevant-uttrykk
- Bruk
${ }for å referere til andre spørsmålsvariabler. - For
select_one-spørsmål, sammenlign direkte:${spørsmålsnavn} = 'svar' - For
select_multiple-spørsmål, brukselected()-funksjonen.
Avansert hopplogikk
Flere betingelser
Du kan kombinere flere betingelser med and, or og parenteser:
| type | name | label | relevant |
|---------|-------|-------------------------|-------------------------------------------|
| integer | age | Hva er alderen din? | |
| text | school| Hvilken skole går du på?| ${age} < 18 and (${location} = 'urban' or ${location} = 'suburban') |
Bruke select_multiple-spørsmål
For select_multiple-spørsmål, bruk selected()-funksjonen:
| type | name | label | relevant |
|----------------|---------------|-----------------------------|-----------------------------------------|
| select_multiple pizza_toppings | favorite_topping | Favorittoppinger | |
| text | cheese_type | Favorittostetypen | selected(${favorite_topping}, 'cheese') |
“Annet”-alternativ i flervalg
Implementer et fritekst “Annet”-alternativ ved hjelp av relevant:
| type | name | label | relevant |
|----------------|----------------------|-------------------------------------|---------------------------------------|
| select_multiple pizza_toppings | favorite_toppings | Hva er favorittoppingene dine? | |
| text | favorite_toppings_other | Hvilke andre oppinger liker du? | selected(${favorite_toppings}, 'other') |
Husk å inkludere ‘other’ som et alternativ i choices-regnearket.
rtSurvey-spesifikke funksjoner
Dynamisk relevans
rtSurvey tillater dynamisk relevans basert på beregnede felt:
| type | name | label | calculation |
|-----------|------------|--------------------|-----------------------------|
| calculate | total_score| Totalscore | ${score1} + ${score2} + ${score3} |
| text | feedback | Tilbakemelding | ${total_score} > 75 |
Relevans i repeats
rtSurvey støtter relevans innenfor repeat-grupper:
| type | name | label | relevant |
|--------------|--------------|------------------|------------------------|
| begin repeat | child_info | Barneinformasjon | |
| integer | child_age | Barnets alder | |
| text | school_name | Skolenavn | ${child_age} >= 5 |
| end repeat | | | |
Beste praksis for hopplogikk i rtSurvey
- Hold det enkelt: Unngå for komplekse relevant-betingelser når det er mulig.
- Test grundig: Bruk rtSurveys forhåndsvisningsfunksjon for å teste alle mulige veier gjennom spørreundersøkelsen.
- Vurder ytelse: Svært kompleks hopplogikk kan påvirke ytelsen til spørreundersøkelsen, spesielt på mobile enheter.
- Bruk klare variabelnavn: Dette gjør relevant-uttrykkene enklere å lese og vedlikeholde.
- Dokumenter logikken: Legg til notater for å forklare komplekse hoppemønstre, spesielt for teamsamarbeid.
- Vær oppmerksom på dataanalyse: Hoppede spørsmål vil resultere i manglende data. Planlegg analysen deretter.
Feilsøking av hopplogikk
- Syntaksfeil: Sørg for at alle
${ }er riktig lukket og stavet korrekt. - Sirkulære referanser: Unngå å lage løkker der spørsmål avhenger av hverandre.
- Skiftsensitivitet: Husk at svaralternativer skiller mellom store og små bokstaver i relevant-uttrykk.
- Numeriske sammenligninger: Bruk passende operatorer (
<,>,=) for numeriske sammenligninger.