Rank
Pytania rank umożliwiają respondentom uszeregowanie zestawu opcji według preferencji lub priorytetu.
Typ pytania rank prezentuje listę opcji, które respondent musi przeciągnąć w odpowiedniej kolejności (lub w inny sposób uszeregować od pierwszego do ostatniego). Wynik jest przechowywany jako lista wartości opcji oddzielona spacjami w wybranej kolejności, z opcją o najwyższym priorytecie na pierwszym miejscu.
Podstawowa specyfikacja XLSForm
| type | name | label |
|---|---|---|
| rank priorities | main_priority | Uszereguj te potrzeby społeczności od najważniejszej do najmniej ważnej |
Opcje są definiowane w arkuszu choices tak jak w select_one:
survey:
| type | name | label |
|---|---|---|
| rank priorities | main_priority | Uszereguj te potrzeby od najważniejszej do najmniej ważnej |
choices:
| list_name | name | label |
|---|---|---|
| priorities | water | Czysta woda |
| priorities | health | Opieka zdrowotna |
| priorities | education | Edukacja |
| priorities | roads | Drogi |
| priorities | electricity | Elektryczność |
Format przechowywanych wartości
Przechowywana wartość to lista wartości opcji oddzielona spacjami w kolejności rankingowej (pierwsza = najwyższy priorytet):
water education health roads electricity
Wyodrębnianie pozycji rankingowych
Użyj selected-at(), aby uzyskać opcję o określonej pozycji:
| type | name | label | calculation |
|---|---|---|---|
| rank priorities | main_priority | Uszereguj potrzeby społeczności | |
| calculate | top_priority | selected-at(${main_priority}, 0) | |
| calculate | second_priority | selected-at(${main_priority}, 1) |
selected-at(${main_priority}, 0) zwraca wartość umieszczoną na pierwszym miejscu (indeks 0 = najwyższy rank).
Używanie rank-index() z grupami powtórzeń
Gdy rank jest używany wewnątrz grupy powtórzeń, rank-index() pozwala odwołać się do pozycji porządkowej spoza powtórzenia:
| type | name | label | calculation |
|---|---|---|---|
| calculate | first_ranked | rank-index(1, ${score}) |
Pełne szczegóły dotyczące rank-index() i rank-index-if() znajdziesz w Funkcjach — Funkcje pól powtarzanych.
Zastosowania
Pytania rank są powszechnie stosowane do:
- Rankingu priorytetów — prośba o uszeregowanie potrzeb społeczności
- Porządkowania preferencji — ranking cech produktu, atrybutów usług lub opcji polityki
- Porządkowania kroków — układanie kroków procesu
- Wyboru Top-N — w połączeniu z
selected-at()do wyodrębniania tylko top 1, 2 lub 3 opcji
Najlepsze praktyki
- Utrzymuj listę krótką (3–7 pozycji) — rankingowanie staje się kognitywnie wyczerpujące powyżej 7–8 opcji.
- Używaj jasnych, wzajemnie wykluczających się etykiet opcji, aby uniknąć nieporozumień co do znaczenia „pierwszego miejsca".
- Dodaj tekst podpowiedzi wyjaśniający kierunek rankingu (np. „Przeciągnij, aby uszeregować: pierwsze = najważniejsze").
- Weryfikuj za pomocą
count-selected(.) = x, jeśli musisz zapewnić uszeregowanie wszystkich opcji.
Ograniczenia
- Widget przeciągania wymaga ekranu dotykowego lub myszy — może nie działać poprawnie w środowiskach wymagających klawiatury.
- W niektórych starszych klientach mobilnych widget rank może wrócić do interfejsu z numerowanymi polami.
- Nie można dokonać częściowego rankingowania (tj. uszeregowania tylko niektórych opcji) — wszystkie opcje muszą być uszeregowane.