Going back to vertical inheritance now that I've looked over Single-Table
Inheritance a little bit:
Andrus Adamchik <andru..bjectstyle.org> wrote:
> AFAIK vertical inheritance
>
(http://developer.apple.com/documentation/LegacyTechnologies/WebObjects/WebObjects_4.5/System/Documentation/Developer/EnterpriseObjects/DevGuide/EOsII7.gif)
> is simply combining our current single table inheritance with a new
> flattened attributes feature. Meaning:
>
> 1. No template changes are needed.
> 2. Flattened attributes support is needed in the Modeler.
> 3. Flattened attributes support is needed in query translators and commit
> handlers.
>
> I am sure there will be some additional issues when combining flattened
> attributes with inheritance, but I think we need to start by implementing
> flattened attributes first.
>
> Am I missing something obvious?
Mike Kienenberger wrote:
> > But it also involves managing multiple object entities as if they were
> > one single entity (from the bottom up), and as single entities from the
> > top down.
Andrus Adamchik <andru..bjectstyle.org> wrote:
> Why would this be different from the single-table inheritance that we have
> now?
Because the single-table inheritance (singti) creates only one DataObject
per ObjEntity instance.
Vertical inheritance (verti) requires a DataObject for each object in the
inheritance chain.
Ie, If you have Organization -> SecGroup -> SecRole, singti only creates
and manages one Organization DataObject, but verti must create an
Organization DataObject, a SecGroup DataObject, and a SecRole DataObject.
Each child DataObject is actually a composite object representing itself and
its parent.
This archive was generated by hypermail 2.0.0 : Wed Jun 15 2005 - 13:08:24 EDT