On 30/05/2007, at 7:32 PM, Aristedes Maniatis wrote:
> 3. vertical inheritance (where a special ObjRelationship is created
> to specify the superclass. There may also need to be a qualifier
> like with single table - Lachlan thinks yes, I'm dubious.)
The qualifier is required for vertical inheritance only for the case
where it is permitted to instantiate objects of the parent entity. It
is not necessary when the parent entity is abstract.
When the parent entity is not abstract and you are following a
relationship from another entity to the parent entity, as one
example, and you want to filter out all but 'employee' and 'student'
types this allows Cayenne to fetch such objects without also having
to query the sub-type characteristics. In addition, determining what
the global object id is for when figuring out what type of sub-entity
the parent belongs to should you wish to turn it back into the subclass.
I believe it is asking for a much more complicated implementation
without the declared qualifier for vertical inheritance when the
parent is not abstract.
with regards,
--Lachlan Deck
This archive was generated by hypermail 2.0.0 : Wed May 30 2007 - 16:46:35 EDT