refine the data model