add constraint numArrayIndex
merge ThinMapping to FieldMapping and unify mapping's processing logic