Good input. You are right, it is 1-to-many, I probably didn't phrase that correctly. I meant it is somewhat of an EAV, but instead of being so arbitrary (as EAV is), it's become specific to it's purpose. My example was bad but I wanted to note that you didn't need a table per Culture, simply one table that stored the various descriptions and maybe a Culture column on it.
As for your design, I can't believe I didn't think of storing the T/F as multiple choice and making the multiple choice store as a bit mask, this makes great sense!
So if I had:
How much wood can a woodchuck chuck in an hour (multiple choice)?
1 - five (bitmask = 1)
2 - four (bitmask = 2)
3 - ten (bitmask = 4)
and if the user selected all then the value would be stored as: 7
Select Power(2, @Answer1 - 1) | Power(2, @Answer2 - 1) | Power(2, @Answer3 - 1)
Select Power(2, 0) | Power(2, 1) | Power(2, 2)
Select 1 | 2 | 4
Then, to check which answers the user selected:
@Answer & Power(2, 1 - 1) = Power(2, 1 - 1) As DidYouSelectAns1,
@Answer & Power(2, 2 - 1) = Power(2, 2 - 1) As DidYouSelectAns2,
@Answer & Power(2, 3 - 1) = Power(2, 3 - 1) As DidYouSelectAns3
Or more simply
@Answer & 1 = 1 As DidYouSelectAns1,
@Answer & 2 = 2 As DidYouSelectAns2,
@Answer & 4 = 4 As DidYouSelectAns3
And if you want to validate against the correct answer
@CorrectValue = Power(2, 2 - 1)
If ((@Answer & @CorrectValue) = @CorrectValue)
Print 'You are correct'
I hope my examples aren't too confusing, this isn't a discussion on bitmasking, but I want other readers to understand the power of it for storing answers to T/F or multiple choice questions. In a T/F question, the bitmask values are simply 1(T) or 0(F).