If your units are in combat and any siege unit appears in your vision range, then all of your units will attack siege units avoiding all other units, losing a lot of effectiveness (units Will try capture no kill) and can be killed on the way.
These units simply have "<PreferredClasses>" for being supposedly good against siege units.
Following this logic, Spear cav should have <PreferredClasses>Cavalry</PreferredClasses>, spearman should have "cavalry", sword cavalry should have "archer".
Well, that doesn't seem to make sense to me. Let the player make his choices.