// like mappings, first get default definitions
final Map<String, HeaderDefinition> headers = new HashMap<String, HeaderDefinition>(
HeaderType.defaultDefinitions());
// and then override them with those provided in properties file
for (String resource : headerDefinitions) {
final AdditionalHeaderDefinition fileDefinitions = new AdditionalHeaderDefinition(XMLDoc.from(findResource(resource), true));
final Map<String, HeaderDefinition> map = fileDefinitions.getDefinitions();
logger.debug("{} header definitions loaded from '{}'", map.size(), resource);
headers.putAll(map);
}
// force inclusion of unknown item to manage unknown files
headers.put(HeaderType.UNKNOWN.getDefinition().getType(), HeaderType.UNKNOWN.getDefinition());