Classroom specialisations
Not all classrooms are equal: a chemistry lab cannot host a sports lesson, a computer room only makes sense for the subjects that use its workstations, a gym is reserved for sports. Classroom specialisation in Omniscol lets you declare these affinities so that automatic generation and diagnostics respect the physical constraints.
How it works: a label shared between classrooms and subjects
Specialisation relies on a free-form label, defined by the school according to its own naming conventions, which links two declarations:
- On the classroom side — each classroom carries at most one specialisation ("chemistry", "computing", "gym"…). Most classrooms have none.
- On the subject side — a subject assigned to a class can require a specialised classroom through its Special classroom field. The value must match exactly the label carried by at least one classroom.
The link is strict in both directions: a subject that requires "chemistry" is only placed in a classroom carrying that label, and a specialised classroom is reserved for the subjects that request its label — it is not used for ordinary lessons.
The classroom's capacity remains a separate check: whatever the specialisation, the expected headcount must fit in the room.
Effect on generation
During automatic generation, for each course, the algorithm only considers compatible classrooms: the specialisation label required by the subject (if any) and enough capacity for the headcount.
If no compatible classroom is available, generation reports it and the diagnostic identifies the subject, the class and the specialisation involved. The decision is yours: add the label to another classroom, remove the requirement carried by the subject, or review the headcounts.
Multi-purpose classrooms
A classroom carries only one specialisation label. For a room that must serve two specialised uses — for example computing and multimedia — create an umbrella label ("computing-multimedia") and set that same label on all the subjects involved.
Generic classrooms
Generic classrooms (without a specialisation) host all the subjects that do not require a specialised room. This is the most common case; add a specialisation only when you want to restrict.
Large room: several lessons at once
A specialised classroom normally hosts one lesson at a time. You can turn it into a large room by setting its maximum number of simultaneous classes: it then hosts several different lessons in parallel (distinct teachers and groups), as long as the combined headcount fits within its capacity. This is the case for an exam room, a gym, a swimming pool or an outdoor area. This setting only appears after the classroom has been given a specialisation.
Best practices
- Start broad — during initial setup, do not add too many constraints, or you may block generation.
- Refine after the first diagnostic — once you see the generation result, you identify the cases where a missing specialisation would have prevented a bad placement.
- Document it for the team — teachers and room staff must understand why a given room is restricted; otherwise they work around it by hand.
How-to
Setting up a science lab
-
Set up a specialised classroom (science lab, computer room, gym) so that automatic generation gets it right.
-
Open the classroom in the timetable's Sites / Classrooms / Resources screen. Fill in its specialisation: pick an existing label or create one (for example
science). A classroom carries only one label. -
Capacity: number of seats. Generation checks that the assigned group's headcount stays ≤ capacity. ⚠ Be realistic — too strict blocks generation, too loose leads to overbooking.
-
On the subject side: on the relevant subject(s) of each class (Life and earth sciences, Biology…), fill in the Special classroom field with the same
sciencelabel. The match must be exact — it is what reserves the room for these subjects. -
Start broad at initial setup — fewer constraints = less risk of blocking generation. You will refine after the first diagnostic when you see the cases where a missing specialisation would have prevented a bad placement.
-
For an unrestricted (generic) room, leave the specialisation empty: the room then hosts all subjects with no particular requirement. This is the simplest default — add the specialisation only when you want to restrict.