There should be a UI that lets users create data types to be stored in the database. Essentially, they give a name to the datatype and the specify its fields from a variety of standard types (integers, Booleans, strings) to those datatypes that they already set up for storage in the database (i.e. for foreign keys) to slightly more complex types such as lists and maps (which then would be parameterized over the types they are lists/maps of - not sure if it should be possible to have lists of lists (of lists of ...), though).
@lk432
There should be a UI that lets users create data types to be stored in the database. Essentially, they give a name to the datatype and the specify its fields from a variety of standard types (integers, Booleans, strings) to those datatypes that they already set up for storage in the database (i.e. for foreign keys) to slightly more complex types such as lists and maps (which then would be parameterized over the types they are lists/maps of - not sure if it should be possible to have lists of lists (of lists of ...), though).