# 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.