When designing a RESTful API, providing a spec for updating an entity will force the designer to make some decisions on how the update will behave (an update mode or type). Here are some of the modes I can think of:
- If the update body contains null values, ignore them and only update the values with non-null values. (This is the most common behavior, and I think this is called a Delta.)
- If the update body contains null values, replace existing values with these null values. (Less common in my experience; I think at one place I worked they called this an Overlay... is that typical?)
- Update only values that are currently null, and non-null in the update body. (I'm not sure I've ever seen this form, but theoretically there might be a use for it.)
Basically, my question is, Is there generally excepted terminology used in REST (or even software design in general) for these concepts?
What are different behaviors of updating typically called? (Type, Mode, something else?)
Do these different types/modes have names typically used?
Are there types/modes that I didn't list?