!/usr/bin/perl # open an output file unless (open (OUTFILE, ">testoutput.xml")){ die ("Cannot open output file testoutput.xml\n"); } use XML::Simple; my $file = "infile.xml"; my $xs1 = XML::Simple->new(); my $doc = $xs1->XMLin($file); foreach my $key (keys (%{$doc->{document}})){ print $doc->{document}->{$key}->{'datetime'}, ",", '(' . $key . ')', ",", $doc->{document}->{$key}->{sourcecategory}, ",", $doc->{document}->{$key}->{schemeversion}, ",", "\n"; }