updates to allow json-schema definition of the data models