halfway there with the base data entities