One of the method would be to convert XML into text and than comparing text files
FYI, XML is text. If you expect the 2 XML files to be ordered and formatted identically, a simple text diff will work just fine. If you need to allow for formatting differences, you could filter the XML files through a "shallow parser", for example XML::Parser::REX, then do a text diff on the resulting files. But, this will only "normalize" the formatting of the tags. The content of attribute values and any "bare text" in a container element is left "as is". Any format normalizing of that content is outside the scope of XML.