cancel
Showing results for 
Search instead for 
Did you mean: 

Convert XML(jdbc format) to regular XML format(Parent & Sub-nodes)

Former Member
0 Kudos

Hi,

I have an XML in JDBC format, which I would like to convert to Parent & sub-node format. Could someone help me with this conversion?

Input:

<MaterialInput>

     <row>

          <MaterialNo>ABC</MaterialNo>

          <MaterialDesc>ABC Text</MaterialDesc>

          <Characteristics>ABC-1</Characteristics>

     </row>

      <row>

          <MaterialNo>ABC</MaterialNo>

          <MaterialDesc>ABC Text</MaterialDesc>

          <Characteristics>ABC-2</Characteristics>

     </row>

     <row>

          <MaterialNo>ABC</MaterialNo>

          <MaterialDesc>ABC Text</MaterialDesc>

          <Characteristics>ABC-3</Characteristics>

     </row>

      <row>

          <MaterialNo>XYZ</MaterialNo>

          <MaterialDesc>XYZ Text</MaterialDesc>

          <Characteristics>XYZ-1</Characteristics>

     </row>

      <row>

          <MaterialNo>XYZ</MaterialNo>

          <MaterialDesc>XYZ Text</MaterialDesc>

          <Characteristics>XYZ-2</Characteristics>

     </row>

</MaterialInput>

Desired Output:

<MaterialOutput>   

     <Material>

          <MaterialNo>ABC</MaterialNo>

          <MaterialDesc>ABC Text</MaterialDesc>

          <Characteristics>

               <text>ABC-1</text>

               <text>ABC-2</text>

               <text>ABC-3</text>

          </Characteristics>

      </Material>

     <Material>

          <MaterialNo>XYZ</MaterialNo>

          <MaterialDesc>XYZ Text</MaterialDesc>

          <Characteristics>

               <text>XYZ-1</text>

               <text>XYZ-2</text>

          </Characteristics>

      </Material>

</MaterialOutput>

Thanks

Alex

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Use CollapseContext>Splitby value and map below fields

<MaterialNo>ABC</MaterialNo>

          <MaterialDesc>ABC Text</MaterialDesc>

USeoneasMany for characteristics with Material

Answers (2)

Answers (2)

markangelo_dihiansan
Active Contributor
0 Kudos

Hi Alex,

Alternatively, you can use this mapping (assuming the values are already sorted):

For Material:

For Material Number:

For Material Desc:

For Characteristics (same mapping as Material Number).

For text

Input/Output test

Hope this helps,

Mark

former_member184720
Active Contributor
0 Kudos

I think you need to adjust your target structure a bit.

<MaterialOutput>  

     <Material>

          <MaterialNo>ABC</MaterialNo>

          <MaterialDesc>ABC Text</MaterialDesc>

          <Characteristics>

               <text>ABC-1</text>

               <text>ABC-2</text>

               <text>ABC-3</text>

          </Characteristics>

      </Material>

to

<MaterialOutput>  

     <Material>

          <MaterialNo>ABC</MaterialNo>

          <MaterialDesc>ABC Text</MaterialDesc>

         <Characteristics>

            <text>ABC-1</text>

         </Characteristics>

         <Characteristics>

            <text>ABC-2</text>

         </Characteristics>

         <Characteristics>

            <text>ABC-3</text>

         </Characteristics>

      </Material>