support for Nullable and Enum property types