The business layer of an application consists of database objects whose names follow from the names in the repository. With `<prefix>` the prefix of the application, `<name>` the name of a table after the prefix, and `<alias>` its three-letter alias:
- `<prefix>_<name>`: the table.
- `<prefix>_<alias>_pk`, `_nk`, `_uk_orig`: the primary key, the [[Invantive Studio/Repository/Concepts/Natural Key|natural key]] and the unique index on the original system reference.
- `<prefix>_<alias>_<alias of the other table>_fk`: a referential constraint, with an index of the same name.
- `<prefix>_<name>_sn`: the sequence of the identities.
- `<prefix>_<name>_v`: the [[Invantive Studio/Repository/Concepts/Business Object|business object]].
- `<prefix>_<name>_r`: a reporting view.
- `<prefix>
lt;name>`: the generated table logic.
- `<prefix>#<name>`: the [[Invantive Studio/Repository/Concepts/Hook Package|hook package]].
- `<prefix>_<alias>_ori`, `_oru`, `_ord`: the triggers on the business object for insert, update and delete.
- `<prefix>h<name>`: the [[Invantive Studio/Repository/Concepts/History|history]] table, filled by the triggers `<prefix>_<alias>_ari`, `_aru` and `_ard`.
- `<prefix>p<name>` and `<prefix>p<name>_v`: the [[Invantive Studio/Repository/Concepts/Point in Time|point-in-time views]].
A query on the database therefore always uses the business object or a reporting view, never the table itself.