1 # UseVote (c) 1993,94 Ron Dippold, alle Rechte vorbehalten
2 # uebersetzt von Frederik Ramm
4 # Mit dieser Datei koennen spezielle Regeln fuer eine gueltige Stimmabgabe
5 # bei Mehrgruppenabstimmungen erstellt werden.
6 # Beispiel: Eine Gruppe soll aufgeteilt werden, und Du willst erzwingen,
7 # dass jemand, der fuer eine der neuen Untergruppen stimmt, auch fuer
8 # die .misc-Gruppe stimmen muss. Man kann eine Menge komplexe Sachen hier-
9 # mit machen, wenn man Programmierer ist :-)
11 # Das allgemeine Format sieht so aus:
12 # (a) alles, was mit # anfaengt, ist ein Kommentar.
13 # (b) "echte" Regeln sehen etwa so aus (natuerlich ohne #):
14 # if .jjjjj then J.....
16 # Eine Regel beginnt immer mit "if", und danach folgen eine Anzahl Symbole;
17 # diese Anzahl muss gleich der Anzahl der Gruppen sein, ueber die abgestimmt
19 # Oben geht es also um eine Abstimmung ueber sechs Gruppen.
20 # Die Symbole zwischen 'if' und 'then' geben an, welche Bedingungen erfuellt
21 # sein muessen, damit das System auch die Bedingungen hinter then prueft.
23 # Nach 'then' folgen nochmal so viele Symbole, die angeben, welche Bedin-
24 # gungen erfuellt sein muessen, falls die Bedingungen zwischen 'if' und
25 # 'then' erfuellt waren. Jeder Wahlschein, auf den das nicht zutrifft, ist
28 # Folgende Symbole sind erlaubt:
32 # S eine JA- oder NEIN-Stimme
33 # I eine Enthaltung oder NEIN-Stimme
34 # . egal (Ja, nein oder Enthaltung)
35 # j eine oder mehrere der markierten Gruppen hat JA-Stimme
36 # n "" "" "" "" "" "" "" NEIN-Stimme
37 # e "" "" "" "" "" "" "" Enthaltung
38 # s "" "" "" "" "" "" "" Ja- oder Nein-Stimme
39 # i "" "" "" "" "" "" "" Enthaltung oder Nein-Stimme
41 # Alles klar? Jede Stimme wird mit den Symbolen verglichen, und wenn alle
42 # Kriterien passen, ist der Ausdruck wahr. Wenn der erste Ausdruck (if x)
43 # wahr ist, muss auch der zeite (then y) wahr sein, sonst ist der Wahlschein
44 # ungueltig. Ein Beispiel:
45 # if .jjjjj then J.....
46 # Das heisst: Wenn der Waehler fuer *irgendeine* ausser der ersten Gruppe mit
47 # JA stimmt, dann *muss* er JA fuer die erste Gruppe stimmen, oder das ganze
49 # Das koennte z.B. eine Gruppenaufteilung sein, wo fuer die erste (die .misc)-
50 # Gruppe gestimmt werden *muss*, wenn fuer eine der anderen gestimmt wird.
52 # Hier noch ein Beispiel:
56 # Diese Regeln sagen: Wer fuer die erste Gruppe abstimmt, der muss auch fuer
57 # die zweite und dritte Gruppe abstimmen - egal wie. Ausserdem muss er (Re-
58 # geln 2 und 3) sich bei 3 enthalten, wenn er bei 2 eine Stimme abgibt und
59 # umgekehrt. Die vierte Gruppe wird hier gar nicht betroffen.
61 # Also: es gibt einfache Regeln, aber es sind auch sehr komplizierte Kom-
62 # binationen denkar. Das Programm macht alles mit... die Frage ist, ob
63 # es die Waehler tun :-)
65 # Fuege Deine Regeln hier an. Mit "uvvote.pl -t" kannst Du sie testen.