EDTA is a chelator and it immobilizes metal contaminants. Metals, especially copper and iron, accelerate the rate of oxidation of fats and fatty acids (and thus of soap as well.) EDTA will not stop oxidation and rancidity caused by any other path such as UV light degradation, bacterial decomposition, hydrolysis from water, etc.
Rosemary oleoresin (ROE) is an antioxidant that prevents oxidation in general, but it is not necessarily strong enough to stop oxidation that's been triggered by metal contamination.
You would want to use ROE and EDTA together for the most effective results in controlling rancidity in soap. That said, I recently read a scholarly article that said if you had to choose one or the other, you would definitely want to use a chelator over an antioxidant. Their reasoning for this advice was rancidity from metallic contamination is much more troublesome and widespread in soap than rancidity caused by other methods.
I add ROE to my soap-making fats as they arrive in my home, if they're not already protected by chemicals added by the manufacturer. I add EDTA when I make the soap, since EDTA is not soluble in fats.
I have not seen or smelled obvious rancidity in my soaping fats or my soap since I started using ROE and EDTA.
Some people have reported alternatives to EDTA, such as sodium gluconate, that degrade quicker in the natural environment than EDTA does. I'd like to try sodium gluconate and see how it performs in my soap -- if it's reasonably comparable to EDTA as far as controlling rancidity and reducing soap scum, I'd happily make the switch.