O tipo de pergunta rank apresenta uma lista de escolhas que o respondente deve arrastar em ordem (ou de outra forma classificar do primeiro ao último). Armazena o resultado como uma lista separada por espaços de valores de escolha na ordem selecionada, com a escolha de maior prioridade em primeiro.

Especificação XLSForm Básica

typenamelabel
rank prioritiesmain_priorityClassifique estas necessidades da comunidade da mais para a menos importante

As escolhas são definidas na folha de trabalho choices tal como em select_one:

survey:

typenamelabel
rank prioritiesmain_priorityClassifique estas necessidades da mais para a menos importante

choices:

list_namenamelabel
prioritieswaterÁgua potável
prioritieshealthCuidados de saúde
prioritieseducationEducação
prioritiesroadsEstradas
prioritieselectricityEletricidade

Formato do valor armazenado

O valor armazenado é uma lista separada por espaços de valores de escolha em ordem classificada (primeiro = maior prioridade):

  water education health roads electricity
  

Extrair posições classificadas

Use selected-at() para obter a escolha numa classificação específica:

typenamelabelcalculation
rank prioritiesmain_priorityClassifique as necessidades da comunidade
calculatetop_priorityselected-at(${main_priority}, 0)
calculatesecond_priorityselected-at(${main_priority}, 1)

selected-at(${main_priority}, 0) devolve o valor colocado em primeiro (índice 0 = maior classificação).

Usar rank-index() com grupos de repetição

Quando rank é usado dentro de um grupo de repetição, rank-index() permite referenciar a classificação ordinal de fora da repetição:

typenamelabelcalculation
calculatefirst_rankedrank-index(1, ${score})

Consulte Funções — Funções de campo repetido para detalhes completos sobre rank-index() e rank-index-if().

Utilizações

As perguntas rank são comummente usadas para:

  1. Classificação de prioridades — pedir às comunidades para classificar necessidades de desenvolvimento
  2. Ordenação de preferências — classificar características de produtos, atributos de serviço ou opções de política
  3. Ordenação de itens de exame — organizar passos num processo
  4. Seleção Top-N — combinado com selected-at() para extrair apenas as 1, 2 ou 3 melhores escolhas

Melhores Práticas

  1. Mantenha a lista curta (3–7 itens) — a classificação torna-se cognitivamente exigente além de 7–8 escolhas.
  2. Use etiquetas de escolha claras e mutuamente exclusivas para evitar confusão sobre o que “primeiro” significa.
  3. Adicione texto de dica explicando a direção da classificação (por ex., “Arraste para ordenar: primeiro = mais importante”).
  4. Valide usando count-selected(.) = x se precisar de garantir que todas as escolhas estão classificadas.

Limitações

  • O widget de arrastar para classificar requer um ecrã táctil ou rato — pode não funcionar bem em ambientes apenas de teclado.
  • Em alguns clientes móveis mais antigos, o widget rank pode recorrer a uma interface de entrada numerada.
  • Não pode classificar parcialmente (ou seja, classificar apenas algumas escolhas) — todas as escolhas devem ser ordenadas.
Esta página foi útil?