Structured or Composite Data Types as Relations
Every C-struct, every C++-class ‘with state’, and every record declaration declares a composite or stuctured data type to represent entity instances.
This type is also a relation over the direct product set of its M >= 1 ‘member’ or component data types.
Every variable of a composite type must have a value that is an M-tuple of values, one from each if its component types (including reference types).
Each instance of an entity class or type must also be a tuple of values belonging to its respective member data types.