Task Summary
Currently the database schema looks like this: (see screenshot)
We introduce two new tables, the notebook and workflow_notebook_mapping table. The notebook table holds the JSONB notebook and uses the wid from the workflow table as well as a nid (notebook ID) field as its primary key. The workflow_notebook_mapping table holds the JSONB mapping and uses three foreign keys in combination as its primary key. However, after discussion we agreed that the wid field in the notebook table is redundant and not needed. This is because the notebook should be read-only, so if the user modifies the notebook we will instead create a new workflow. Thus only the nid is needed.
Proposed Solution or Design
We will change the wid field in the notebook table to no longer be a primary key:
This decision was made because we do not need the wid to be part of the primary key, since the nid is sufficient for our final user experience design.
Priority
P2 – Medium
Task Type