-
Bug
-
Resolution: Fixed
-
Minor
-
2.8.6, 2.9, 2.9.4, 3.0.2, 3.1
-
MOODLE_28_STABLE, MOODLE_29_STABLE, MOODLE_30_STABLE, MOODLE_31_STABLE
-
MOODLE_29_STABLE, MOODLE_30_STABLE
-
MDL-50218-master -
Requests to read an outcome value using the LTI 1.1 Basic Outcomes service returns a value of zero when no grade exists for the user. When the grade is deleted (using the LTI 1.1 Basic Outcomes service) a grade item is created with a value of zero and a read request continues to return a zero value, even though the grade has supposedly been deleted. I would regard a value of zero as being different from the absence of a grade, which I would expect to be returned as an empty string. As per section 6.1.2 of the LTI 1.1 specification:
If the grade has not yet been set via a replaceResult operation or an existing grade has been deleted via a deleteResult operation, the TC should return a valid response with a present but empty textString element. The TC should not return 0.0 to indicate a non-existent grade and the TC should not return a failure status when a grade does not exist. It should simply return an "empty" grade.