Yes, Tab and Page are interchangeable, and Tab.Parent.IsActive should return True for the parent of the active page.
The way you have it setup it could put the class attribute in there twice though:
For this: [Level1-Item[ < li IIF({Page.IsActive}='True', class="SelectedItem") IIF({Page.Parent.IsActive}='True', class=" ParentSelected") > ]]
You may see this < li class="SelectedItem" class=" ParentSelected">
This would be better:
[Level1-Item[ < li IIF({Page.IsActive}='True', class="SelectedItem") IIF({Page.Parent.IsActive}='True', class=" ParentSelected") > ]]
Then it will come out like this: < li class="SelectedItem ParentSelected" > |