[xsl] Merging Data

Subject: [xsl] Merging Data
From: "James Paul" <jpaul@xxxxxxxxxxx>
Date: Fri, 30 Apr 2004 15:03:24 -0500
 I am trying to merge data and running into problems determining the best way to do it.
 
Below is an example of my input record:
 
<RECORD>
  <ITEMS>
        <ITEM_NUMBER>0000000010</ITEM_NUMBER>
        <ACCT_CAT>CC</ACCT_CAT>
        <COST_CTR>C090-0080</COST_CTR>
        <G_L_ACCT>0060272999</G_L_ACCT>
        <DISTR_PERC>50.00</DISTR_PERC>
        <UNSPSC>40141813</UNSPSC>
        <MATNR>450000412</MATNR>
 </ITEMS>
 <ITEMS>
        <ITEM_NUMBER>0000000010</ITEM_NUMBER>
        <ACCT_CAT>CC</ACCT_CAT>
        <COST_CTR>C163-0080</COST_CTR>
        <G_L_ACCT>0060272998 </G_L_ACCT>
        <DISTR_PERC>65.00</DISTR_PERC>
        <UNSPSC>40141813</UNSPSC>
        <MATNR>450000412</MATNR>
 </ITEMS>
 <ITEMS>
        <ITEM_NUMBER>0000000020</ITEM_NUMBER>
        <ACCT_CAT>CC</ACCT_CAT>
        <COST_CTR>ENT090930</COST_CTR>
        <G_L_ACCT>0060272999</G_L_ACCT>
        <DISTR_PERC>100.00</DISTR_PERC>
        <UNSPSC>40146677</UNSPSC>
        <MATNR>450000417</MATNR>
 </ITEMS> 
<RECORD> 
 
 
What I need to do is merge the ITEMS information if the <ITEM_NUMBER> value is the same while dropping any duplicate data.  So I need to take the above and create the following:
 
<RECORD>
  <ITEMS>
        <ITEM_NUMBER>0000000010</ITEM_NUMBER>
        <ACCT_CAT>CC</ACCT_CAT>
        <COST_CTR>C090-0080</COST_CTR> 
        <COST_CTR>C163-0080</COST_CTR>
        <G_L_ACCT>0060272999</G_L_ACCT> 
         <G_L_ACCT>0060272998 </G_L_ACCT>
        <DISTR_PERC>50.00</DISTR_PERC> 
        <DISTR_PERC>65.00</DISTR_PERC> 
        <UNSPSC>40141813</UNSPSC>
        <MATNR>450000412</MATNR>
 </ITEMS>
 <ITEMS>
        <ITEM_NUMBER>0000000020</ITEM_NUMBER>
        <ACCT_CAT>CC</ACCT_CAT>
        <COST_CTR>ENT090930</COST_CTR>
        <G_L_ACCT>0060272999</G_L_ACCT>
        <DISTR_PERC>100.00</DISTR_PERC>
        <UNSPSC>40146677</UNSPSC>
        <MATNR>450000417</MATNR>
 </ITEMS> 
<RECORD> 
 
Does anyone have a recommended approach for tackling this issue?

Current Thread