Chapter III
-eVote for User/Administrators-

Regular users in a eVote system have the power to be administrators and authors of polls and petitions. Anyone with an email address can express themselves and help their causes through these facilities.

The Email List Voting Facility

The email list facility supports polling and voting on eVoted email lists.

Polling The List

Any member of an eVoted list can poll the other members. Instructions for initializing a poll are sent to the user when the user sends an "eVote help poll" message to the list address. These are those instructions.

You can send a message to your list's regular address to set up a new poll for the your email list. Our example list address is

The subject of your poll will be the subject line of your message. Choose it carefully. Keep it short and easy to spell. eVote only recognizes the first 36 characters of your subject line.

Polling on a particular subject does not interfere with the regular messages sent and distributed to the list on that subject.

There are many types of polls available. Each poll is:

a single question or a multiple choice
yes/no or numeric
public or private or if-voted
visible or hidden

For example, send the following line to take a yes-or-no vote, where the participants can see others' votes, and where the vote tally is visible to all as the vote develops:

eVote poll [y/n] public visible
  o    *    \                /
  o    *      \            /
  o    *        \        /
  o    *          \    /
  o    *            \/_  _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _  
  o    *                                                            |
  o    * * * "poll" is the command to set up a new poll.            |
  o                                                                 |
  o o  Be sure that "eVote" is the first word in your message!      |
       Otherwise your command will be sent to the whole list        |
       and it will be ignored by eVote.                             |
     _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _|
    |   You concoct other types of votes by choosing other words
    |   for the last three spots in your "eVote poll" command:
    |    [y/n]              public                 visible
    |      or                 or                     or
    |    [1,10]             private                hidden
    |      or                 or                       
    |    [3,74]             if-voted               Can we see 
    |                                              the tally as 
    |    Give the vote      Say "public" if        it develops?
    |    limits in [ ]      you want a show
    |    first.  119 is     of hands, that 
    |    the highest        is, list members can query eVote to
    |    vote possible;     see other members' votes.  Say "private"
    |    -119, the lowest.  to take a secret vote; "if-voted", if
    |    [y/n] means a      participants can see *if* others voted,
    |    yes or no vote.    but not *how*.
    |_ _ _ _ _ _ _ _ _ _|

Closing Your Poll

Through the regular mechanism, only the person who initiates the poll can close it. To close a poll, send email to Use the same subject line to identify the poll. Have your message say:

eVote close

A message is sent to the list that announces the closing of the poll and the closing statistics.

The poll and the data remain in the data for at least 28 days so that the voters can check that their vote is still as they intended, and, on PUBLIC polls, they can check everyone's votes.

The list's owner can close any poll by using the list's password. Also, the owner can close a poll and specify that an announcement NOT be sent to the list.

Dropping Your Poll

After the poll has been closed for 28 days, the initiator of the poll can remove it from the database by sending the command:

eVote drop

A message is sent to the list announcing that the poll has now been dropped from the data.

After the poll has been closed for one year, anyone can drop it from the database with the same command.

Also, any member of the list can drop a poll at any time, *if* there have been no participants, i.e., no voters.

Again, the owner has overriding power to drop any poll at any time, and even to do so silently.

The Petition Facility

The petition facility is managed collaboratively and remotely through special email lists. Any user who belongs to a petition list can initiate a petition.

Petition lists are those email lists whose address starts with "petition". There can any number of these at an eVoted site: petition@eVoted-site, petitiona@eVoted-site, petitionb@eVoted-site, etc.

The Petition Lists

The petition lists are used for discussing the issues pertinent to your petitions and for setting up the actual petitions. This enables a petition to be administered remotely by a cooperating group.

All [y/n] polls in the "petition" list are assumed to be petitions, not regular polls. Therefore, to set up a petition, set up a visible [y/n] poll in the petition list and the poll text becomes the petition text. Or you can use the special "eVote petition" command. It is an alias for "eVote poll [y/n] visible". You still need to give either "public" or "private" (if-voted has no meaning for petitions), i.e., a complete command for a petition is:

eVote petition public
We want change.

Generating Simple Petitions

