With this domain model, you have no guarantees over what information you receive (which might be true, but it's very inconvenient): you could get a dozen email addresses, none of which are primary, since a home address might be primary. I'd add more IsPrimary attributes (IsPrimaryEmail, IsPrimaryAddress). Then, add a 1-1 association between AbstractPerson and EmailAddress and fill it if IsPrimaryEmail is true, or if this is the only email address connected to the AbstractPerson. With this association, it's easier to build your page, while remaining true to the way the data has been modeled.
Furthermore, have a chat with the people who create the domain models. I've had a project which contained data architects who drew diagrams like this. That is fine for a conceptual model of the data in your project (or business), but you always need a 'technical domain model' to fulfill requirements in a maintainable fashion.