extra fields:
    min
    max
    choices with or without coerce


value types:
    string
    integer
    float
    boolean
    select          # 1 value
    selectmultiple  # multiple values