O tipo de pergunta select_one solicita ao respondente que escolha exatamente uma opção de uma lista predefinida. Por padrão, as opções são renderizadas como botões de opção, mas há uma ampla gama de opções de aparência disponíveis para alterar o layout e o comportamento.

Especificação básica do XLSForm

Planilha survey:

typenamelabel
select_one yesnoconsentO respondente deu consentimento?

Planilha choices:

list_namenamelabel
yesnoyesSim
yesnonoNão

O listname em select_one listname deve corresponder à coluna list_name na planilha de choices.

Para mais detalhes, consulte a especificação do XLSForm.

Usos

As perguntas select_one são usadas para:

  1. Perguntas de Sim/Não
  2. Múltipla escolha de resposta única (por exemplo, nível de educação, gênero, estado civil)
  3. Classificações categóricas (por exemplo, ruim / regular / bom / excelente)
  4. Seleções cascata (vinculadas) onde as opções são filtradas com base em uma resposta anterior
  5. Seleção de país, região, distrito ou outra unidade administrativa

Opções de aparência

Especifique um valor na coluna appearance para alterar como as opções são exibidas:

AparênciaDescrição
(nenhuma)Botões de opção padrão, um por linha
minimalDropdown/spinner único em vez de botões de opção
quickAvança automaticamente para a próxima pergunta imediatamente após a seleção (somente mobile)
compactGrade compacta de opções — o número de colunas se ajusta à largura da tela
compact-NGrade compacta forçada para N colunas (por exemplo, compact-3)
quickcompactCombina quick e compact
quickcompact-NCombina quick e compact com N colunas forçadas
horizontalOpções dispostas em uma linha horizontal (web)
horizontal-compactHorizontal, espaçamento compacto (web)
likertLinha de escala Likert — rótulos acima, botões de opção abaixo
labelMostra apenas rótulos de opções sem entradas (use em par com list-nolabel)
list-nolabelMostra apenas as entradas sem rótulos (use em par com label)
columns(N)Exibir em N colunas (extensão rtSurvey, por exemplo, columns(3))
distressWidget de ícone de angústia psicológica Kessler (K10)
search-api(...)Busca dinâmica — carrega opções de uma API em tempo de execução

Exemplo: Escala Likert

typenamelabelappearance
select_one satisfactionservice_ratingQuão satisfeito você está com o serviço?likert

Exemplo: 3 colunas compactas

typenamelabelappearance
select_one regionsregionSelecione a regiãocompact-3

Seleções cascata

Uma seleção cascata (vinculada) filtra as opções com base no valor selecionado em uma pergunta anterior. Use a coluna choice_filter com o nome de uma coluna da planilha de choices.

survey:

typenamelabelchoice_filter
select_one provinceprovinceSelecione a província
select_one districtdistrictSelecione o distritoprovince_name = ${province}

choices:

list_namenamelabelprovince_name
provincenairobiNairóbi
provincemombasaMombaça
districtwestlandsWestlandsnairobi
districtkasaraniKasaraninairobi
districtnyaliNyalimombasa
districtlikoniLikonimombasa

Quando o respondente seleciona nairobi, apenas Westlands e Kasarani aparecem na lista de distritos.

Usando o valor selecionado em expressões

Referencie o valor selecionado (não o rótulo) com ${fieldname}:

  relevant: ${consent} = 'yes'
  

Para obter o rótulo da opção em vez do valor, use choice-label():

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

Opção “Outro” com texto livre

Um padrão comum é incluir uma opção “outro” que revela um campo de texto:

typenamelabelrelevant
select_one occupationjobQual é a sua ocupação?
textjob_otherPor favor, especifique${job} = 'other'

choices:

list_namenamelabel
occupationfarmerAgricultor
occupationtraderComerciante
occupationstudentEstudante
occupationotherOutro (por favor, especifique)

Práticas recomendadas

  1. Mantenha as listas curtas e mutuamente exclusivas — se os respondentes podem querer mais de uma, use select_multiple.
  2. Coloque a resposta mais comum primeiro, ou ordene alfabeticamente para listas longas.
  3. Sempre inclua uma opção “Não sei” ou “Prefiro não responder” onde relevante.
  4. Use minimal (dropdown) para listas com mais de 7 a 8 opções no celular para economizar espaço na tela.
  5. Para seleções cascata, adicione todas as colunas de filtro na planilha de choices antes de construir o formulário.

Limitações

  • Um respondente pode selecionar apenas uma opção — use select_multiple para perguntas de múltiplas respostas.
  • A aparência likert funciona melhor com 5 a 7 opções que cabem em uma linha.
  • O avanço automático quick é apenas para dispositivos móveis; não tem efeito em formulários web.
Esta página foi útil?