classUser:has_many:domains,:through=>:domain_coordinators:has_many:regions,:through=>:regional_coordinators:belongs_to:domain:belongs_to:regiondefdomains_responsible_forself.domains
enddefregions_responsible_forself.regions # Not very fast code... but will work
endendclassDomainCoordinator:belongs_to:user:belongs_to:domainendclassRegionalCoordinator:belongs_to:user:belongs_to:regionendclassDomain:has_many:coordinators,:through=>:domain_coordinators,:source=>:users:has_many:users:belongs_to:regiondefcoordinatorsself.coordinators
enddefusersself.users
endendclassRegion:has_many:coordinators,:through=>:regional_coordinators,:source=>:users:has_many:users:has_many:domainsdefcoordinatorsself.coordinators
enddefusersself.users
endend