> Well we interpret all types as serialized="false", but in section 18.14 of > the spec "java.lang" types (which Object is) are to be embedded="true" by > default. So we interpret this as serialising the Object into the table of > the class, into a BLOB column.
Michelle, before you change anything .... (was writing this while I received your reply) That, of course, comes down to how you interpret the statement in the section embedding 18.14. <spec> The embedded attribute specifies whether the field should be stored as part of the containing instance instead of as its own instance in the datastore. It must be specified or default to "true" for fields of primitive types, wrappers, java.lang, java.math, java.util, collection, map, and array types specified above; and “false” otherwise. Thus, specifying this attribute is not usually necessary. While a compliant implementation is permitted to support these types as first class instances in the datastore, the semantics of embedded=”true” imply containment. That is, the embedded instances have no independent existence in the datastore and have no Extent representation. </spec> Depends if it means the "java.lang, java.math, ... types specified above" (i.e all of the specific types specified above), or if it means "array types specified above" (just the last part applying to the "specified above"). Since I've got a teaching qualification in English, I'm opting for the latter, but maybe our local spec author can clarify the intent ;-) -- Andy
