This is an old revision of the document!
A guest is basically everyone who does not have an account, i.e. no other associated role. Guests probably can't do much, but they can create an account.
createStudentAccount(ident username, ident studentId, string lastName, string firstName, string email, string password, string code) { assume not exists /account[username]; assume count(studentId, /account/student/id) = 0; insert / <account username=[username] lastName=[lastName] firstName=[firstName] email=[email] password=[password] code=[code]> <student id=[studentId] /> </account> }