#! /usr/bin/perl use warnings; use strict; use XML::LibXML; my $xml = 'XML::LibXML'->load_xml( location => 'file.xml' ); my %h; for ($xml->findnodes('//@*')) { $h{ $_->value } = 1; } print "$_\n" for keys %h;