Hi @WillowMobileSystems the data is certainly structured and held in a relational database. Not denormalized at all.
The template defines financial products from the basic current account, debt-card, credit card to the more complex structured products, complex derivatives and more recently cryptocurrencies and digital assets.
Each ‘type’ of financial product has its own set of features. One way would have been to create a dedicated table for each ‘type’ of product. E.g. one for Debt-cards and another for Credit cards etc. But that is too restricted and requires a model-change everytime a new ‘type’ of product is introduced or a new feature is added to the template.
A further complication is that some features have a different set of permitted values.
E.g Underlying asset permitted values changes based on the ‘type’ of product being defined.
So not an easy problem to solve, irrespective of the platform. Creating a dynamic form was seen as the lesser of two evils; unless I have totally missed something and happy to be enlightened.