To generate a simple petition, i.e., one without fields:

  1. Choose your subject line carefully, say "Save the World".

  2. Send a message to with your subject.

  3. Make the message say:

    ---  cut  ---
    eVote petition public
    Type in the text of your petition.
    ---  cut  ---
  4. Advertise the following instructions:

Instructions for Signing A Petition

= * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = * 

Instructions for Signing A Petition
============ === ======= = ========

1.  Send email to

2.  Make your subject be "Save the World" (really, the subject line of
    your poll).

3.  Have the message be your name, affiliation, comments, whatever.

= * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = * 

The signers of your petitions do not have to subscribe to your petition list or to any list to sign a petition.

If the message is blank, only the email signature will be recorded. If the message contains text (other than "help" or "info"), the message text will be included as a comment in the signature file.

If the petition requires the user to provide completed fields, (see "Initializing Petitions With Forms" below) the message must contain these fields or instructions will be sent and the signature will not be counted.

If the petition requires votes on specific questions, the votes must be given before the fields for the form.

Getting Info About A Petition

When anyone signs your petition, they will be sent a receipt which tells them the text of the petition and gives instructions for unsigning; and for seeing the signatures, if it's a PUBLIC petition.

Your audience can see the petition text without signing if they:

  1. Send email to

  2. Make your subject be "Save the World" (really, the subject line of your petition).

  3. Have the message say:


Petition Privacy

The email addresses of the signers of petitions are not revealed to anyone unless there is a "email:" field in the form for the petition, and that field either has an email address specified, or the word "Yes" in the signature. This field should be inserted into the form description as described in "Initializing Petitions With Forms" below.

There are two types of petitions: "private" and "public".

If the petition is private, only the initiator of the petition can retrieve the signatures, and the email addresses, and the initiator must be trusted to behave responsibly with your information. Of course, the site administrator can also discover the email addresses.

If the petition is public, anyone on the petition list can retrieve the signatures, but no one (except the site administrator) can retrieve the email addresses.

"If-voted" has no meaning for petitions and is interpreted as "private".

The "eVote members" command does not work for petition lists in order to keep the email addresses of your signers are secret.

Warnings: Although eVote will not reveal your vote to the other members of the voting community, the system administrator of the computer that stores your vote can quite easily see the voting records of individuals. Also, there is the possibility that your ballot can be seen by a "snooper", someone who intercepts your ballot in transit.

The integrity of the poll, i.e., the accuracy of the count, is susceptible to being tampered with by the system administrator of the computer running the eVote(R)/Clerk software.

Both the privacy of your vote and the integrity of the poll are susceptible to attack at your own computer.

Confirmation Of Signatures

For security, you can instruct the software to generate and process a "confirmation" message with each signature. To do so, initialize your petition with an additional keyword, "confirm".

eVote petition public confirm
Stop globalization.

The keyword "confirm", if present, makes your petition secure. When someone sends in a signature, if the signature and form fields are acceptable, a confirmation message goes back to the signer. The signer is instructed to reply-to the confirmation message and when s/he does so, only then is the signature accepted into the data.

If you do not initialize your petition with the "confirm" keyword, and later your petition comes under attack, the sysadmin can add the confirm keyword to your petition while it is operating.

See "Alterations on the Fly" below.

Initializing Petitions With Forms

eVote's petition facility supports forms. That is, eVote will recognize field names in the signature message, demand that certain fields be filled in, and demand that a certain format be followed in the field for the signature to be accepted.

If the attempt to sign is rejected, an error message with polite instructions will be returned.

To set up a petition that requires a form, your instruction to a petition list might look like:

eVote petition public
*state: XX
*zip: 99999
Please fix the roof.

In this case signatures will be rejected if they don't include the three fields, name, state, and zip. That's the meaning of the '*' in the first column.

In the example, the required "name:" field must have something on it, but only the existence of some text on the line is verified. The state field must be filled in with two letters. The zip field must contain 5 numbers, no more, no less. You may mix X's and 9's in one field's format.

The other, non-required, fields may or may not be in the signature and if they are, they may be in any order. X's and 9's can be included in non-required fields but they will only be aids to the signers, they are not checked.

