The SQL repository’s inheritance support has the following constraints:
A type can only inherit from one parent.
A class hierarchy can only have one
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 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 tables in the hierarchy. If you use these kinds of queries, keep in mind that performance decreases as the number of tables joined increases.