code: func Minimum(val interface{}) {
  	if a, ok := attributeDefinition(); ok {
  		if a.Type != nil && a.Type.Kind() != design.IntegerKind && a.Type.Kind() != design.NumberKind {
  			incompatibleAttributeType("minimum", a.Type.Name(), "an integer or a number")
  		} else {
  			var f float64
  			switch v := val.(type) {
  			case float32, float64, int, int8, int16, int32, int64, uint8, uint16, uint32, uint64:
  				f = reflect.ValueOf(v).Convert(reflect.TypeOf(float64(0.0))).Float()
  			case string:
  				var err error
  				f, err = strconv.ParseFloat(v, 64)
  				if err != nil {
  					dslengine.ReportError("invalid number value %#v", v)
  					return
  				}
  			default:
  				dslengine.ReportError("invalid number value %#v", v)
  				return
  			}
  			if a.Validation == nil {
  				a.Validation = &dslengine.ValidationDefinition{}
  			}
  			a.Validation.Minimum = &f
  		}
  	}
  }
docs: // Minimum can be used in: Attribute, Header, Param, HashOf, ArrayOf
  //
  // Minimum adds a "minimum" validation to the attribute.
  // See http://json-schema.org/latest/json-schema-validation.html#anchor21.