Dynamically build VL records from a definition

Is it possible to define VL records by a config file? For example, define an app model in a spreadsheet and then build records according to that when the patch is opened in the editor.

If not, is it possible the other way around? Build the model in VL and then crawl the data structure to export a list of properties with their “path” in the model that can be used for data binding with channels.