Date: 2005-02-03T11:56:57 Editor: MichelleCaisse Wiki: Apache JDO Wiki Page: MetadataMappings URL: http://wiki.apache.org/jdo/MetadataMappings
no comment Change Log: ------------------------------------------------------------------------------ @@ -1,4 +1,4 @@ -= Inheritance = += <inheritance> = The Company model provides two inheritance hierarchies: Person <- Employee <- FullTimeEmployee, PartTimeEmployee; and Insurance <- MedicalInsurance, DentalInsurance. @@ -11,10 +11,10 @@ ||inheritance pattern||base class||subclasses|| ||One Table|| <inheritance strategy="new-table">|| <inheritance strategy="superclass-table">|| -||Joined Tables|| <inheritance strategy="new-table">|| <inheritance strategy="new-table">|| +||Joined Tables|| <inheritance strategy="new-table">|| <inheritance strategy="new-table"> <join table="base_class_table" column="fkcolname">*|| ||Subclass Tables|| <inheritance strategy="no-table">|| <inheritance strategy="new-table">|| -'''Question:''' <inheritance> takes a <join> element according to the dtd. Is this used to specify the primary key in the Joined Tables pattern? If so, how is it used, syntactically? +'''Question:''' We should test a join on a compound primary key somewhere. It requires a new model. When the inheritance pattern is One Table, a <discriminator> element must be used in the metadata to specify the discriminator strategy and column, used to distinguish the classes that may be represented in the table. ||Nested under <inheritance>||Nested under subclass <class> element|| @@ -26,3 +26,7 @@ '''Question:''' What about index element or indexed attribute of <discriminator>? These are in the dtd, but not mentioned in Chapter18TestCoverageNotes. So combining inheritance pattern with discriminator strategy, there are four cases that must be tested. + += <join> = += <embedded> = += Relationships =