XMLwriter drops namespace for datatype properties
-------------------------------------------------

                 Key: TUSCANY-3597
                 URL: https://issues.apache.org/jira/browse/TUSCANY-3597
             Project: Tuscany
          Issue Type: Bug
          Components: C++ SDO
    Affects Versions: Cpp-M2
            Reporter: Thomas Gentsch
         Attachments: schema1.xsd, schema2.xsd, SDOXMLWriter.cpp-PATCH

When defining XSD and XML data as attached, the resulting XML is wrong if 
loaded and saved.
For datatype properties with imported NS, the NS is lost if that NS is not used 
with at least one object property.
Example (prop3):
In:
==========
<?xml version="1.0" encoding="UTF-8"?>
<ns1:class1 xmlns:ns1="http://ns1"; xmlns:ns2="http://ns2";>
  <ns1:prop1>bla</ns1:prop1>
  <ns1:prop2>
    <ns2:prop3>blub</ns2:prop3>
  </ns1:prop2>
</ns1:class1>
==========

Out:
==========
<?xml version="1.0" encoding="UTF-8"?>
<class1 xsi:type="tns2:class1" xmlns:tns2="http://ns1"; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";>
 <tns2:prop1>bla</tns2:prop1>
 <tns2:prop2>
  <prop3>blub</prop3>
 </tns2:prop2>
</class1>
==========

Reason is, that the XMLWriter at the beginning collects all referenced NS by 
traversing through the entire SDO, but it skips
datatype props.
The fix has some performance (must compare also the NS of all datatype props) 
impact but I could not see a better way ...



-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to