MATLAB: Error Unable to perform assignment because dot indexing is not supported for variables of this type.

structure dot indexingtext strings

Simple code
TestStruct.Level1A='TestStruct_Level1A';
TestStruct.Level1B='TestStruct_Level1B';
TestStruct.Level1B.Level2='TestStruct_Level1B_Level2';
gives error
Unable to perform assignment because dot indexing is not supported for variables of this type.
Error in Sample1 (line 3)
TestStruct.Level1B.Level2='TestStruct_Level1B_Level2';
Why does this work at the first level but not the second? How can I make it work?

Best Answer

You are receiving the error because you have already defined the class of the first level as a character. In order to add a second level to it you would have to define it as a structure.
>> TestStruct.Level1B='TestStruct_Level1B';
>> class(TestStruct.Level1B)
ans =
'char'
>>