Preheat the oven to 200° / gas 6.
Grease and line a 20 x 30 cm (8 x 12 in) Swiss roll tin with non-stick baking paper. Grease the tin with a little vegetable oil.
Cook the spinach and watercress in a small amount of water for 3-4 minutes until wilted. Drain thoroughly, squeezing out any excess water, then chop finely and allow to cool completely. Tip into a large bowl and mix in the egg yolks. Stir in the Parmesan cheese and season with salt and pepper.
In a large, grease-free bowl, whisk the egg whites until they hold their shape. Fold into the spinach mixture, using a large metal spoon. Pour into prepared tin and spread into the corners. Bake for 10-12 minutes until set and light golden brown.
Turn the cooked base out on a large sheet of non-stick baking paper. Peel off the lining paper and leave to cool.
Beat the soft cheese, lemon zest and juice together until smooth and creamy, then mix the basil tofu, tomatoes and herbs. Season. Spread over the roulade, then roll up from the short end. Cover and chill until ready to serve.