This is an old revision of the document!
revokeAssistantRights(ident username, ident exerciseId) { assume exists //accounts/account[username]/exercise[exerciseId]; # implies the account exists, which is implicitly true anyway assume exists //exercises/exercise[exerciseId]/assistant[account]; # implied by integrity and the assumption before remove //accounts/account[username]/exercise[exerciseId]; remove //exercises/exercise[exerciseId]/assistant[account]; }