Unfortunately in this world, you simply can't defend yourself without risk of being prosecuted for violence also.
I don't believe in all this "restrain them" crap.
Sometimes the only way to stop them hitting you is knocking them out.
Once a person i know was getting attacked by a woman. He didn't believe in hitting women, but he tried to get her in an arm lock and hold on to her until she calmed down...
...and about 10 blokes that witnessed this took the bitches side and were like "aww howay man you wanna pick on a lass, try it on with me big man come on aal knock ye out like". -.-
I believe you should be allowed to fight back, but sometimes i think it's best to just take the beating then go to the police. Justice in this world is not existent.