The files for this sample are located in the samples/models/school directory of the Kodo installation. This sample demonstrates different inheritance strategies for the same object model. The following concepts are illustrated in this sample:
Flat Inheritance Mappings (Section 7.6.2, “Flat Inheritance Mapping”)
State Image Version Indicator (Section 7.7.3, “State Image Indicator”)
Vertical Inheritance Mappings (Section 7.6.3, “Vertical Inheritance Mapping”)
Horizontal Inheritance Mappings (Section 7.6.4, “Horizontal Inheritance Mapping”)
Value Mappings (Section 7.9.1, “Value Mapping”)
Many to Many Mappings (Section 7.9.11, “Many-to-Many Mapping”)
The samples/models/school directory contains the following interfaces that represent the abstract data model:
Address
HomeAddress (extends Address)
WorkAddress (extends Address)
Person
Parent (extends Person)
Student (extends Person)
Employee (extends Person)
Teacher (extends Employee)
Admin (extends Employee)
Staff (extends Employee)
Course
ScheduledClass
Each of the flat, vertical, and horizontal subdirectories contain implementations of the object model that are identical except for name, and that their inheritance mapping in the package.jdo file uses the type of the directory's corresponding name.