When using XMLUnit to compare two pieces of XML, you'll typically use the assertXMLEqual() method. This method accepts two parameters: a control document and a test document. The control document is the "correct" version of the XML, against which the test document will be compared. Now, let's say you have two versions of an xml document, and you want to compare them to see if they're equal. However, you want to ignore certain elements that might be different but don't actually matter for the purposes of your comparison. In this case, you can use a supporting class called DifferenceListener to filter out these irrelevant differences. This method is called whenever XMLUnit detects a difference between the control and test documents. By implementing this interface, you can decide whether or not to ignore a given difference. For example, you might choose to ignore all differences that involve attributes with the name "id" or elements with the name "updated-at". In addition to DifferenceListener, XMLUnit also provides a number of other supporting classes that can be helpful when working with XML. For example, OutputFormatters can be used to format the output of assertXMLEqual() in various ways (e.g., pretty-printed, minified, etc.), and NodeFilters can be used to select which nodes from the control document should be compared against nodes from the test document.