public static double doubleValue(final ObjectAssociation field, final ObjectAdapter value) {
final ObjectSpecification specification = value.getSpecification();
final IntegerValueFacet intValueFacet = specification.getFacet(IntegerValueFacet.class);
if (intValueFacet != null) {
return intValueFacet.integerValue(value).doubleValue();
}
final DoubleFloatingPointValueFacet doubleValueFacet =
specification.getFacet(DoubleFloatingPointValueFacet.class);
if (doubleValueFacet != null) {