You might just make the UserProxy hold a collection of User objects rather than having a separate UserIDProxy instance registered for each user. This means you can iterate over all users, as well as keeping an associative array by name or ID.
-=Cliff>
thanks, and where is the best place for the collection?