Well, looks like I've taken a swan dive into XML coding that's turning into a cannonball...

I'm trying to modify the equipment section to turn it from text into an expandable list, similar to the monster section (but with the look of an equipment table).

Unfortunately, I can't seem to get it to look deeper than the first node (weapon, armor, gear), and being the n00b to XML coding that I am, don't know how to fix the problem. Here is my equipment code section:

d20modified_reference.xml
Code:
	<windowclass name="equipment">
		<datasource name="equipment"></datasource>
		<frame name="referencebox"></frame>
		<dynamic resize="vertical"></dynamic>
		<defaultsize width="700" height="650"></defaultsize>
		<minimize icon="minimized_reference"></minimize>
		<sheetdata>
		  <windowopencontrol>
				<icon normal="button_dragtarget"></icon>
				<bounds rect="25,20,20,20"></bounds>
				<class name="type"></class>
			</windowopencontrol>
		  <stringcontrol name="type">
        <bounds rect="50,25,-25,25"></bounds>   
      </stringcontrol>        
			<windowlist class="equipmentstyleline" name="liststyle">
        <bounds rect="30,52,-25,-25"></bounds>
        <font normal="chatfont" bold="narratorfont" italic="chatitalicfont" bolditalic="chatbolditalicfont" title="titlefont"></font>
      </windowlist>
	    <scroller>
        <bounds rect="-63,-45,45,27"></bounds>
        <target name="liststyle"></target>
        <button normal="button_scroller" pressed="button_scroller_down"></button>
			</scroller>			
     </sheetdata>
	</windowclass>
	
	<windowclass name="equipmentstyleline">
     <datasource name="weapons"></datasource>
	   <sheetdata>
	      <stringcontrol name="style">
	         <bounds rect="0,0,200,25"></bounds>
        </stringcontrol>
	      <windowlist class="equipmentclassline" name="listclass">
	         <bounds rect="25,27,-25,-25"></bounds>
	         <dynamic resize="vertical"></dynamic>
        </windowlist>
        <stringcontrol name="class">
           <bounds rect="50,0,-25,25"></bounds>
        </stringcontrol>
     </sheetdata>
  </windowclass>
  
  <windowclass name="equipmentclassline">
     <datasource name="simple"></datasource>
     <sheetdata>
        <stringcontrol name="class">
           <bounds rect="50,0,-25,25"></bounds>
        </stringcontrol>
        <windowlist class="equipmentdetailline" name="listdetail">
           <bounds rect="50,27,-25,-25"></bounds>
           <dynamic resize="vertical"></dynamic>
        <nestdata></nestdata>        
        </windowlist>
     </sheetdata>
  </windowclass>
  
  <windowclass name="equipmentdetailline">
     <datasource name="lightmelee"></datasource>
     <sheetdata>
        <stringcontrol name="name">
           <bounds rect="75,0,200,25"></bounds>
        </stringcontrol>
        <stringcontrol name="cost">
           <bounds rect="275,0,50,25"></bounds>
        </stringcontrol>
     </sheetdata>
  </windowclass>
When fantasygrounds calls the code above, it opens the referencebox, puts a drag/drop icon and shows the equipment type (Armor, Weapon or Equipment), but the rest is blank. Anyone see what I'm doing wrong? I figure it has something to do with the fact the code isn't seeing the deeper equipment nodes.

Also, one big problem is that I know I need the <nestdata> in the block somewhere, but I'm not sure where (and a definition of what <nestdata> is would be nice)

current equipment "test" section (note: there is a LOT I will be changing in this, due to the fact the weapon/armor/gear fields are so different from each other)

equipmentSRD.xml
Code:
<root>
      <node name="equipment">
            <node name="weapons">
                  <stringvalue name="type" value="Weapons"></stringvalue>
                  <node name="simple">
                        <stringvalue name="style" value="Simple Weapons"></stringvalue>
                        <node name="unarmed">
                              <stringvalue name="class" value="Unarmed Attacks"></stringvalue>
                              <node name="gauntlet">
                                    <stringvalue name="name" value="Gauntlet"></stringvalue>
                                    <stringvalue name="cost" value="2 gp"></stringvalue>
                                    <stringvalue name="damagesmall" value="1d2"></stringvalue>
                                    <stringvalue name="damagemedium" value="1d3"></stringvalue>
                                    <stringvalue name="critical" value="x2"></stringvalue>
                                    <stringvalue name="rangeinc" value="-"></stringvalue>
                                    <intvalue name="weight" value="1"></intvalue>
                                    <stringvalue name="type" value="Bludgeoning"></stringvalue>
                              </node>
                        </node>
                        <node name="ranged">
                              <stringvalue name="class" value="Ranged Weapons"></stringvalue>
                              <node name="crossbowheavy">
                                    <stringvalue name="name" value="Crossbow, heavy"></stringvalue>
                                    <stringvalue name="cost" value="50 gp"></stringvalue>
                                    <stringvalue name="damagesmall" value="1d8"></stringvalue>
                                    <stringvalue name="damagemedium" value="1d10"></stringvalue>
                                    <stringvalue name="critical" value="19-20/x2"></stringvalue>
                                    <stringvalue name="rangeinc" value="120 ft."></stringvalue>
                                    <intvalue name="weight" value="8"></intvalue>
                                    <stringvalue name="type" value="Piercing"></stringvalue>
                              </node>
                              <node name="crossbowheavybolts">
                                    <stringvalue name="name" value=" Bolts, crossbow (10)"></stringvalue>
                                    <stringvalue name="cost" value="1 gp"></stringvalue>
                                    <stringvalue name="damagesmall" value="-"></stringvalue>
                                    <stringvalue name="damagemedium" value="-"></stringvalue>
                                    <stringvalue name="critical" value="-"></stringvalue>
                                    <stringvalue name="rangeinc" value="-"></stringvalue>
                                    <intvalue name="weight" value="1"></intvalue>
                                    <stringvalue name="type" value="-"></stringvalue>
                              </node>
                        </node>
                  </node>
            </node>
            <node name="armor">
                  <stringvalue name="type" value="Armor"></stringvalue>
                  <node name="light">
                        <stringvalue name="class" value="Light Armor"></stringvalue>
                        <node name="padded">
                              <stringvalue name="name" value="Padded Armor"></stringvalue>
                              <stringvalue name="cost" value="5 gp"></stringvalue>
                              <intvalue name="armorbonus" value="+1"></intvalue>
                              <intvalue name="maxdex" value="+8"></intvalue>
                              <intvalue name="armorpen" value="0"></intvalue>
                              <stringvalue name="spellfail" value="5%"></stringvalue>
                              <stringvalue name="speed30" value="30 ft."></stringvalue>
                              <stringvalue name="speed20" value="20 ft."></stringvalue>
                              <intvalue name="weight" value="10"></intvalue>
                        </node>
                  </node>
            </node>      
      </node>                              
</root>