union of field and container logic, with the name of component