I'd looked at equipment.dat, hoping that it would provide what I was looking for, but alas, it only provides requirement data, which, as you indicated, is more than adequately handled by can_equip(). The purpose of the Equipment map I am working on is to document the side-effects of equipment...