use strict; use XML::LibXML; use Tk; my $filename; my $xpc; my $mw = MainWindow->new( -title => 'GUI' ); $mw->Button( -text => 'Load XML', -command => \&tk_Load_Export )->grid(-column => '0', -row => '0', -sticky => 'e'); MainLoop; sub tk_Load_Export { $filename = $mw->getOpenFile( -title => 'Load XML', -defaultextension => '.xml', -initialdir => '.' ) or return; import_XML($filename); } sub import_XML { print "Reading the XML file $filename\n\n"; my $dom = XML::LibXML->load_xml(location => $filename, huge => 1); $xpc = XML::LibXML::XPathContext->new($dom); print "XML imported\n"; }