initial domain model