I think your approach itsis on the right direction, one. One important thing,: your domain model itsis not the Sprite class, your domain its but the SpriteWhatever class!. A real domain model itsis the place withwhere your business rules and behaviors are located, and in. In your example, this is the SpriteXXX class, the. The Sprite class itsis only a data structure for carry oncarrying data, off. Of course this class is anemic, because data structurestructures are anemic by definition.