The "comment:" field is special. If it is in the list of fields, it must be the last field. The comment field allows the response to be of any length, any number of lines.

Also, if there is no comment field, there is still a hidden comment field. Comments are always allowed in a petition with fields and any text recognized as a comment from the signer is included in this field.

The comment field can be a required field, just like any other field.

You can use any words or phrases for the names of your fields. The size limit is 40 characters. You may not have two fields with exactly the same name.

The "message:" line signals the end of the fields and all text after that will be part of the petition text itself.

If you wish to add fields to a working petition, see "Alterations on the Fly" below in the chapter, "eVote for Site Administrators". You need the assistance of the administrator to make changes on the fly.

Multi-Language Petitions

eVote's petition facility will parse the subject line of any message coming into eVote_petition from the address and determine if the subject exists as a petition title in any language for any petition on any petition list at your facility.

At this time, eVote petitions can speak English, Spanish and/or French. There is a tool to help with translating the software to other languages. See EVOTE_HOME_DIR/eVote/src/tools/trans/README.

Translations for subjects and petition texts can be supplied remotely by the petition's author at the time of initialization, or they can be added later by the site administrator. See "Alterations On the Fly" below.

Voting Petitions

Many times you want your signers to vote on a set of issues, not just contribute a signature and a form. eVote provides support for this as a set of [yes/abstain/no] questions.

Any regular [-1,1] group poll can be attached to a petition. Initiate the regular poll on your petition list with the title "La Consulta -eVote" and it will attach itself to the "La Consulta" petition. The "-eVote" keyword at the end makes it all happen. Your message may look like:

eVote poll group private visible
1. one [-1,1]
2. two [-1,1]
3. three [-1,1]
4. four [-1,1]
5. five [-1,1]
This poll accompanies the petition on La Consulta.

In this case, the petition texts, in all languages, should explain the 5 yes/no votes that are possible. The "La Consulta -Es" petition initiation might look like:

eVote petition public
*pais: -en country: -fr pays:
*nombre: -en name: -fr nom: 
email: -en email: -it email:
Pregunta 1. - ?Esta's de acuerdo en que los pueblos indi'genas deben
ser incluidos con toda su fuerza y riqueza en el proyecto nacional y
tomar parte activa en la construccio'n de un Me'xico nuevo?

Pregunta 2. - ?Esta's de acuerdo en que los derechos indi'genas deben
ser reconocidos en la constitucio'n Mexicana conforme a los acuerdos
de San Andre's y la propuesta correspondiente de la comisio'n de
concordia y pacificacio'n del congreso de la unio'n?

Pregunta 3. - ?Esta's de acuerdo en que debemos alcanzar la paz
verdadera por la vi'a del dia'logo, desmilitarizando el pai's con el
regreso de los soldados a sus cuarteles como lo establecen la
constitucio'n y las leyes?

Pregunta 4. - ?Esta's de acuerdo en que el pueblo debe organizarse y
exigir al gobierno que "Mande obedeciendo" en todos los aspectos de la
vida nacional?

Pregunta 5. - ?Esta's de acuerdo en que los mexicanos y mexicanas que
radican en el extranjero deben ser parte activa en la construccio'n de
un Me'xico nuevo y tener derecho al voto en las elecciones?

-Fr La Consultation
QUESTION 1: -Etes-vous d'accord avec la proposition que les peuples
indige`nes devraient e^tre inclus, avec tous leurs points forts et
richesses, dans le projet national et devraient prendre une part
active dans la construction d'un nouveau Mexique?

QUESTION 2: -Etes-vous d'accord que les droits des indige`nes
devraient e^tre reconnus par la Constitution Mexicaine comme
spe'cifie's par les Accords de San Andre's et la proposition
correspondante pre'sente'e par la Commission d'Accord et de
Pacification du Congre's de l'Union?

