foreach $page (@files) { my $xp = XML::XPath->new(filename => $page); my $nodeset = $xp->find('//DCR'); # find all DCRs my @nodelist = $nodeset->get_nodelist; @dcrs = map {$_->string_value ? $_->string_value : ()} @nodelist; foreach my $dcr(@dcrs) { print "$dcr\n"; } }