Describe the bug
Currently, one record couldn't appear more than one time in a complex record, because the schema definition string redefined the same name object, the right way is that if one record has appeared then if another field uses it again, the schema definition string only shows the record name in the type parameter.
For example
class Obj1(Record):
a = String()
b = Double()
# This is ok
class Obj2(Record):
a = String()
nested = Obj1()
# This is not work
class Obj3(Record):
a = String()
nested1 = Obj1()
nested2 = Obj1()
# This is not work
class Obj4(Record):
a = String()
nested1 = Obj1()
nested2 = Array(Obj1())
Describe the bug
Currently, one record couldn't appear more than one time in a complex record, because the schema definition string redefined the same name object, the right way is that if one record has appeared then if another field uses it again, the schema definition string only shows the record name in the type parameter.
For example