This para is confusing. Surely the field context will be used regardless of whether a `context` object is specified? If not (ie the `context` object is required) then give an example:

    "context": {}

Overriding the fieldname with another fieldname doesn't make sense to me.  However, being able to override the *value* does make sense, ie: use this value instead of looking up a value from the specified field.