use XML::XPath; my $file = 'memlist.xml'; my $xp = XML::XPath->new(filename=>$file); my $nodeset = $xp->find('/MEMBERLIST/LIST'); my $max_nickid = -1; my $max_rowid = -1; foreach my $list ( $nodeset->get_nodelist) { my $nickid = $list->findvalue('NICKID/text()')->value(); my $rowid = $list->findvalue('ROWID/text()')->value(); $max_nickid = $nickid if ($nickid > $max_nickid); $max_rowid = $rowid if ($rowid > $max_rowid); } print "NICK: $max_nickid ROWID: $max_rowid\n";