Subject: [scim] Common Attribute "schemas" Characteristics

From: Shelley <[email-masked]>
Date: Fri, 13 Mar 2020 11:16:24 -0500

What are the characteristics for the "schemas" [1] attribute?

Here is my attempt at defining these characteristics using the Schema
definitions:

   - "type" is "reference"
   - "referenceTypes" is ["uri"]
   - "required" is "true"
   - "multiValued" is "true"
   - "uniqueness" is "none"
   - "caseExact" as "true" (since this is a "reference" type)
   - "mutability" of "immutable" (although none of the mutability values
   seems like a perfect fit)
   - "returned" characteristic of "default"

Although "schemas" and the "Common Attributes" don't define their own
schemas, it would be nice to have all of these attributes' characteristics
clearly defined in the spec using the Schema definition to help provide a
clear/common definition, particularly, since these characteristics are not
intended to be modified/defined by SPs.

In particular, in my SCIM implementation, I have been considering whether
to evaluate "schemas" in resource representations* case-sensitively* (exact
case as defined in the ResourceType),* case-insensitively* (any case
allowed), or using *lexical equivalence* (e.g. for URNs, case-insensitive
schema and NID, case-sensitive NSS, and some components ignored). The RFC
doesn't seem to clearly prescribe this, but based on the fact that the
implied type is "reference" which (debatably [2]) has "caseExact" as "true"
and the fact that the attribute "MUST only contain values defined as
"schema" and "schemaExtensions"", I'm under the assumption that this
attribute is *case-sensitive*.

Please confirm. Thanks!

[1] https://tools.ietf.org/html/rfc7643#section-3
[2] https://mailarchive.ietf.org/arch/msg/scim/05_K_y-V26EOfN2F7fuSO3DXoLw/

---

From: Phillip Hunt <[email-masked]>
Date: Fri, 13 Mar 2020 10:10:01 -0700

Shelley

In practical/pragmatic terms...case insensitive. 

I treat as case insensitive since it is unlikely and unwise if two separate schemas only differentiated by case. 

I would also expect iana process to reject “overlapping” registrations differentiated only by case. 

Phil

> On Mar 13, 2020, at 9:16 AM, Shelley <[email-masked]> wrote:
> 
> 
> Here is my attempt at defining these characteristics using the Schema definitions:
> "type" is "reference"
> "referenceTypes" is ["uri"]
> "required" is "true"
> "multiValued" is "true"
> "uniqueness" is "none"
> "caseExact" as "true" (since this is a "reference" type)
> "mutability" of "immutable" (although none of the mutability values seems like a perfect fit)
> "returned" characteristic of "default"
> Although "schemas" and the "Common Attributes" don't define their own schemas, it would be nice to have all of these attributes' characteristics clearly defined in the spec using the Schema definition to help provide a clear/common definition, particularly, since these characteristics are not intended to be modified/defined by SPs..
> 
> In particular, in my SCIM implementation, I have been considering whether to evaluate "schemas" in resource representations case-sensitively (exact case as defined in the ResourceType), case-insensitively (any case allowed), or using lexical equivalence (e.g. for URNs, case-insensitive schema and NID, case-sensitive NSS, and some components ignored). The RFC doesn't seem to clearly prescribe this, but based on the fact that the implied type is "reference" which (debatably [2]) has "caseExact" as "true" and the fact that the attribute "MUST only contain values defined as "schema" and "schemaExtensions"", I'm under the assumption that this attribute is case-sensitive.
> 
> Please confirm. Thanks!
> 
> _______________________________________________
> scim mailing list
> [email-masked]
> https://www.ietf.org/mailman/listinfo/scim