It can thereafter be restructured. It is possible to add or remove fields once a TableRecord is constructed. It is fixed when its RecordDesc contains fields. The field names do not need to be identical however, only the types. That is, the structure needs to be identical, but not the labels.
Conformance is checked recursively for fixed subrecords.
That is, a variable structured subrecord is not checked, because any record can be assigned to it. A fixed structured subrecord has to conform the corresponding subrecord in the source. A Table field is conforming when the name of the table description of the source table matches the table description name defined in the RecordDesc field. When that name is blank, every table matches. When a TableRecord is read back, possible Tables contained in fields are only opended and read back when they are accessed for the first time.