A display table represents a virtual view of one or more tables. The display table always has a base table, but one or more tables can be joined and/or related to the base table. A join effectively adds new columns onto the base table, based on the foreign key to the joined table. A relate simply sets up an in-memory relationship class to another table to lookup related rows from a foreign key in the base table. The display table also supports a definition expression and allows the user to specify a 'display field', whose value is a label used to represent a row in the table.