Visual RFC.
ALL RFCs / RFC 7396
Read the RFC ↗
RFC 7396 / JSON MERGE PATCH

Remove a member with null

02

A null value inside an object patch removes that named member rather than assigning null to it.

RFC 7396 · § 2EXAMPLE
3 / 3
Remove a member with nullThe target has color blue and note null. A color-null patch removes the color member; the unmentioned note member remains present with null.Null in an object patch removes a memberTarget null and patch-member null have different rolesTarget{"color":"blue","note":null}Patch{"color":null}remove colorResult{"note":null}color is absent; note is still present with nullUnmentioned null values are not deleted
03
Keep the unmentioned null member.

Only note remains, with its original null value. A null patch entry for an absent name would add nothing.

Source for this drawing: RFC 7396 · Read RFC section 2 ↗

Protocol participantThreat or exceptionProtocol controlSimplified drawings · precise section references
New to this? Start hereA quick picture + helpful background

A message needs an address.

Think of a packet as a small addressed envelope. Devices pass it onward; transport protocols decide what delivery promises an application gets.

Helpful first, if these ideas are unfamiliar

These pictures are analogies to help you learn. The linked RFC explains the actual rules.

Terms in this drawing
Member removal
The name/value pair is absent from the result, which differs from a present null value.
Related RFCs and changes

“Updates” changes part of an earlier RFC. “Obsoletes” replaces it. This list shows selected related documents.

KEY POINT

Object-member null is a deletion instruction.

  • For a member in an object patch whose value is null, remove that name/value pair if the target has it. If the name is absent, there is nothing to remove; null does not add a new null member.
  • An unmentioned target member whose value is already null is retained. The deletion meaning comes from null in the patch, not from every null anywhere in the target.
  • This format is best suited to object-based documents that do not use explicit null values as ordinary fields. An object-member patch cannot directly set that member to null because that spelling means removal.
DETAILS

Example target: {"color":"blue","note":null}. Patch: {"color":null}. Result: {"note":null}. At the root, a patch that is itself null is a different case: it replaces the whole target with null, as explained in the replacement chapter.

Read the RFC section ↗

All chapters in RFC 7396

Drawing view

Scroll the drawing to see every part. Playback controls stay above it.

RFC 9700 / CHAPTERS

Chapters

For full details, tables, algorithms, and exceptions, read the original RFC.

RFC status and corrections ↗