* @throws IOException
* @throws RatReportFailedException
*/
public static void report(final IReportable container, final Writer out, final IHeaderMatcher matcher,
final ILicenseFamily[] approvedLicenseNames) throws IOException, RatReportFailedException {
IXmlWriter writer = new XmlWriter(out);
RatReport report = XmlReportFactory.createStandardReport(writer, matcher, approvedLicenseNames);
report.startReport();
container.run(report);
report.endReport();
writer.closeDocument();
}