Place the semolina, flour, salt and sugar in a large bowl and whisk to combine.
Add the oil, yogurt, milk, vanilla, orange blossom water (if using) and zest (if using). Whisk until no lumps remain then set aside to soak for 30 minutes.
Meanwhile, preheat the oven to 180°C/350°F/gas mark 4. Grease a 20cm/8in round 5cm/2in deep cake tin (preferably loose bottomed) and line with baking parchment.
After the batter has soaked for 30 minutes, sprinkle over the baking powder and bicarbonate of soda and whisk to combine.
Pour the batter into the preapared tin and spread level. Bake for about 35 minutes until the cake is firm to the touch and a skewer inserted into the centre comes out clean or with a few moist crumbs but no wet batter.
While the cake is baking make the syrup (if using). Mix the orange and/or lemon juice in a jug then measure out 80ml (⅓ cup) and pour it into a small saucepan.
Add the sugar and place the pan over a low heat. Stir until the sugar has dissolved then bring up to a simmer for a minute then remove from the heat.
When the cake is done, poke holes all over the top with a skewer and drizzle over the syrup. Make sure that you cover the cake evenly, don't just pour it all in the middle. (If you don't have a loose bottomed tin then you may wish to turn the cake out before adding the syrup otherwise it will be delicate and difficult to turn out without smooshing the top.)
Leave the cake to cool in the tin for 15 minutes, until the syrup has soaked in, then carefully turn it out onto a wire rack and leave to cool completely.