Pour 2½ litres of water into a large saucepan. Roughly chop one carrot, one celery stalk and one leek and add to the saucepan along with the beef and bay leaves. Cover the saucepan and bring to the boil, then reduce the heat and simmer for 2 to 2½ hours until the meat comes off the bone easily.
Remove the vegetables and bay leaves and discard. Take out the meat and remove the bones. Cut the meat into smaller pieces and place back into the stock in the saucepan.
Chop the rest of the vegetables and add to the soup, along with the celery leaves. Return to the boil, then reduce the heat and simmer for 20 minutes.
Meanwhile, heat the butter in a frying pan. Add the semolina and fry over a medium heat, stirring until golden. Remove from the heat and allow to cool slightly. Add the semolina to the soup and simmer for another 10 minutes. Season well with salt and freshly ground black pepper and serve with potato fritters and apple sauce.