I think that you can ask a child to say sorry, AFTER the consequences have been doled out.
So: Joey hits Johnny. Joey goes to time-out (or whatever) immediately, while I comfort Johnny. When time-out is up, Joey is reminded why he went to time-out, and what is expected from him. I would ask that he go and give Johnny a hug/pat on the back, etc and tell him that he is sorry for hitting him. But I am not going to force him, because then you get the "SorryIhityou" without any kind of meaning. It is a way of making amends with our buddies, not getting out of trouble.
I used to care for a little boy (5 y/o) who would hurt kids on purpose and say "SorrySorrySorrySorr ySorry". It meant nothing to him. And all it meant to me was that he had done it deliberately.