TDom を使用して、次の形式でオブジェクトのリストを循環させたいと考えています。
<object>
<type>Hardware</type>
<name>System Name</name>
<description>Basic Description of System.</description>
<attributes>
<vendor>Dell</vendor>
<contract>MM/DD/YY</contract>
<supportExpiration>MM/DD/YY</supportExpiration>
<location>Building 123</location>
<serial>xxx-xxx-xxxx</serial>
<mac>some-mac-address</mac>
</attributes>
</object>
<object>
<type>Software</type>
<name>Second Object</name>
...
次に、TDom を使用してオブジェクトのリストを作成します。
set dom [dom parse $xml]
set doc [$dom documentElement]
set nodeList [$doc selectNodes /systems/object]
これまでのところ、(理論的には) リストからすべての「オブジェクト」ノードを選択するためにこれを行ってきました。それらをループするにはどうすればよいですか?それはただですか:
foreach node $nodeList {
オブジェクトごとに、各属性の関連付けを取得する必要があります。例から、「名前」は「システム名」、「ベンダー」は「デル」などであることを覚えておく必要があります。
私はTCLを初めて使用しますが、他の言語ではオブジェクトまたは連想リストを使用してこれらを保存します。これは可能ですか?この方法で属性を選択する構文の例を教えてください。