Add cache to check_xml_record
On each modification or deletion, check_xml_record is called and do a search in ModelData. But most of the time, the result is empty because we have a very few number of records created by XML and mainly ir.* stuffs.
But we can not cache every query as the possibilities are infinite. So the idea is to limit by model when to do the search. There are only a few models that have records created by XML so we can keep them in the cache and skip the search for all model not in the list.