Heat a couple of tablespoons of olive oil in a large frying pan until very hot; carefully add the ribs and brown on all sides. Transfer to a casserole with a tight fitting lid, bone side downwards.
Reduce the heat of the frying pan, add the onion to soften but not colour. Stir in the remaining ingredients, bring to the boil and simmer for about 10 minutes or until the liquid has reduced and the mixture resembles a rich marmalade. Pour over the ribs, cover and place in the preheated oven for 3hrs. Check occasionally, adding a little water if required.