Sample code for 30+ languages & platforms
Zig

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 Zig Downloads

Zig
const std = @import("std");
const chilkat = @import("chilkat");

pub fn main(init: std.process.Init) !void {
    const alloc = init.arena.allocator();

    const xml = try chilkat.Xml.init();
    defer xml.deinit();

    xml.loadXmlFile("qa_data/resp.xml") catch {
        std.debug.print("{s}\n", .{try xml.getLastErrorText(alloc)});
        return;
    };

    const x_item = xml.getChildWithAttr("Item", "Name", "Album") catch {
        std.debug.print("not found.\n", .{});
        return;
    };
    defer x_item.deinit();

    std.debug.print("{s}\n", .{try x_item.getContent(alloc)});
}