I know there's a whole RFC for HTTP methods but I was wondering what would be the ***expected behaviour*** from a **PUT** to a REST API that responds with `Content-type: application/json` and accepts JSON encoded bodies.

* Is it expected to replace the document entirely with the new JSON object passed in the body?
* Is it expected to modify only the attributes passed in the JSON body? (as its the recommended behaviour for the `PATCH` method [RFC 5789](https://www.rfc-editor.org/rfc/rfc5789)).
* What if the documents that the API exposes do not conform to an schema and the JSON object in the body has new properties not present in the current document?. Should it add them?

*Any comment or resource for me to read will be welcome*.