- Timetable root element

- Generator generator settings

- General general parameters

- DaysPerWeek number of days (eg. five days, Monday to Friday)
- SlotsPerDay number of slots (teaching hours) per day
- NrRooms Number of rooms
- NrInstructors Number of instructors
- NrClasses Number of classes
- FillFactor Fill factor (ratio between the number of filled slots vs. number of all time slots (for activities))
- ActivityLengthMax Maximal length of an activity (average length is approx. 1/2 of this value
- NrGroupsOfRooms Number of generated alternative groups of rooms (a class has radomly selected one of these group as available rooms)
- NrRoomsInGroupMin Minimal number of rooms in a group
- NrRoomsInGroupMax Maximal number of rooms in a group
- NrRoomInGroupMin Minimul number of groups every room has to be in
- NrDependencies Number of binary dependencies between activities to be generated
- HardFreeResource Probability that an empty slot of a resource is prohibited (a problem is generated in a such way that there is always a solution, these probabilities are related to this solution).
- SoftFreeResource Probability that an empty slot of a resource is discouraged
- SoftUsedResource Probability that a used slot of a resource is discouraged
- HardFreeActivity Probability that an empty slot of an activity is prohibited
- SoftFreeActivity Probability that an empty slot of an activity is discouraged
- SoftUsedActivity Probability that a used slot of an activity is discouraged

- Problem desciption of timetable problem

- General general parameters

- DaysPerWeek days per week
- SlotsPerDay teaching hours per day (`NrSlots=DaysPerWeek*SlotsPerDay`)
- Resources numbers of resources (by the type)

- Classrooms number of classrooms
- Teachers number of teachers
- Classes number of classes
- Special number of special resources

- Activities number of activities
- Dependences number of dependences

- Resources definition of resources

- Classrooms classrooms definition - list of all classes

- Resource classroom definition (with id attribute)

- Name name of the resource
- TimePreferences time preferences - list of discouraged and prohibited slots

- Soft discouraged slot (i.e., resource should no be used in this time; slot numbers are going from zero `slot=NrHours*day+hour`)
- Hard prohibited slot (i.e., resource cannot be used in this time)
- ... another discouraged or prohibited slot

- Resource another resource - classroom
- ...

- Teachers teachers definition - list of all teachers

- Resource teacher (same definition as a classroom)
- ...

- Classes classes definition - list of all classes

- Resource class (same as classroom)
- ...

- Special special resources definition - list of all special resources (e.g. overhead projector)

- Resource special resource (same as class)
- ...

- Activities definition of activities - list of all activities

- Activity an activity definition (with id attribute)

- Name name
- Length length (as a number of slots - teaching hours)
- TimePreferences time preferences - same as resources' preferences - list of discouraged and prohibited slots
- RequiredResources list of required resources and/or groups of resources

- Resource id of required resource (if any)
- Group resource group - list of resources (if any)
  contains attribute `conjunctive` - determines whether the group is conjunctive (yes) or disjunctive (no)

- Resource id of a resource (in the group)
- ...

- ... another resource or resource group

- Dependences definition of dependences - list of dependences between activities

- Dependence time dependence definition (with id attribute)

- FirstActivity first activity
- SecondActivity second activity
- Operator constraint between activities - `Before;Closely before;After;Closely after;Concurrently`

- Dependence another time dependence
- ...

- Solution a solution to the above problem

- Activity activity placement (contains activity id)

- StartTime time (slot number `0 .. NrSlots-1`) when the activity starts
- UsedResources list of allocated resources

- Resource id of allocated resource
- Resource another allocated resource
- ...