domain model pattern1