5. General Object Requirements¶
These requirements go over general requirements for all held data objects.
5.1. Relations¶
Objects in this database have relations, linking some objects to others.
5.1.1. Reference Removal before deletion¶
In order to keep the database consistent, we must enforce not having dangling references to since deleted objects.
Before deleting an object, the following conditions must be met:
All references TO the object must be removed
OR
All referencing objects must me deleted along with the object
5.2. Data Changes¶
5.2.1. History¶
Generally speaking, all objects are to have an associated history for each individual. This history is intended as additive only, as in immutable as it is created.
5.2.2. Messaging¶
All individual data changes are to be sent out in the form of a message sent via the Messaging interface. This is not necessarily the whole change, just a notification of the change, along with relevant information.