Subject: [scim] multiple multi valued attributes set to primary = true

From: David Moebius <[email-masked]>
Date: Mon, 20 Jan 2014 09:01:22 +0100

Hello,

what do you think should be the correct behavior if in a PUT or a PATCH
request the client sends e.g. 2 mail addresses which are both set primary
to true.

Should this be end in a error response in a 400 Bad Request or a 409
Conflict or should it be "ignored" and e.g. only the last or the first
email address will be the primary?

The scim spec doesn't say anything about this.

by David

---

From: Julian Reschke <[email-masked]>
Date: Mon, 20 Jan 2014 09:12:18 +0100

On 2014-01-20 09:01, David Moebius wrote:
> request the client sends e.g. 2 mail addresses which are both set
> primary to true.
>

A 4xx makes sense. 409 does not really ("The 409 (Conflict) status code 
indicates that the request could not be completed due to a conflict with 
the current state of the target resource.").

422 might be applicable.

Best regards, Julian

---

From: Thomas Krille <[email-masked]>
Date: Mon, 20 Jan 2014 16:15:34 +0100

2014/1/20 Julian Reschke <[email-masked]>

> the current state of the target resource.").

422 would be nice, but it is defined by the WebDAV HTTP extensions, that do
not apply here (we don't make no WebDAV). 400 seems to be the only valid
choice, though it is rather some kind of abstract in case of a semantical
error like this. I think it should be clarified by the spec what to do.

Thomas Krille
Softwareentwicklung
tarent solutions GmbH

Telefon +49 (0) 30 138803-128
Telefax +49 (0) 228 54881-235
[email-masked]

Rochusstraße 2-4, D-53123 Bonn • http://www.tarent.de/
Tel: +49 228 54881-0 • Fax: +49 228 54881-235
HRB AG Bonn 5168 • USt-ID (VAT): DE122264941
Geschäftsführer: Dr. Stefan Barth, Kai Ebenrett, Boris Esser, Alexander
Steeg

---

From: Julian Reschke <[email-masked]>
Date: Mon, 20 Jan 2014 16:20:21 +0100

On 2014-01-20 16:15, Thomas Krille wrote:
> 2014/1/20 Julian Reschke <[email-masked]
> <mailto:[email-masked]>>
>
>     A 4xx makes sense. 409 does not really ("The 409 (Conflict) status
>     code indicates that the request could not be completed due to a
>     conflict with the current state of the target resource.").
>
>     422 might be applicable.
>
>
> 422 would be nice, but it is defined by the WebDAV HTTP extensions, that
> do not apply here (we don't make no WebDAV). 400 seems to be the only

The status code can be used independently of WebDAV (check the 
definition). There's a reason why we have a protocol-independent 
registry of status codes, after all.

> ...

Best regards, Julian