implement relationships between components