QUESTION 3: -Etes-vous d'accord que nous devrions achever une paix
ve'ritable par le dialogue, la de'militarisation du pays, et en
renvoyant les soldats a` leurs casernes, comme la constitution et la
loi l'e'tablissent?

QUESTION 4: -Etes-vous d'accord que les gens devraient s'organiser eux
me^mes et demander que le gouvernement "dirige en obe'issant" envers
chaque aspect de la vie nationale?

QUESTION 5: -Etes-vous d'accord que tous les mexicains vivant a`
l'e'tranger devraient prendre une part active dans la reconstruction
d'un nouveau Mexique, et devraient avoir le droit de vote aux

-en The Consultation
QUESTION 1: -Do you agree that indigenous peoples should be included,
with all of their strength and wealth, in the national project and
should take an active part in the construction of a new Mexico?

QUESTION 2: -Do you agree that indigenous rights should be recognized
in the Mexican Constitution in conformance with the San Andres Accords
and the corresponding proposition put forth by the Commission of
Concordance and Pacification of the Congress of the Union?

QUESTION 3: -Do you agree that we should reach true peace through the
path of dialogue, demilitarizing the country and returning soldiers to
their barracks, as the Constitution and the law establish?

QUESTION 4: -Do you agree that the people should organize themselves
and demand that the government "command by obeying" in all aspects of
the national life?

QUESTION 5: -Do you agree that Mexicans who live abroad should be an
active part in the construction of a new Mexico and have the right to
vote in the elections?

WWW Support For Your Petition

If your petition is promoted on a web page, it is possible to use Javascript or CGI (or even a mixture Javascript/CGI) to make a button that sends email requests to service the signing of petitions, the unsigning of petitions, even subscribing and unsubscribing to lists, and all email commands.

Check out the petition page for "La Consulta":

and for "Kopilli Ketzalli":

You can copy these pages and then modify them to suit your petition. They are samples of Javascript type petitions.

Or visit the "Nader ag and food" petition:

This one is a mixture of Javascript and CGI script.

The Javascript only petition have the advantage that they are simple to make and they extract automatically the signer's signature from the browser's configuration. They use the "mailto" command as the form action. However, they have a big disadvantage, they do not always work if the signer's browser is Microsoft Internet Explorer.

The forms using CGI or CGI/Javascript invoke a CGI script to format the email which will be sent to eVote. It is necessary for the signer to enter his email address, this is a disadvantage as it is always possible that an error will be made at this stage and the wrong address will be entered, but it is also an advantage for those who wish to sign from a public library or an Internet Café. The advantage of CGI/Javascript is that Javascript can be used to verify that the form has been correctly filled in without any transaction taking place between the browser and the server. It's only when Javascript is satisfied that the CGI script is invoked.

The web pages you make for your petition can be mirrored on any number of sites (a security feature) and they will all feed the one petition.

WWW Reports

Your petition web page, no matter where it is, can report the current count of signatures. eVote will use ftp to send the updates of the count to a remote computer every time someone signs a petition or removes a signature. This, however, must be coordinated with the administrator of the eVoted site.

Your job will be to make your web page with the report of the number of signers. Make the number of signatures 0. You can also have a date updated on the web page. For starting, put the current date in your web page with the format: Wed Sep 20 11:20:51 PDT 2000 which is the standard unix format.

Send your web pages to the system administrator of the eVoted site and she can fix it up for you. It is a piece of work to make this happen so please be patient and understanding with your administrator.

Bad Signatures

If you wish to remove someone's signature from the petition, you can do so if you know the password for the list. The owner of the list knows the password and will, perhaps, share it with you.

  1. Send a message to:
  2. The subject must be the subject of the petition:

    Save The World
  3. The message should be

    eVote approve <password> unsign <address> <address> <...>

This will remove the signature(s) from the signature file and the email address is removed from eVote's data. The count is adjusted and any reports attached to the petition are updated.

Alterations On The Fly

Your petition can have certain alterations occur after the petition signature collecting is in process. However, these alterations must be made by the site administrator.

The alterations that are supported are:

Adding additional languages

Adding dynamic WWW reports of signature counts

Adding WWW support for signature gathering

Turning on/off the confirm feature

Changing the required fields

If you need these, you must contact the site administrator.

Back to the Table of Contents To Chapter IV

Last modified: Tue May 11 05:06:10 EST 2004