switch to XML::LibXML