UNPKG

grading

Version:

Grading of student submissions, in particular programming tests.

124 lines 4.47 kB
{ "$schema": "https://json-schema.org/draft-06/schema", "$id": "https://prof.bht-berlin.de/pilgrim/schemas/correction.schema.json", "$ref": "#/$defs/CorrectionSchema", "$defs": { "CorrectionSchema": { "description": "Manual corrections of automatic grading.", "type": "object", "additionalProperties": false, "required": [ "course", "term", "exam", "corrections" ], "properties": { "course": { "description": "Name of the course.", "type": "string" }, "term": { "description": "Term, e.g. WS 2022", "type": "string" }, "exam": { "description": "Name of the exam.", "type": "string" }, "corrections": { "description": "List of corrections.", "type": "array", "items": { "$ref": "#/$defs/StudentCorrection" } } } }, "StudentCorrection": { "description": "Correction of the full exam or a single task for a single student.", "type": "object", "additionalProperties": false, "required": [ "submissionID", "userName" ], "properties": { "submissionID": { "description": "ID of the submission.", "type": "string" }, "userName": { "description": "Name (First Last) of the student.", "type": "string" }, "general": { "description": "General correction applied to complete submission.", "type": "array", "items": { "$ref": "#/$defs/GeneralCorrection" } }, "tasks": { "description": "General correction applied to complete submission.", "type": "array", "items": { "$ref": "#/$defs/TaskCorrection" } } } }, "GeneralCorrection": { "description": "General correction applied to complete submission.", "type": "object", "additionalProperties": false, "required": [ "reason" ], "properties": { "points": { "description": "Points to be added or subtracted (except absolute is set). If omitted, 0 is assumed and the points are not changed.", "type": "integer", "minimum": -100, "maximum": 100 }, "absolute": { "description": "If this is set to true, the points are not added or subtracted, but explicitly set. All other points are ignored.", "type": "boolean" }, "reason": { "description": "Explanation of the manual correction.", "anyOf": [ { "type": "string" }, { "type": "array", "items": { "type": "string" }} ] } } }, "TaskCorrection": { "description": "Correction applied to a single task.", "type": "object", "additionalProperties": false, "required": [ "name", "reason" ], "properties": { "name": { "description": "Name of the task.", "type": "string" }, "points": { "description": "Points to be added or subtracted.", "type": "integer", "minimum": -100, "maximum": 100 }, "reason": { "description": "Explanation of the manual correction.", "type": "string" } } } } }