This is an old revision of the document!
revokeExaminerRights(ident uid, ident username, ident examId) { assume exists //accounts/account[uid]/admin; assume exists //accounts/account[username]/examiner[examId]; # implies the account exists, which is implicitly true anyway assume exists //exams/exam[examId]/examiner[username]; # implied by integrity and the assumption before remove //accounts/account[username]/examiner[examId]; remove //exams/exam[examId]/examiner[username]; }