That's correct. For `required=False` fields, or for partial updates, the field won't be present in validation data if it's not included in the request.
If you *do* need to inspect any of the instance attributes you can do so using `self.instance`, as you note. Agree that it's not the most graceful, but it's probably better than us trying to automatically determine the correct attribute to lookup, which would be...
* Liable to be incorrect under various custom cases, or nested lookups.
* Obfuscate if the user had supplied the value or not.