#!/usr/bin/perl
use strict;
use warnings;
use XML::Simple;
my $file = './Test.xml';
my $head = $ARGV[0] || 'Unknown';
my $map = XMLin($file, forcearray => ['header', 'act'], keyattr => { header => 'name'});
my $header = $map->{header}->{$head};
if($header) {
foreach my $act ( @{$header->{act}} ) {
print "act: $act\n";
}
}
else {
print "No match for '$head'\n";
}
####
my $map = XMLin($file, forcearray => ['header', 'act'], keyattr => {});
my $headers = $map->{header};
foreach my $header (@$headers) {
if($header->{name} eq $head) {
foreach my $act ( @{$header->{act}} ) {
print "act: $act\n";
}
}
}
####
unless ($config = $xs1->XMLin($file, forcearray => 1)) {
print "Could NOT read $file IN:$!\n";
exit();
}