Boil the rice in 3 pints of water with a pinch of salt for 8 minutes, stirring once and keeping the water at a rolling boil. Drain and reserve.
Heat the oil in a large saucepan or casserole with a tight fitting lid then fry the shallots, garlic and ginger for 2 minutes stirring constantly.
Add the chicken, increase the heat and stir fry for 3 minutes. Add all the ground spices and stir again for a few seconds.
Add the yoghurt and stir for one minute then stir in the sugar and raisins or sultanas. Check seasoning then cover with the rice.
Cover the saucepan with foil or a tea towel then clamp the lid on tightly. Reduce the heat to low and cook undisturbed for 10 minutes. Remove from the heat and rest, still tightly covered, for 5 minutes.
Uncover then sprinkle with the garnishes and serve immediately.