The SQL repository’s inheritance support is simplified. By simplified we mean the following:
A type can only inherit from one parent. No multiple inheritance is allowed.
A class hierarchy can only have a single
sub-type-property
value. You can define a second level of sub-classing -- for example, you might define an item descriptor namedbermuda-shorts
that hasshorts
as its super-type-- but you cannot have another differentsub-type-property
.
All parent item descriptors (item descriptors that are used in super-type
or copy-from
attributes) must be fully defined by the time they are referenced in the XML repository definition file. They can either be defined in front of the new XML file in the same file or specified in an XML file that is parsed before this XML file.
You should avoid using too many levels of inheritance. Queries against items whose properties span multiple sub-types may require joins of all of the tables in the hierarchy. If you use these kinds of queries, keep in mind that performance decreases as the number of tables joined increases.