An SQL repository can define multiple named item types. Each item type is defined by an item descriptor. You can define different kinds of objects with different item descriptors, and Oracle ATG Web Commerce manages them in a single repository. Each named type corresponds to an item descriptor, and each item descriptor corresponds to a RepositoryView of the same name.

For example, a simple database might have two kinds of entities, book and author, where a book has one author, and an author has zero or more books. This is depicted in the figure below.

DAF lets you represent this in a single repository using two independent types named book and author, each type defined by its own item descriptor. These item types are independent in that they do not share any properties in their item descriptors. They might both have properties such as name or weight, but these properties are independently defined. Another way to look at it is that they each have their own item descriptor.

The SQL repository also supports a simplified form of inheritance for item descriptors. See Item Descriptor Inheritance in the SQL Repository Data Models chapter.