Make constructor metadata parametrized (with intended parameter <- datatype)