# ST\_FLDDEF > [HTML Version](st_flddef.htm) _Added October 2018_ The layout of ST\_FLDDEF, defined in [ASHINC:DYNSTRUCT.DEF](https://bitbucket.org/microsabio/soslib/src/master/907016/dynstruct.def), is: define MAX\_ARY\_DIMS = 4 \! max # array dimensions deftype T\_DYN\_NAME = S,64 \! type,size for DYNSTRUCT struct and field names deftype T\_DEFTYP = S,64 \! type used to store name a DEFTYPE name defstruct ST\_FLDDEF \! map2 name,T\_DYN\_NAME \! name of struct or field map2 vartyp,b,2 \! see VARTYP\_xxx map2 varsiz,b,4 \! size of field (or element in array) map2 pos,b,4 \! offset from base of structure, base 0 map2 subs,b,2 \! # subscripts (0 for scalar) map2 subext(MAX\_ARY\_DIMS),b,4 \! # of elements in up to 4 dimensions map2 deftyp,T\_DEFTYP \! name of deftype (if applic.) endstruct The deftyp member will contain the name of the [DEFTYPE](deftype.htm.md) used to define the member type and size, if it didn’t use a built-in type. The idea behind including it is to allow DEFTYPEs to be used as data dictionary data types, allowing you to write generic code to handle the special formatting or other semantic attributes of members that aren’t otherwise knowable from the simple types.