Baron Election Page Technical Notes
This page describes the maintenance of the Carolingia Baron[ess]
election page used in 2001. I hope that these notes can be used to
facilitate other elections along the same lines. I used the same
system to facilitate the Seneschal election in 2002.
The setup is a number of candidates who agree to make public their
answers to a variety of questions. Votes may read the answers,
collected by candiate or by question. Candidates may be paired or
not, and may answer individual questions as a pair, or not.
The pages are created using a series of partial HTML pages and
scripts. If I were to do this now, I would probably make a variety
of SSI pages, rather try to generate complete HTML files.
The two examples of this system are available:
Every question has a unix file name. Every candidate, or pair of
candidates, has a unix file name (william, mary,
Create a directory for the working files. This directory will
contain subdirectories for each question
(working/question/), named with the question name, which in
turn contain text files named with the candidates' names,
"william_mary.txt". Also contained here is a file called
question with the text of the question. See a sample directory.
In addition, this directory contains the following:
- candidates directory: Contains a text file for each
candidate containing the full (display) name of the candidate
(william.txt contains the text "William of Handover").
This directory will also contain the html files for answers
collected for each candidate or pair of candidates. See my candidates directory.
- htmlify directory: Containing html files to form the
beginning, middle, and end of various pages to be generated.
Specifically, it should include:
Here is my htmlify directoy.
- images directory: Containing image files of the
candidates (generally a thumbnail and a full-sized image)
- questions directory: Will contain html files for each
question. See my questions directory.
- resumes directory: Containing a file for each
candiates with basic biographical/experience information. See my
- compcand script: Takes two candidate names (or one
candidate name and an 'x') and generates an html file for that
candidate with all the questions' responses. Must be modified for
each new question. Calls
makelinkc and makeanchc. See my
- compques script: Takes question name and generates an
html file with all the candidates' responses. Must be modified
for each new candidate. Calls makelinkq and
makeanchq. See my compques
- makelinkc script: Takes candidate name(s) and
generates a link to a question response. See my makelinkc script.
- makeanchc script: Takes candidate name(s) and
generates an in-page link anchor for each question response. See
my makeanchc script.
- makelinkq script: Takes question name and generates a
link to a candidate's response. See my makelinkq script.
- makeanchq script: Takes question name and generates
an in-page link anchor for each candidate's response. See my makeanchq script.
- compileall script: Calls compques for each
question and compcand for each candidate. Must be
modified for each question or candidate.
Finally, there is the website directory tree, which is mostly just a
scaled-down version of this one. It contains a candidates
directory, with candidate html files; images directory,
with pictures of the candidates; questions directory, with
question html files; and resumes directory, for other
important candidate files. Finally, it has the index.html
file, for entering the site. This file was always hand-coded. See
All of these files are contained in a zip file. Also, here is the zip file for the Seneschal election in