added Rich OO domain model