使用 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 的新手,但在其他语言中,我会使用对象或关联列表来存储这些。这可能吗?你能告诉我以这种方式选择属性的语法示例吗?