Skip to Content
0
Mar 19, 2009 at 12:38 PM

XI mapping loop and continue

177 Views

Hi,

I have following source XML structure:

goodsitem
|_reference (0..unbounded)
  |_ qual (required) [attr]

With data:

<goodsitem>
  <reference qual="BarcodeId">0037640137461000000093123</reference> 
  <reference qual="BarcodeId">0037640137461000000093130</reference> 
  <reference qual="BarcodeId">0037640137461000000093147</reference> 
  <reference qual="BarcodeId">0037640137461000000093154</reference> 
  <reference qual="BarcodeId">0037640137461000000093161</reference> 
  <reference qual="BarcodeId">0037640137461000000093178</reference> 
  <reference qual="BarcodeId">0037640137461000000093185</reference> 
  <reference qual="BarcodeId">0037640137461000000093192</reference> 
  <reference qual="BarcodeId">0037640137461000000093208</reference> 
  <reference qual="BarcodeId">0037640137461000000093215</reference> 
</goodsitem>

The target XML is given and a part of a EDIFACT

S_GIN (0..10)
|_ D_7405 (1..1)

|_ C_C208 (1..1)
   |_D_7402 (1..1)
   |_D_7402_2 (0..1)

|_ C_C208_2 (0..1)
   |_D_7402 (1..1)
   |_D_7402_2 (0..1)

|_ C_C208_3 (0..1)
   |_D_7402 (1..1)
   |_D_7402_2 (0..1)

|_ C_C208_4 (0..1)
   |_D_7402 (1..1)
   |_D_7402_2 (0..1)

|_ C_C208_5 (0..1)
   |_D_7402 (1..1)
   |_D_7402_2 (0..1)

I have to fill the "7402" elements with each barcode. The question is how can i go to the next "reference" element so i looks like this:

<S_GIN>
  <D_7405>XYZ</D_7405>
  <C_C208>
    <D_7402>0037640137461000000093123</D_7402>
    <D_7402_2>0037640137461000000093130</D_7402>
  </C_C208>
  <C_C208_2>
    <D_7402>0037640137461000000093147</D_7402>
    <D_7402_2>0037640137461000000093154</D_7402>
  </C_C208_2>
  ....
  ...
  ..
</S_GIN>

When i map the "reference" to the "S_GIN" i've just get in every "7402" element the same value, so i need to continue inside the 7402 to the next "reference" node.

Thanks

Ronny