Write a scheme
The scheme lives in scholia/scheme.yaml. Edit it directly with any
text editor. The format is a YAML mapping: top-level keys are question
names, and each question maps category labels to a mark and a feedback
string.
Basic structure
q1(a):
a:
marks: 0
feedback: "Did not attempt the question."
b:
marks: 8
feedback: "Correct and well-presented solution."
c:
marks: 6
feedback: "Correct method but the final calculation contains an error."
Question names can be any string (q1, q1(a), part_2, etc.).
Category labels are single characters by convention but can be any
short string. Marks are integers.
Adding a new question
Append a new top-level key to the file:
Adding a new category mid-marking
If a student's work does not fit any existing category, add a new one to the scheme:
Run scholia mark to regenerate all feedback. Any student subsequently
assigned to category d will receive the new mark and feedback string;
previously assigned students are unaffected until their assignment is
updated.
Syncing the student roster
After adding a new question to the scheme, run:
This adds the new question column to students.csv so that it is ready
to receive category labels. See
Sync scheme headers for details.
Adjusting marks
A category's mark can be changed at any time by editing the marks
field and re-running scholia mark. All feedback files and the summary
are regenerated from the updated scheme. See the
discussion on the marking approach
for the rationale behind this design.