The code and filestructure has been generated by the Ecore model.
The instance made based on the model lies here.
The constraint made was that semester must be a string that is either equal to Spring or
Autumn. Find the constraint here.
We based our model on the page grades.no, which is a page for looking at courses at NTNU, see the grade distribution for course and general information about it. It has a good number of concepts, and the concepts have various relations between them. Se the model under. It has fixed structures, like the layout of the data and template of the page. But it also has variable structure, which is the specific information in the data, like course name, semester, etc. See screenshot here
Our model has four entities, with realtions between them and where each attribute has a type, connected to the type of data that is supposed to be presented there.
See our ecore model here