On Thu, Aug 14, 2014 at 01:35:36AM -0700, John Lato wrote: > I would suggest { someMaybeField :: f (Maybe Value) }, or perhaps newtype > MaybeValue = MV (Maybe Value). That seems like a perfectly good solution to me. The only drawback is that you cannot validate fields individually. Tom