Great idea! However, watching *.fet file structure I can assume your doubts. As I can see you use object name as some kind of ID (all names of basic objects must be unique). Maybe that could be solution for groups of teachers too. For instance in the fet part below there is a constraint for all groups of students of the 8. grade. How many groups (divisions) are there in 8. grade is defined somewhere up in the same file. Isn't in this case "8." something like a group of groups? Maybe you could apply the same for groups of teachers by forcing users to give every group of teachers unique name.
Code Select
<ConstraintStudentsSetNotAvailableTimes>
<Weight_Percentage>100</Weight_Percentage>
<Students>8.</Students>
<Number_of_Not_Available_Times>31</Number_of_Not_Available_Times>
<Not_Available_Time>
<Day>PON</Day>
<Hour>1 </Hour>
</Not_Available_Time>
<Not_Available_Time>
<Day>PON</Day>
<Hour>2 </Hour>
</Not_Available_Time>
<Not_Available_Time>
<Day>PON</Day>
<Hour>3 </Hour>
</Not_Available_Time>
<Not_Available_Time>
<Day>PON</Day>
<Hour>4 </Hour>
</Not_Available_Time>
<Not_Available_Time>
<Day>PON</Day>
<Hour>5 </Hour>
</Not_Available_Time>
<Not_Available_Time>
<Day>PON</Day>
<Hour>6 </Hour>
</Not_Available_Time>
<Not_Available_Time>
<Day>UTO</Day>
<Hour>7|0</Hour>
</Not_Available_Time>
<Not_Available_Time>
<Day>UTO</Day>
<Hour>1 </Hour>
</Not_Available_Time>
<Not_Available_Time>
<Day>UTO</Day>
<Hour>2 </Hour>
</Not_Available_Time>
<Not_Available_Time>
<Day>UTO</Day>
<Hour>3 </Hour>
</Not_Available_Time>
<Not_Available_Time>
<Day>UTO</Day>
<Hour>4 </Hour>
</Not_Available_Time>
<Not_Available_Time>
<Day>UTO</Day>
<Hour>5 </Hour>
</Not_Available_Time>
<Not_Available_Time>
<Day>UTO</Day>
<Hour>6 </Hour>
</Not_Available_Time>
<Not_Available_Time>
<Day>SRI</Day>
<Hour>1 </Hour>
</Not_Available_Time>
<Not_Available_Time>
<Day>SRI</Day>
<Hour>2 </Hour>
</Not_Available_Time>
<Not_Available_Time>
<Day>SRI</Day>
<Hour>3 </Hour>
</Not_Available_Time>
<Not_Available_Time>
<Day>SRI</Day>
<Hour>4 </Hour>
</Not_Available_Time>
<Not_Available_Time>
<Day>SRI</Day>
<Hour>5 </Hour>
</Not_Available_Time>
<Not_Available_Time>
<Day>SRI</Day>
<Hour>6 </Hour>
</Not_Available_Time>
<Not_Available_Time>
<Day>ČET</Day>
<Hour>1 </Hour>
</Not_Available_Time>
<Not_Available_Time>
<Day>ČET</Day>
<Hour>2 </Hour>
</Not_Available_Time>
<Not_Available_Time>
<Day>ČET</Day>
<Hour>3 </Hour>
</Not_Available_Time>
<Not_Available_Time>
<Day>ČET</Day>
<Hour>4 </Hour>
</Not_Available_Time>
<Not_Available_Time>
<Day>ČET</Day>
<Hour>5 </Hour>
</Not_Available_Time>
<Not_Available_Time>
<Day>ČET</Day>
<Hour>6 </Hour>
</Not_Available_Time>
<Not_Available_Time>
<Day>PET</Day>
<Hour>1 </Hour>
</Not_Available_Time>
<Not_Available_Time>
<Day>PET</Day>
<Hour>2 </Hour>
</Not_Available_Time>
<Not_Available_Time>
<Day>PET</Day>
<Hour>3 </Hour>
</Not_Available_Time>
<Not_Available_Time>
<Day>PET</Day>
<Hour>4 </Hour>
</Not_Available_Time>
<Not_Available_Time>
<Day>PET</Day>
<Hour>5 </Hour>
</Not_Available_Time>
<Not_Available_Time>
<Day>PET</Day>
<Hour>6 </Hour>
</Not_Available_Time>
<Active>true</Active>
<Comments></Comments>
</ConstraintStudentsSetNotAvailableTimes>