Hi,<div><br></div><div>I need to build a hierarchy out of some data to load into a RDBMS.  The data looks like below.  I need to convert it to more like:</div><div><br></div><div>code, desc, parent_code</div><div><br></div>

<div>(where code is like "193200000X")</div><div><br></div><div>I'm struggling.</div><div><br></div><div>I think I could do this in a rigid manner by saying I have 4 indexes or levels:</div><div>upper case roman</div>

<div>lower case alpha</div><div>lower case roman</div><div>numeric</div><div><br></div><div>and keeping track where I am, and I the parent one level above.</div><div><br></div><div>I'd like to do it flexibly, without having to know how many levels in advance (I get similarly structured data with # of levels and info from time to time).  </div>

<div><br></div><div>But I don't know:</div><div><br></div><div>1) whats the best structure for this (I'm thinking an array of arrays)</div><div>2) how to traverse the array without knowing my indexes, i.e. go one level up, go one level down</div>

<div><br></div><div>Can anyone suggest ways to skin this cat?</div><div><br></div><div>Thanks</div><div>Jay</div><div><br></div><div><br></div><div><div>I.<span class="Apple-tab-span" style="white-space:pre">      </span>Individual or Groups (of Individuals)</div>

<div>a.<span class="Apple-tab-span" style="white-space:pre">    </span>Group  </div><div>i.<span class="Apple-tab-span" style="white-space:pre">    </span>Multi-Specialty  - 193200000X</div><div>ii.<span class="Apple-tab-span" style="white-space:pre">     </span>Single Specialty  - 193400000X</div>

<div>b.<span class="Apple-tab-span" style="white-space:pre">    </span>Allopathic & Osteopathic Physicians  </div><div>i.<span class="Apple-tab-span" style="white-space:pre">  </span>Allergy & Immunology - 207K00000X</div>

<div>1.<span class="Apple-tab-span" style="white-space:pre">    </span>Allergy - 207KA0200X</div><div>2.<span class="Apple-tab-span" style="white-space:pre">       </span>Clinical & Laboratory Immunology - 207KI0005X</div><div>

ii.<span class="Apple-tab-span" style="white-space:pre">      </span>Anesthesiology - 207L00000X</div><div>1.<span class="Apple-tab-span" style="white-space:pre">        </span>Addiction Medicine - 207LA0401X</div><div>2.<span class="Apple-tab-span" style="white-space:pre">    </span>Critical Care Medicine - 207LC0200X</div>

<div>3.<span class="Apple-tab-span" style="white-space:pre">    </span>Hospice and Palliative Medicine - 207LH0002X</div><div>4.<span class="Apple-tab-span" style="white-space:pre">       </span>Pain Medicine - 207LP2900X</div><div>

5.<span class="Apple-tab-span" style="white-space:pre">       </span>Pediatric Anesthesiology - 207LP3000X</div><div>iii.<span class="Apple-tab-span" style="white-space:pre">    </span>Clinical Pharmacology - 208U00000X</div><div>

iv.<span class="Apple-tab-span" style="white-space:pre">      </span>Colon & Rectal Surgery - 208C00000X</div><div>v.<span class="Apple-tab-span" style="white-space:pre">    </span>Dermatology - 207N00000X</div><div>1.<span class="Apple-tab-span" style="white-space:pre">   </span>Clinical & Laboratory Dermatological Immunology - 207NI0002X</div>

<div>2.<span class="Apple-tab-span" style="white-space:pre">    </span>Dermatopathology - 207ND0900X</div><div>3.<span class="Apple-tab-span" style="white-space:pre">      </span>MOHS-Micrographic Surgery - 207ND0101X</div><div>
4.<span class="Apple-tab-span" style="white-space:pre">       </span>Pediatric Dermatology - 207NP0225X</div>
<div>5.<span class="Apple-tab-span" style="white-space:pre">    </span>Procedural Dermatology - 207NS0135X</div><div>vi.<span class="Apple-tab-span" style="white-space:pre">       </span>Electrodiagnostic Medicine - 204R00000X</div>

<div>vii.<span class="Apple-tab-span" style="white-space:pre">  </span>Emergency Medicine - 207P00000X</div></div>