Rank
Rank-Fragen ermöglichen es Befragten, eine Liste von Auswahlmöglichkeiten nach Präferenz oder Priorität zu ordnen.
Der Fragetyp rank präsentiert eine Liste von Auswahlmöglichkeiten, die der Befragte per Drag-and-Drop (oder auf anderem Weg) in eine Reihenfolge bringen muss (von Platz 1 bis zum letzten Platz). Das Ergebnis wird als leerzeichengetrennte Liste von Auswahlwerten in der gewählten Reihenfolge gespeichert, wobei die Auswahlmöglichkeit mit der höchsten Priorität an erster Stelle steht.
Grundlegende XLSForm-Spezifikation
| type | name | label |
|---|---|---|
| rank priorities | main_priority | Ordnen Sie diese Gemeinschaftsbedürfnisse vom wichtigsten zum unwichtigsten |
Die Auswahlmöglichkeiten werden im choices-Arbeitsblatt genau wie bei select_one definiert:
survey:
| type | name | label |
|---|---|---|
| rank priorities | main_priority | Ordnen Sie diese Bedürfnisse vom wichtigsten zum unwichtigsten |
choices:
| list_name | name | label |
|---|---|---|
| priorities | water | Sauberes Wasser |
| priorities | health | Gesundheitsversorgung |
| priorities | education | Bildung |
| priorities | roads | Straßen |
| priorities | electricity | Strom |
Gespeichertes Wertformat
Der gespeicherte Wert ist eine leerzeichengetrennte Liste von Auswahlwerten in der geordneten Reihenfolge (erster Platz = höchste Priorität):
water education health roads electricity
Rangpositionen extrahieren
Verwenden Sie selected-at(), um die Auswahlmöglichkeit an einer bestimmten Rangposition zu erhalten:
| type | name | label | calculation |
|---|---|---|---|
| rank priorities | main_priority | Gemeinschaftsbedürfnisse ordnen | |
| calculate | top_priority | selected-at(${main_priority}, 0) | |
| calculate | second_priority | selected-at(${main_priority}, 1) |
selected-at(${main_priority}, 0) gibt den Wert zurück, der an erster Stelle steht (Index 0 = höchster Rang).
Verwendung von rank-index() mit Wiederholungsgruppen
Wenn rank innerhalb einer Wiederholungsgruppe verwendet wird, ermöglicht rank-index() die Referenzierung des ordinalen Rangs von außerhalb der Wiederholung:
| type | name | label | calculation |
|---|---|---|---|
| calculate | first_ranked | rank-index(1, ${score}) |
Vollständige Details zu rank-index() und rank-index-if() finden Sie unter Funktionen — Funktionen für Wiederholungsfelder.
Anwendungsbereiche
Rank-Fragen werden häufig verwendet für:
- Prioritätsranking — Gemeinschaften nach Entwicklungsbedürfnissen befragen
- Präferenzordnung — Produktfunktionen, Serviceattribute oder politische Optionen ordnen
- Prüfungsaufgaben — Schritte in einem Prozess anordnen
- Top-N-Auswahl — kombiniert mit
selected-at(), um nur die Top 1, 2 oder 3 Auswahlmöglichkeiten zu extrahieren
Empfohlene Vorgehensweisen
- Halten Sie die Liste kurz (3–7 Elemente) — das Ordnen wird bei mehr als 7–8 Auswahlmöglichkeiten kognitiv anspruchsvoll.
- Verwenden Sie klare, gegenseitig ausschließende Beschriftungen, um Verwirrung darüber zu vermeiden, was “erster Platz” bedeutet.
- Fügen Sie Hinweistext hinzu, der die Ordnungsrichtung erklärt (z. B. “Ziehen Sie, um zu ordnen: erster Platz = am wichtigsten”).
- Validieren Sie mit
count-selected(.) = x, wenn sichergestellt werden soll, dass alle Auswahlmöglichkeiten geordnet sind.
Einschränkungen
- Das Drag-to-Rank-Widget erfordert einen Touchscreen oder eine Maus — es funktioniert möglicherweise in reinen Tastaturumgebungen nicht gut.
- Auf einigen älteren mobilen Clients kann das Rank-Widget auf eine nummerierte Eingabeoberfläche zurückfallen.
- Es ist kein teilweises Ordnen möglich (d. h. nur einige Auswahlmöglichkeiten ordnen) — alle Auswahlmöglichkeiten müssen geordnet werden.