Ich bin ganz der n00b, aber in letzter Zeit habe ich mit Parsing einige XML-Daten gespielt. Ich habe auf dieser Website eine nette Funktion gefunden, mit der ich zu einem bestimmten Knoten mit einem bestimmten Attribut gelangen kann, indem ich Folgendes tue: docFoo.SelectSingleNode("foo/bar/baz[@name='qux']); Allerdings sehen die Daten so aus:
<saving-throws>
<saving-throw>
<name>Fortitude</name>
<abbr>Fort</abbr>
<ability>Con</ability>
<modifiers>
<modifier name="base" value="2"/>
<modifier name="ability" value="5"/>
<modifier name="magic" value="0"/>
<modifier name="feat" value="0"/>
<modifier name="race" value="0"/>
<modifier name="familar" value="0"/>
<modifier name="feature" value="0"/>
<modifier name="user" value="0"/>
<modifier name="misc" value="0"/>
</modifiers>
</saving-throw>
<saving-throw>
<name>Reflex</name>
<abbr>Ref</abbr>
<ability>Dex</ability>
<modifiers>
<modifier name="base" value="6"/>
<modifier name="ability" value="1"/>
<modifier name="magic" value="0"/>
<modifier name="feat" value="0"/>
<modifier name="race" value="0"/>
<modifier name="familar" value="0"/>
<modifier name="feature" value="0"/>
<modifier name="user" value="0"/>
<modifier name="misc" value="0"/>
</modifiers>
</saving-throw>
Und ich möchte in der Lage sein, den Knoten mit name=base aber für jede Speicherung-Wurf-Knoten zu erhalten, wo childnode "abbr" = xx. Kann ich irgendwie tun, dass in einem einzigen SelectSingleNode oder werde ich zu stoppen, bei der Speicherung werfen und gehen durch den Rest des Baumes?