>My idea was to write a program to help CS students from Barcelona's CS
>Faculty (FIB) to choose among the different optional subjects.
Rather try to hard-code all that information into an application such
as dia, you might wish to consider creating a simple cgi application,
with a databse backend. Dia is not appropriate for a schedule-maker,
imo.
Make a back-end library which understands the structure of a schedule,
and has the functionality required to create and manipulate them.
Connect this to a set of forms with some cgi scripts. Get the backend
data from a postgres db running on the same machine as apache. Even
better, make your CS students do it.
If you wish, provide a link that says "download schedule in dia format"
which generates a completed schedule in dia xml format (even set the
mime
type :).
(You will appreciate the database backend so that you can deal with
class-cancellations, centralized course,student,and teacher info, etc)
BTW, this type of project must have been done hundreds of times already.