[ http://issues.apache.org/jira/bro
wse/XMLBEANS-220?page=comments#action_12431668 ]
Adam Lewandowski commented on XMLBEANS-220:
-------------------------------------------
You are correct, if the element is not explicitly set to
null, then the element is not generated at all (when
maxOccurs=0). This works (at least in 2.2.0), thanks!
I was unaware that XmlBeans does not guarantee schema
compliance. It's not the end of the world, but I was
expecting that since I fed it the schema to begin with it
would stick to it when generating output.
> XmlObject.xmlText(XmlOptions) outputs
xsi:nil="true" where schema definition is
minOccurs="0" and default value for
nillable="false"
>
------------------------------------------------------------
------------------------------------------------------------
------------
>
> Key: XMLBEANS-220
> URL: htt
p://issues.apache.org/jira/browse/XMLBEANS-220
> Project: XMLBeans
> Issue Type: Bug
> Components: XmlObject
> Affects 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.atl
assian.com/software/jira
------------------------------------------------------------
---------
To unsubscribe, e-mail: dev-unsubscribe xmlbeans.apache.org
For additional commands, e-mail: dev-help xmlbeans.apache.org
|