How to add parent node in Vb.NET



Hi,

I am having an XML document(input.xml) which is showing the menu heirarchy
used in my application.My requirement is to add "submenu" tag to those
menuitems who are having the child menuitems as shown in output.xml.
I am using VB.NET framework 1.1.

Please Help, i have already invested my 2 days but unable to build the logic
as input xml may be having any level of nesting of menuitems.

input.xml
***************************************
<menu>
<menuItem>
<text>HOME</text>
<javascriptcommand>opennewwindow('home.aspx')</javascriptcommand>
<cssclass>off</cssclass>
<MENU_ID>1</MENU_ID>
</menuItem>
<menuItem>
<text>QUERY</text>
<javascriptcommand>openPopup('fundSearch.aspx','Search', 580,
200)</javascriptcommand>
<cssclass>off</cssclass>
<MENU_ID>2</MENU_ID>
</menuItem>
<menuItem>
<text>REPORTS</text>
<cssclass>off</cssclass>
<MENU_ID>3</MENU_ID>
<menuItem>
<text>Standard Reports</text>
<MENU_ID>5</MENU_ID>
<PRNT_MENU_ID>3</PRNT_MENU_ID>
<menuItem>
<text>PM Tenure</text>
<MENU_ID>7</MENU_ID>
<PRNT_MENU_ID>5</PRNT_MENU_ID>
</menuItem>
<menuItem>
<text>Performance</text>
<MENU_ID>8</MENU_ID>
<PRNT_MENU_ID>5</PRNT_MENU_ID>
</menuItem>
<menuItem>
<text>Fee & Expenses</text>
<MENU_ID>9</MENU_ID>
<PRNT_MENU_ID>5</PRNT_MENU_ID>
</menuItem>
<menuItem>
<text>Fact *** PDFs</text>
<MENU_ID>10</MENU_ID>
<PRNT_MENU_ID>5</PRNT_MENU_ID>
</menuItem>
<menuItem>
<text>Fund Facts</text>
<MENU_ID>11</MENU_ID>
<PRNT_MENU_ID>5</PRNT_MENU_ID>
</menuItem>
</menuItem>
<menuItem>
<text>Custom Reports</text>
<MENU_ID>6</MENU_ID>
<PRNT_MENU_ID>3</PRNT_MENU_ID>
<menuItem>
<text>Spectrums</text>
<MENU_ID>12</MENU_ID>
<PRNT_MENU_ID>6</PRNT_MENU_ID>
</menuItem>
<menuItem>
<text>Performance</text>
<MENU_ID>13</MENU_ID>
<PRNT_MENU_ID>6</PRNT_MENU_ID>
</menuItem>
<menuItem>
<text>Descriptions</text>
<MENU_ID>14</MENU_ID>
<PRNT_MENU_ID>6</PRNT_MENU_ID>
</menuItem>
<menuItem>
<text>Fund Actions</text>
<MENU_ID>15</MENU_ID>
<PRNT_MENU_ID>6</PRNT_MENU_ID>
</menuItem>
<menuItem>
<text>Inv Svcs Only</text>
<MENU_ID>16</MENU_ID>
<PRNT_MENU_ID>6</PRNT_MENU_ID>
</menuItem>
</menuItem>
</menuItem>
<menuItem>
<text>HELP</text>
<cssclass>off</cssclass>
<MENU_ID>4</MENU_ID>
<menuItem>
<text>FAQs</text>
<MENU_ID>17</MENU_ID>
<PRNT_MENU_ID>4</PRNT_MENU_ID>
</menuItem>
<menuItem>
<text>How To</text>
<MENU_ID>18</MENU_ID>
<PRNT_MENU_ID>4</PRNT_MENU_ID>
</menuItem>
</menuItem>
</menu>

output.xml
*****************************************************
<menu>
<menuItem>
<text>HOME</text>
<javascriptcommand>opennewwindow('home.aspx')</javascriptcommand>
<cssclass>off</cssclass>
<MENU_ID>1</MENU_ID>
</menuItem>
<menuItem>
<text>QUERY</text>
<javascriptcommand>openPopup('fundSearch.aspx','Search', 580,
200)</javascriptcommand>
<cssclass>off</cssclass>
<MENU_ID>2</MENU_ID>
</menuItem>
<menuItem>
<text>REPORTS</text>
<cssclass>off</cssclass>
<MENU_ID>3</MENU_ID>
<submenu>
<menuItem>
<text>Standard Reports</text>
<MENU_ID>5</MENU_ID>
<PRNT_MENU_ID>3</PRNT_MENU_ID>
<submenu>
<menuItem>
<text>PM Tenure</text>
<MENU_ID>7</MENU_ID>
<PRNT_MENU_ID>5</PRNT_MENU_ID>
</menuItem>
<menuItem>
<text>Performance</text>
<MENU_ID>8</MENU_ID>
<PRNT_MENU_ID>5</PRNT_MENU_ID>
</menuItem>
<menuItem>
<text>Fee & Expenses</text>
<MENU_ID>9</MENU_ID>
<PRNT_MENU_ID>5</PRNT_MENU_ID>
</menuItem>
<menuItem>
<text>Fact *** PDFs</text>
<MENU_ID>10</MENU_ID>
<PRNT_MENU_ID>5</PRNT_MENU_ID>
</menuItem>
<menuItem>
<text>Fund Facts</text>
<MENU_ID>11</MENU_ID>
<PRNT_MENU_ID>5</PRNT_MENU_ID>
</menuItem>
</submenu>
</menuItem>
<menuItem>
<text>Custom Reports</text>
<MENU_ID>6</MENU_ID>
<PRNT_MENU_ID>3</PRNT_MENU_ID>
<submenu>
<menuItem>
<text>Spectrums</text>
<MENU_ID>12</MENU_ID>
<PRNT_MENU_ID>6</PRNT_MENU_ID>
</menuItem>
<menuItem>
<text>Performance</text>
<MENU_ID>13</MENU_ID>
<PRNT_MENU_ID>6</PRNT_MENU_ID>
</menuItem>
<menuItem>
<text>Descriptions</text>
<MENU_ID>14</MENU_ID>
<PRNT_MENU_ID>6</PRNT_MENU_ID>
</menuItem>
<menuItem>
<text>Fund Actions</text>
<MENU_ID>15</MENU_ID>
<PRNT_MENU_ID>6</PRNT_MENU_ID>
</menuItem>
<menuItem>
<text>Inv Svcs Only</text>
<MENU_ID>16</MENU_ID>
<PRNT_MENU_ID>6</PRNT_MENU_ID>
</menuItem>
</submenu>
</menuItem>
</submenu>
</menuItem>
<menuItem>
<text>HELP</text>
<cssclass>off</cssclass>
<MENU_ID>4</MENU_ID>
<submenu>
<menuItem>
<text>FAQs</text>
<MENU_ID>17</MENU_ID>
<PRNT_MENU_ID>4</PRNT_MENU_ID>
</menuItem>
<menuItem>
<text>How To</text>
<MENU_ID>18</MENU_ID>
<PRNT_MENU_ID>4</PRNT_MENU_ID>
</menuItem>
</submenu>
</menuItem>
</menu>

Thanks & Regards,
Neeraj
.


Loading