I'm asking that because I'm not aware of any relevant use-case that would require the use of S3Represent here. Currently, these tables are completely automated - no user is looking at a list of role_ids at the moment. 

The only reason for this to be there at all was to be able to investigate issues with the functionality, i.e. as an easy means to identify objects from the CLI - and for that, pr_role_represent is absolutely good enough (as you always only look at a single row).

So I wonder: what has changed? Is there a new view that I am not aware of which displays multiple role_ids? Where? What is it being used for?

If there is not, I see this task of yours as an exercise, and for that it may be good enough as it is - but no need to merge it into trunk (it only complicated a simple case).