restructure data to compute StructData type from the type of its properties.
Merge branch 'feature_structdata_type' into develop