anchor.diff:  endif::cdc-product[]
   ====
   
  -The value of an _update_ change event on this collection will actually have the exact same _schema_, and its payload is structured the same but will hold different values. Specifically, an update event will not have an `after` value and will instead have a `patch` string containing the JSON representation of the idempotent update operation. Here's an example:
  +The value of an _update_ change event on this collection will actually have the exact same _schema_, and its payload is structured the same but will hold different values. Specifically, an update event will not have an `after` value and will instead have a `patch` string containing the JSON representation of the idempotent update operation and a `filter` string containing the JSON representation of the selection criteria for the update.  The `filter` string can include multiple shard key fields for sharded collections. Here's an example:
   
   [source,json,indent=0,subs="attributes"]
   ----
  
positive.code:       "op": "u",
        "ts_ms": 1465491461815,
        "patch": "{\"$set\":{\"first_name\":\"Anne Marie\"}}",
        "source": {
          "version": "{debezium-version}",
          "connector": "mongodb",
  
negative.code:           "name": "io.debezium.data.Json",
            "version": 1,
            "field": "patch"
          },
          {
            "type": "string",
            "optional": true,
            "name": "io.debezium.data.Json",
            "version": 1,
            "field": "filter"
          },
          {
            "type": "struct",
  