[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Re: [sdo] Oracle Proposal: SDO 99 - ISSUE 99: Error in allocating SDOType for elements with nillable=true
Good point Blaise. In retrospect, using a primitive base type is a bad idea, period.
If the base type was SDO Int the default value would still be 0 :). -Blaise Frank Budinsky wrote:
Proposal 2 - Set the default default value for properties corresponding to extended primitive types to the base primitive types default value
Hi Blaise, Your proposal is clean and does work nicely, but it has one serious disadvantage IMO. From what I've seen, user defined simple types seem to be rarely (almost never) nillable. The reason, I presume, is because the purpose of the subtype is to specify a restricted subset of the values allows by the type. It seems to be uncommon to combine such a restriction of the value set with an extension of the value set to allow null. If this is the case, your proposal is penalizing all restricted type users (i.e., forcing them to work with Object instead of the simpler primitive type) just to accommodate a very rare use case. Frank. Blaise Doughan ---08/26/2010 10:18:20 AM---Hello All, Below is a more detailed description of the Oracle proposal for SDO 99.
Hello All, Below is a more detailed description of the Oracle proposal for SDO 99. Section 7.4.2 of the Core Spec regarding nillable simple elements "If the type of the element has Simple Content without attributes, a Java Type with an Object instance class is assigned. For example, IntObject instead of Int. In an XML document, xsi:nil="true" corresponds to a null value for this property."
If oddInt extends xsd:int currently
Simple Type with name <simpleType name=[NAME]> corresponds to: Type name=[NAME] Meaning that our "oddInt" type will have the super type of Int. THIS is where I think the spec is wrong. Instead of extending Int, it should extend IntObject since this type may be used by a nillable element.
base="[BASE]" if base is capable or represented null, other wise the base corresponds to the corresponding object type Proposal 2 - Set the default default value for properties corresponding to extended primitive types to the base primitive types default value
With the above proposals the impact on the user should be minimal: |
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]