Defining a domain model