uses
OmniXML,
OmniXMLUtils;
var
node : IXMLNode;
other: IXMLNode;
xml : IXMLDocument;
begin
xml := CreateXMLDoc;
if XMLLoadFromFile(xml, 'fname.xml') then begin // 3 more notes
for node in XMLEnumNodes(xml,'/root/value') do begin
Writeln(GetNodeAttrStr(node, 'p1', ''), ';', GetNodeAttrStr(node, 'p2', ''), ';',
GetNodeAttrStr(node, 'p3', ''));
other := SelectNode(node, 'other');
end;
end;
end;
Предупреждение: не проверено, записано в браузере.