I finally started working on it tonight.
The parsing is complete, as are the changes to the API to store all of the nested information.
I started to work on the SQL, but it’s late and I’m tired. That’ll have to wait for another day. Unfortunately, I can’t really use any of the existing SQL generation code. The existing code is based on an object type; it builds a CTE that reveals all of the properties for the object type.
The new one will be more concise, and will span multiple objects. It will only retrieve the properties that it needs to execute the query. (Later, this will be combined with any fields specified in a projection).
This is the query I’m working on
from m in MovieReview where m.Author.ScreenName=’DvdFriend’
I don’t have a test for it yet, but you can drill as far as you want. IE:
from m in MovieReview where m.Something.SomethingElse.Something.Author.ScreenName=’DvdFriend’
In conclusion, it’s going to be brutal. But, it’ll be worth it. I’m going to need some Wheaties.