use XML::Parser; use strict; parse_stuff(); sub parse_stuff { my $parser = new XML::Parser( Handlers => {Start => \&handle_start, End => \&handle_end}); $parser->parsefile('/tmp/ra.xml'); } { my $indent; sub handle_start { my ($p, $el, %atts) = @_; $indent++; print "-"x$indent . "$el\n"; } sub handle_end { $indent--; } }