Delphi解析XML节点的有关问题

Delphi解析XML节点的问题
XML如下:
Delphi解析XML节点的有关问题
这是我取节点的代码:

procedure TForm1.Button3Click(Sender: TObject);
VAR
  I,j:INTEGER;
begin
  i := 0;
  j := strtoint( AcceptXml.DocumentElement.ChildNodes[0].ChildNodes['head'].ChildNodes['rownum'].Text);
  while i<j do
  begin
    Memo1.Lines.Add(AcceptXml.DocumentElement.ChildNodes[1].ChildNodes['item'].ChildNodes['xtlb'].Text);
    Memo1.Lines.Add(AcceptXml.DocumentElement.ChildNodes[1].ChildNodes['item'].ChildNodes['dmsm1'].Text);
    Memo1.Lines.Add(AcceptXml.DocumentElement.ChildNodes[1].ChildNodes['item'].ChildNodes['dmlb'].Text);
    i:=i+1;
  end;
end;


XML中每条数据用ID来区分  -<item id="0"> -<item id="1"> -<item id="2"> -<item id="3"> -<item id="4">...-<item id="5">
我不知道该怎么区分ID,然后通过循环来取出节点信息。
------解决方案--------------------
tmpNode=AcceptXml.DocumentElement.ChildNodes['body']    
可以用tmpNode.nodecount与rownum是否相等验证一下
for i:=0 to tmpNode.nodecount do
begin
  tmpNode.ChildNodes[i]  //这就是你要取的每一个item
end;