Below is an image of all the tables in the database that depicts the relationships between the tables.

The hubs of the database are the two main tables, IRSwapRecFixed and IRSwapRecVariable. These two tables contain all the relevant information for two types of interest rate swaps, receive-fixed and receive-variable. Each table then has four table attached to it with a one-to-one relationship. Each of the attached tables holds the quantitative data to measure general risk, credit risk, legal risk, and interest risk. The counterparty table is also connected to the two swap tables with a one-to-many relationship. Because both swap tables use the same information in the counterparty table, a one-to-many relationship is assigned. The other two tables that do not have defined relationships are the operational risk table and the LIBOR table. The operational risk table measures operational risk that is aggregated on a system-wide basis. for that reason, operational risk does not change from contract to contract. Because the operational table does not change and does not need to be updated with new information, no defined relationship exists. The same hold true for the LIBOR table. The LIBOR table contains the current LIBOR and a history of all rates entered into the system. The information in the LIBOR table does not change and does not need to be updated when the is a change in the rest of the database. LIBOR is only altered to reflect the current rate at a given date.

All the calculations in the database are rooted in the above tables. Complex query design allows the user to aggregate the existing data in many ways.