This function is mainly in place so that we can automatically allow numeric
read lengths, pH values, etc., which are defined as strings in our annotation
vocabulary but can reasonably be numbers.
Additionally, this function will return TRUE
if the values are integers and
the desired class is numeric, and will return TRUE
if the values are
numeric but are whole numbers. 2.0
is considered coercible to integer, but
2.1
is not.
It will also allow the following capitalizations of boolean values: true,
True, TRUE, false, False, FALSE. These are all treated as valid booleans by
Synapse.
This function will not affect validation of enumerated values, regardless
of their class. It is only used when validating annotations that have a
required type but no enumerated values.