JValue - Java Value Objects
JValue is an instantiation of the Value Object pattern.
Frequently, built-in primitive types (String, Integer, Double)
are used to hold domain specific values such as amount, postcode, city or length.
This approach is not type safe (e.g., assignment of a length value to a height attribute is not detected
by the compiler), and checking of value constraints needs to be done by the surrounding object.
Therefore, it is beneficial to realize domain-specific value types as special classes.
JValue is a framework which simplifies the implementation of such domain-specific value types.
It provides mechanisms to attach SI units to a value type, and to define type constraints such
as a value range or a regular expression to which the value must adhere.