Sample code for 30+ languages & platforms
Delphi ActiveX

XML GetChildWithAttr

See more XML Examples

Demonstrates how to get the content of a particular node with a particular attribute. For example, returns "Face up in the Rain" for the Name="Album" node.
 <Response Status="OK">
   <Item Name="ZoneID">0</Item>
   <Item Name="State">2</Item>
   <Item Name="FileKey">305718</Item>
   <Item Name="Artist">Michael Tomlinson</Item>
   <Item Name="Album">Face Up in the Rain</Item>
   <Item Name="Name">The Way We're Going</Item>
   <Item Name="Status">Playing</Item>
</Response> 

Chilkat Delphi ActiveX Downloads

Delphi ActiveX
uses
    Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
    Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Chilkat_TLB;

...

procedure TForm1.Button1Click(Sender: TObject);
var
success: Integer;
xml: TChilkatXml;
xItem: IChilkatXml;

begin
success := 0;

xml := TChilkatXml.Create(Self);

success := xml.LoadXmlFile('qa_data/resp.xml');
if (success <> 1) then
  begin
    Memo1.Lines.Add(xml.LastErrorText);
    Exit;
  end;

xItem := xml.GetChildWithAttr('Item','Name','Album');
if (xml.LastMethodSuccess = 0) then
  begin
    Memo1.Lines.Add('not found.');
    Exit;
  end;

Memo1.Lines.Add(xItem.Content);
end;