1. A computer program product comprising one or more computer-readable storage media having thereon computer-executable instructions that are structured such that, when executed by one or more processors of a computing system, cause the computing system to perform a method for updating an association index that defines a linking of a child table to a parent table in a database system using a foreign key in the child table, the method comprising: an act of obtaining an association index representing a plurality of association statuses between the parent table and the child table, the association index being constructed by performing the following for each of a plurality of parent table rows of the parent table: an act of identifying a semantic expression associated with the corresponding parent table row, the semantic expression defining a mapping definition that uses as input one or more foreign keys of the child table; an act of evaluating the mapping definition to identify one or more child table rows that map to the corresponding parent table row; and an act of recording an association of the mapping of the one or more child table rows to the corresponding parent table row in the association index; and an act of determining that at least one of the child table and the parent table has changed in a manner that one or more of the association statuses in the association index are potentially invalid; in response to the act of determining, an act of re-evaluating the mapping definitions that were used to create the one or more potentially invalid association statuses; and an act of revising the association index to reflect a result of the act of re-evaluation the mapping definitions.