#!/usr/bin/perl use warnings; use strict; use XML::LibXML; my $tree = 'XML::LibXML'->load_xml(string => <<'EOT'); input output eingabe b ausgabe EOT test('english', 'a'); test('deutsch', 'b'); sub test { my ($language,$id) = @_; my @result = $tree->findnodes("/language/$language/widget[\@ID=$id]"); print $_->textContent . "\n" for @result; my @result2 = $tree->findnodes("/language/$language/widget[\@ID='$id']"); print $_->textContent . "\n" for @result2; }