Hi,

Just one comment. When mapping using PC key, serialized-key doesn't make sense. (In fact, I wonder why it's in the spec. except for completeness).

Craig

On Oct 14, 2005, at 2:20 PM, Apache Wiki wrote:

Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Jdo Wiki" for change notification.

The following page has been changed by MichelleCaisse:
http://wiki.apache.org/jdo/MappingCollections

---------------------------------------------------------------------- --------
  == Maps of Persistence Capable (PC) Types ==

- These are maps where either the key or value is a PC type. We test the following cases: + These are maps where either the key or value is a PC type. We test the following cases, assuming a String key and PC value:
   * Collection field is serialized in the main table ('''s''')
- * Both key and value are embedded in a join table, the PC member of the mapped pair is mapped to a foreign key to a secondary table ('''efk''') + * String key is embedded in a join table; the PC value is mapped to a foreign key column in the join table. The fk references the primary key of the table containing the PC. ('''efk''') (default) - * PC key or value is serialized in a join table, the non-PC member of the mapped pair is stored in another column of the join table ('''es''') + * PC value is serialized in a join table, the String key of the mapped pair is stored in another column of the join table. ('''es''')
+  * PC value and String key are embedded in a join table. ('''ee''')

  == Maps of Java Types ==
- These are maps where both key and value are Java types. We test the following cases: + These are maps where the key is a String and the value is a Java type, for example Date, Locale, Integer. We test the following cases:
   * Collection field is serialized in the main table ('''s''')
-  * Both key and value are embedded in a join table ('''efk''')
+  * Both key and value are embedded in a join table ('''ee''')

  == Metadata for Maps ==
The metadata for these cases, assuming the key is a String and the value is a PC type, is:
  ||case||jdo metadata||orm metadata||
  ||s|| <field serialized="true">|| <field name="''name''">||
- ||efk|| <map embedded-key="true" embedded-value="true">|| <field name="''name''" table="''join_table''">|| + ||efk|| <map embedded-key="true" embedded-value="false">|| <field name="''name''" table="''join_table''">|| ||es|| <map embedded-key="true" serialized-value="true">|| <field name="''name''" table="''join_table''">|| + ||ee|| <map embedded-key="true" embedded-value="true">|| <field name="''name''" table="''join_table''">||



Reply via email to