__OBJECT - Database object
Relevant objects can be defined as system objects by inheriting from __OBJECT . The class provides two essential features. The one is timestamp support for last update, which is automatically set, whenever a modification of an instance is stored, which inherits from __OBJECT .
The other feature supports global unique object identifier (GUID), which can be created for each object instance, which inherits from __OBJECT .
In case of shared inheritance (multiple derivation), shared inheriting instances should get an own __OBJECT base class to get a separate GUID and a separate update timestamp. Otherwise, shared instances will inherit the GUID and the update timestamp from the shared base instance.