XmlObject.xmlText(XmlOptions) outputs xsi:nil="true" where schema definition is 
minOccurs="0" and default value for nillable="false"
------------------------------------------------------------------------------------------------------------------------------------

         Key: XMLBEANS-220
         URL: http://issues.apache.org/jira/browse/XMLBEANS-220
     Project: XMLBeans
        Type: Bug
  Components: XmlObject  
    Versions: Version 2    
 Environment: Windows XP, JDK 1.4.2_05
    Reporter: James Webster


We have defined a type in the schema as...

<xsd:complexType name="MyType">
   <xsd:element name="mandatoryElement" type="xsd:string"/>
   <xsd:element name="optionalElement" minOccurs="0" type="xsd:string"/>
</xsd:complexType>

According to the XML Schema specification, false is the default value for the 
optional 'nillable' attribute on xsd:element. So the 'optionalElement' element 
is nillable='false'.

We instantiate an instance of the MyType class, set the mandatory element and 
get the value of xmlText()...

MyType type = MyType.Factory.newInstance();
type.setMandatoryElement("someValue");
String xmlText = type.xmlText();

The value of xmlText generated by XMLBeans v2.0 is...

<MyType>
  <mandatoryElement>someValue</mandatoryElement>
  <optionalElement xsi:nil="true"/>
</MyType>

BUT, we would expect (given that optionalElement is NOT nillable) to see the 
following...

<MyType>
  <mandatoryElement>someValue</mandatoryElement>
</MyType>

Our investigations into the XMLBeans API suggests that it is not possible (via 
XmlOptions, etc) to suppress the xsi: attributes, so we believe this may be a 
bug? We are at no point explicitly setting the optionalElement to null.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to