In some scenarios, users may want to provide a value for some property, but also read back the property. This can be useful when the user-provided value is somehow transformed in the database, and then we want to propagate the transformed value back into the entity. With regular SQL this can be achieved via triggers, or by wrapping a sproc and having an input/output parameter for the property.
See conversation in #28553 (comment)