BusinessObjects Board

Issue with importing / validating xsd / xml file

We are facing a major issue with importing an xsd with the same parent node name and child node name.
But these node are different.
We can’t change the XSD as we are not the owner.

The error we are getting is as follows:
An element named present in the XML data input does not exist in the XML format used to set up this XML source…

The XSD had Amount as parent and child. When we inport the XSD the parent node’s name is changed and the structure beneith the node is lost. We have tried changing the name of the child node, importing the XSD, then changing the child’s name back again in DI, but we still get the same error message.

Any help would be most gratefully received.

Here is the XSD nodes definition concerned :


<xs:element name="Amount">
       <xs:complexType>
		<xs:sequence minOccurs="0">
			<xs:element name="AmountType" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
			<xs:element name="Amount" minOccurs="0">
				<xs:complexType>
					<xs:attributeGroup ref="CurrencyAmountGroup"/>
				</xs:complexType>
			</xs:element>
			<xs:element name="ConversionDate" type="xs:dateTime" minOccurs="0"/>
			<xs:element name="ConversionRule" type="xs:string" minOccurs="0"/>
			<xs:element name="OriginalCurrency" type="xs:string" minOccurs="0"/>
			<xs:element name="ROE" type="xs:double" minOccurs="0"/>
			<xs:element name="Difference" minOccurs="0" maxOccurs="unbounded">
				<xs:complexType>
					<xs:sequence minOccurs="0">
						<xs:element name="Amount" minOccurs="0">
							<xs:complexType>
								<xs:attributeGroup ref="CurrencyAmountGroup"/>
							</xs:complexType>
						</xs:element>
					</xs:sequence>
					<xs:attribute name="DifferenceStatus" type="xs:string"/>
					<xs:attribute name="DifferenceType" type="xs:string" use="optional"/>
				</xs:complexType>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
</xs:element>

ridoul (BOB member since 2015-03-07)

use the correct root node name, you have same element name in multiple level, set the recursion level to 2 when importing, you should see the correct schema in DS after import


manoj_d (BOB member since 2009-01-02)

Perfect - Thanks a lot. I really appreciate your help.

The system is quite perfectly working.
I still have some warning when I decode the XML for all elements defined in the XSD as xs:float or xs:double.

The warning is:
Cannot convert data <0.085194> into type . Context: Column
Leading to lose these data elements.

I guess I may change manually these elements to DECIMAL within Data integrator.
But I was wondering if it could be done automatically when I will import the XSD as there is a lot of elements defined this way.

Do you have any clue to help me please ?

Thanks in advance


ridoul (BOB member since 2015-03-07)