This is a prototype reactive web app for bitemporal data management based on a Julia bitemporal data management API and a UI based on Stipple and QUASAR (where Stipple did not yet provide a solution, or I didn't find one).
Architecture is MVVM
- BitemporalReactive connects the business model to the view model and provides event handling.
- ContractSectionView defines the view model, the UI elements, and their data bindings.
- LifeInsuranceDataModel - an imported package - provides the business model and logic based on a framework for bitemporal data management
- LifeInsuranceProduct - an imported package - provides actuarial computations (mostly ony a placeholder by now)
- populating the database
- displaying contract versions and history
The app creates or mutates bitemporal entities as of a point in reference time. A bitemporal transaction - here also called workflow - is started in two ways:
- an instance of history - the root of bitemporal entities -
- a version
- a validity_interval
- a version
- a valididity_interval and references
- a given history
While these data comprise the scaffolding needed for bitemporal tracking of mutations, components and revisions comprise the business payload, as well as subcomponents and their revisions. Thus
-creation or invalidation of components/subcomponents together with their revisions and of
- updates of attributes of revisions
To populate the database use this notebook
Demo: Opening this project in GITPOD using the gitpod Button on the repo page
You get an environment with a running database populated with sample data, the Webapp running and link to open a browser window.