The Trio System
The Trio is the data structure and mechanisms that allows the division of specific item properties into groups, each containing a limited number of options. It supports both required/optional and single/multiple groups which, of course, are treated differently at the application and database levels.
This division allows for a uniform handling of different group types across the application and it also forms the base for the dependency system, and for efficent item "tagging" - assigning specific properties (options) to an item, and filtering collections by these properties.
TIP
To avoid confusion between a record field property and "properties" handled by the Trio, the latter are referred to as "options" (as they may be optional and multiple)
The Trio is module-specific. Whenever a new module is requested by the front end, the Trio structure is loaded from the server, manipulated, and stored in the Pinia TrioStore.