Subject: [scim] RFC7644: add operation for PATCH question

From: Tangui Le Pense <[email-masked]>
Date: Tue, 4 Aug 2020 15:06:00 +0300

Hello,

RFC7644 states in "3.5.2.1.  Add Operation" that:

    The operation MUST contain a "value" member whose content specifies
    the value to be added.  The value MAY be a quoted value, or it may be
    a JSON object containing the sub-attributes of the complex attribute
    specified in the operation's "path".

However, in the first example the value is a list, neither a quoted 
value nor a JSON object:

    { "schemas":
       ["urn:ietf:params:scim:api:messages:2.0:PatchOp"],
      "Operations":[
        {
         "op":"add",
         "path":"members",
         "value":[
          {
            "display": "Babs Jensen",
            "$ref":
    "https://example.com/v2/Users/2819c223...413861904646",
            "value": "2819c223-7f76-453a-919d-413861904646"
          }
         ]
        }
      ]
    }

(The example also appears in "3.5.2.  Modifying with PATCH".)

Can you please provide guidance about this? If lists are actually 
allowed, how to handle it?

Also, it's not clear what happens if there's a filter in the path 
element. It's probably not allowed for adding (only for replacing and 
removing) but it is not stated in the specification.

Regards,

-- 

Tangui

---

From: Tangui Le Pense <[email-masked]>
Date: Tue, 4 Aug 2020 20:40:15 +0300

Hello,

Another inconsistency in the same "3.5.2.1.  Add Operation". The spec says:

The value MAY be a quoted value,*or it may be a JSON object containing the sub-attributes of the complex 
attribute*
   *specified in the operation's "path".*

however the second example of the section is:

    {
      "schemas":
        ["urn:ietf:params:scim:api:messages:2.0:PatchOp"],
      "Operations":[{
        "op":"add",
        "value":{
          "emails":[
            {
              "value":"[email-masked]",
              "type":"home"
            }
          ],
          "nickname":"Babs"
      }]
    }

in which there is no "path". Maybe I misunderstood the term "quoted 
value", which is not defined anywhere else.

Regards,

-- 

Tangui