Rehydrate sun dried tomatoes (if they are the dry kind) and chop, quantity is flexible. If you don't use them then add some extra tomato paste.
Wash rice according to instructions on the package. (Basmati rice is handled differently than plain American rice.)
Saute onions until brown but not caramelized. Combine everything except, parsley, lemon and rice in a stock pot. Simmer covered until tomatoes "dissolve" or "melt". This probably takes 45-60 minutes.
At this stage, remove the solids and puree them in a food processor with a bit of the liquid and return to the pot. Stir into broth in the pan and start simmering again.
Add the remaining ingredients, i. E., rice, parsley and lemon juice and continue to cook until the rice is done, which will be about twenty minutes for basmati rice. (The rice should be a bit "overdone" for this recipe compared to how you would fix it for a standard rice dish.)
Note that fresh parsley is essential and gives the recipe a characteristic flavor. Don't bother to make the recipe of you don't have fresh. It will seem like a lot of parsley. Use it anyway. Perhaps the recipe should have been called parsley tomato soup.
The timings are approximate. It's hard to overcook this soup. If you don't cook it long enough, the flavors don't meld together as well but there is still a lot of flexibility.
*About garam masala. It is used in Indian cooking and any Indian grocery store will have it. It is a mixture like curry powder. And like curry powder, no two versions are identical. Any version will do. If you can't get it, you can make your own. For purposes of this recipe I would suggest substituting something on this order in amounts to give you 2 - 2 1/2 tsp:
about equal amounts of ground cumin and ground coriander pinch of ground cinnamon tiny pinch of cayenne pinch of black pepper