refs #2 the value of ImageField could be string for lazy evaluation