Peel the artichokes. Cut them in half. Rub the cut halves with lemon juice and set side. Chop the rest of the vegetables. Heat the olive oil.
Add the artichokes and sauté them, along with the onion, for 10 minutes. Stir occasionally. Add the stock, salt and pepper. Bring the stock to a boil, reduce heat, cover and simmer for 30 minutes. When cooked, remove from heat and let cool.
Place soup in a blender in batches and purée until smooth. Return to a clean pot, add the soy milk and bring back to a boil. Serve in bowls, garnished with walnuts.
Servings: 4 to 6