The Data Dictionary stores details of files (including database entities), record layouts and fields, including validation criteria, referential integrity constraints, default headings, data pictures and default values.
The Data Dictionary can be shared between all users; alternatively each user or project may use a separate Dictionary. This allows projects to be kept distinct and facilitates prototyping, but retains the option of sharing common definitions from a central Dictionary. The Data Dictionary is stored in host indexed files, allowing high throughput and efficient shared access.
Derivation algorithms may also be held for derived fields, which may be stored in the record body or derived when referenced. In addition to the standard host security mechanisms, the Data Dictionary provides password protection for all entities.
In addition to holding information about data structures, the Dictionary can describe "relational joins". These are compound views of several files, in which records of one file are related to those of another by constraints (typically equality) on the value of a common field or fields. The hierarchical structure thus formed will be handled within the Genius Suite as a single compound file.
All standard host data types are supported, including: unsigned integers (1-, 2-, 4- and 8-byte); signed integers (1-, 2-, 4- and 8-byte) with and without scale; IEEE-, D-, F-, G-, and H-(VAX) floating ; fixed and varying strings; zoned, overpunched and leading separate numeric; packed decimal; 64-bit.
Extra base types available include character dates, numeric strings and uppercase text. Additionally, user-defined base fields may be stored in the Dictionary as a combination of field type, length, heading, validation etc.; other fields may then be defined in terms of these to guarantee consistency (changes to the base definition are automatically propagated to all related definitions).