[ https://issues.apache.org/jira/browse/TUSCANY-1564?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Matthew Peters closed TUSCANY-1564. ----------------------------------- Resolution: Fixed I have tested the fix in the cpp-pre2.1 branch and it is indeed fixed. Thanks. > xsi:type not always set for complexTypes > ---------------------------------------- > > Key: TUSCANY-1564 > URL: https://issues.apache.org/jira/browse/TUSCANY-1564 > Project: Tuscany > Issue Type: Bug > Components: C++ SDO > Affects Versions: Cpp-Next > Environment: Win XP and Gentoo Linux > Reporter: Matthew Peters > Fix For: Cpp-Next > > > This has been reported by a user of the PHP SDO code. I have verified that he > is right - the problem does exist. I will cut and paste in the PHP example > from the defect http://pecl.php.net/bugs/bug.php?id=11774 but the php-ness of > the example is irrelevant: under the covers we are just manipulating a C++ > SDO and then calling XMLHelper->save() > In the defect text below he puts in both expected and actual output. He is > right to raise the problem in the sense that I have tried reading in the > actual and expected xml under XERCES with schema validation turned on, and > the actual will *not* validate whereas the expected will. > Incidentally there is some history w.r.t. xsi:types - in a different case > they were coming out when we did not want them and they were suppressed for > us. See for example JIRA 1297. I do not know the rules which should determine > whether it should be present or not. > Here follows the original PHP defect. > Description: > ------------ > xsi:type is not always set for complexTypes. Notice the absence of > xsi:type="collectionInfo" in the actual output. > Reproduce code: > --------------- > <?xml version="1.0" encoding="UTF-8"?> > <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"> > <xsd:element name="request" type="requestType"/> > <xsd:complexType name="requestType" abstract="true"/> > <xsd:complexType name="collectionInfo"> > <xsd:complexContent> > <xsd:extension base="requestType"> > <xsd:sequence minOccurs="0" maxOccurs="unbounded"> > <xsd:element name="collection"/> > </xsd:sequence> > <xsd:attribute name="kind" type="xsd:string" > fixed="collectionInfo"/> > </xsd:extension> > </xsd:complexContent> > </xsd:complexType> > <xsd:element name="request-list"> > <xsd:complexType> > <xsd:sequence> > <xsd:element ref="request" minOccurs="0" maxOccurs="unbounded"/> > </xsd:sequence> > </xsd:complexType> > </xsd:element> > </xsd:schema> > <?php > try { > $xmldas = SDO_DAS_XML::create("request.xsd"); > try { > $doc = $xmldas->createDocument('', 'request-list'); > $rdo = $doc->getRootDataObject(); > $request = $xmldas->createDataObject('', 'collectionInfo'); > $request->collection->insert('Blah'); > $request->kind = 'collectionInfo'; > $rdo->request->insert($request); > print($xmldas->saveString($doc)); > } catch (SDO_Exception $e) { > print($e); > } > } catch (SDO_Exception $e) { > print("Problem creating an XML document: " . $e->getMessage()); > } > ?> > Expected result: > ---------------- > <?xml version="1.0" encoding="UTF-8"?> > <request-list xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> > <request kind="collectionInfo" xsi:type="collectionInfo"> > <collection>Blah</collection> > </request> > </request-list> > Actual result: > -------------- > <?xml version="1.0" encoding="UTF-8"?> > <request-list xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> > <request kind="collectionInfo"> > <collection>Blah</collection> > </request> > </request-list> -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]