Il tipo di domanda select_one chiede al rispondente di scegliere esattamente un’opzione da un elenco predefinito. Per impostazione predefinita, le scelte vengono visualizzate come pulsanti radio, ma è disponibile un’ampia gamma di opzioni di appearance per cambiare il layout e il comportamento.

Specifica XLSForm di base

Foglio di lavoro survey:

typenamelabel
select_one yesnoconsentIl rispondente ha dato il consenso?

Foglio di lavoro choices:

list_namenamelabel
yesnoyes
yesnonoNo

Il listname in select_one listname deve corrispondere alla colonna list_name nel foglio di lavoro choices.

Per ulteriori dettagli vedere la specifica XLSForm.

Utilizzi

Le domande select_one vengono usate per:

  1. Domande Sì/No
  2. Scelta multipla a risposta singola (es. livello di istruzione, genere, stato civile)
  3. Valutazioni categoriche (es. scarso / discreto / buono / eccellente)
  4. Selezioni a cascata (collegate) in cui le scelte si filtrano in base a una risposta precedente
  5. Selezione di paese, regione, distretto o altra unità amministrativa

Opzioni di appearance

Specifica un valore nella colonna appearance per cambiare come vengono visualizzate le scelte:

AppearanceDescrizione
(nessuna)Pulsanti radio predefiniti, uno per riga
minimalSingolo menu a discesa/spinner invece dei pulsanti radio
quickAvanza automaticamente alla domanda successiva immediatamente dopo la selezione (solo mobile)
compactGriglia compatta di scelte — il numero di colonne si adatta alla larghezza dello schermo
compact-NGriglia compatta forzata a N colonne (es. compact-3)
quickcompactCombina quick e compact
quickcompact-NCombina quick e compact con N colonne forzate
horizontalScelte disposte in una riga orizzontale (web)
horizontal-compactOrizzontale, spaziatura compatta (web)
likertRiga della scala Likert — etichette sopra, pulsanti radio sotto
labelMostra solo le etichette delle scelte senza input (usa in coppia con list-nolabel)
list-nolabelMostra solo gli input senza etichette (usa in coppia con label)
columns(N)Visualizza in N colonne (estensione rtSurvey, es. columns(3))
distressWidget di icone emotive Kessler Psychological Distress (K10)
search-api(...)Ricerca dinamica — carica le scelte da un’API in fase di esecuzione

Esempio: Scala Likert

typenamelabelappearance
select_one satisfactionservice_ratingQuanto sei soddisfatto del servizio?likert

Esempio: Griglia compatta a 3 colonne

typenamelabelappearance
select_one regionsregionSeleziona regionecompact-3

Selezioni a cascata

Una selezione a cascata (collegata) filtra le scelte in base al valore selezionato in una domanda precedente. Usa la colonna choice_filter con il nome di una colonna dal tuo foglio di lavoro choices.

survey:

typenamelabelchoice_filter
select_one provinceprovinceSeleziona provincia
select_one districtdistrictSeleziona distrettoprovince_name = ${province}

choices:

list_namenamelabelprovince_name
provincenairobiNairobi
provincemombasaMombasa
districtwestlandsWestlandsnairobi
districtkasaraniKasaraninairobi
districtnyaliNyalimombasa
districtlikoniLikonimombasa

Quando il rispondente seleziona nairobi, solo Westlands e Kasarani appaiono nell’elenco dei distretti.

Utilizzo del valore selezionato nelle espressioni

Fai riferimento al valore selezionato (non all’etichetta) con ${fieldname}:

  relevant: ${consent} = 'yes'
  

Per ottenere l’etichetta della scelta invece del valore, usa choice-label():

  calculate: choice-label(${education_level}, ${education_level})
  

Opzione “Altro” con testo libero

Un pattern comune è includere un’opzione “altro” che rivela un campo di testo:

typenamelabelrelevant
select_one occupationjobQual è la tua occupazione?
textjob_otherSpecifica${job} = 'other'

choices:

list_namenamelabel
occupationfarmerAgricoltore
occupationtraderCommerciante
occupationstudentStudente
occupationotherAltro (specifica)

Best practice

  1. Mantieni gli elenchi brevi e mutuamente esclusivi — se i rispondenti potrebbero volere più di uno, usa select_multiple invece.
  2. Metti la risposta più comune per prima, o ordina alfabeticamente per gli elenchi lunghi.
  3. Includi sempre un’opzione “Non so” o “Preferisco non rispondere” dove rilevante.
  4. Usa minimal (menu a discesa) per gli elenchi con più di 7–8 scelte su mobile per risparmiare spazio sullo schermo.
  5. Per le selezioni a cascata, aggiungi tutte le colonne di filtro nel foglio di lavoro choices prima di creare il modulo.

Limitazioni

  • Un rispondente può selezionare solo una scelta — usa select_multiple per le domande a risposta multipla.
  • L’appearance likert funziona meglio con 5–7 scelte che si adattano a una riga.
  • quick auto-avanzamento è solo mobile; non ha effetto sui moduli web.
Questa pagina è stata utile?