Definition of a subtype, along with optional name. If name is missing, class
of the type will be checked for JsonTypeName annotation; and if that
is also missing or empty, a default
name will be constructed by type id mechanism.
Default name is usually based on class name.