Avoid Anemic Models

Build domain models that encapsulate functionality (business logic, calculations, validations, etc.) along with attributes and properties.  Domain models should not contain just data — that's the purpose of data structures.  Keep your service layer thin.  It should only be used to orchestrate behavior contained within domain objects.

Anemic Domain Model is an anti-pattern that contradicts object-oriented design principles and should not be used.

;