3.1.1.2 Tables

The catalog that is managed by the catalog server is organized as a set of tables. A table is a set of entries, each of which represents a configurable object or a relationship between objects. With the exception of the ComponentsAndFullConfigurations table, all the entries in a specific table represent either objects of the same type or relationships between objects of the same types. For historical reasons, the ComponentsAndFullConfigurations table contains entries that represent two different types of objects: unconfigured components and component full configuration entries. Each table is identified by a GUID, known as the table identifier.

An entry is a list of typed properties. Each table has a schema, which specifies the properties that are present in each entry in the table, and an order for interchange in methods that read and write to tables. The schemas for each table are listed in the table definitions (see section 3.1.1.3).

Except where otherwise noted, the catalog tables are persistent; in other words, they retain their state between sessions.