I think you're going to have to be a whole lot more specific about what you mean by "role" before anyone can give you a sensible answer to this. Maybe you can give an example piece of code that uses what you are calling a "role". That would help.