You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@directory.apache.org by ka...@apache.org on 2013/09/22 18:23:56 UTC

svn commit: r1525387 - in /directory/escimo/trunk/common/src/main/resources: enterprise-user-schema.json group-schema.json user-schema.json

Author: kayyagari
Date: Sun Sep 22 16:23:55 2013
New Revision: 1525387

URL: http://svn.apache.org/r1525387
Log:
schema files

Added:
    directory/escimo/trunk/common/src/main/resources/enterprise-user-schema.json
    directory/escimo/trunk/common/src/main/resources/group-schema.json
    directory/escimo/trunk/common/src/main/resources/user-schema.json

Added: directory/escimo/trunk/common/src/main/resources/enterprise-user-schema.json
URL: http://svn.apache.org/viewvc/directory/escimo/trunk/common/src/main/resources/enterprise-user-schema.json?rev=1525387&view=auto
==============================================================================
--- directory/escimo/trunk/common/src/main/resources/enterprise-user-schema.json (added)
+++ directory/escimo/trunk/common/src/main/resources/enterprise-user-schema.json Sun Sep 22 16:23:55 2013
@@ -0,0 +1,88 @@
+{
+     "id": "urn:scim:schemas:extension:enterprise:2.0:User",
+     "name": "EnterpriseUser",
+     "description": "Enterprise User",
+     "attributes":[
+       {
+         "name":"employeeNumber",
+         "type":"string",
+         "multiValued":false,
+         "description":"Numeric or alphanumeric identifier assigned to a person, typically based on order of hire or association with an organization.",
+         "readOnly":false,
+         "required":false,
+         "caseExact":false
+       },
+       {
+         "name":"costCenter",
+         "type":"string",
+         "multiValued":false,
+         "description":"Identifies the name of a cost center.",
+         "readOnly":false,
+         "required":false,
+         "caseExact":false
+       },
+       {
+         "name":"organization",
+         "type":"string",
+         "multiValued":false,
+         "description":"Identifies the name of an organization.",
+         "readOnly":false,
+         "required":false,
+         "caseExact":false
+       },
+       {
+         "name":"division",
+         "type":"string",
+         "multiValued":false,
+         "description":"Identifies the name of a division.",
+         "readOnly":false,
+         "required":false,
+         "caseExact":false
+       },
+       {
+         "name":"department",
+         "type":"string",
+         "multiValued":false,
+         "description":"Identifies the name of a department.",
+         "readOnly":false,
+         "required":false,
+         "caseExact":false
+       },
+       {
+         "name":"manager",
+         "type":"complex",
+         "multiValued":false,
+         "description":"The User's manager. A complex type that optionally allows Service Providers to represent organizational hierarchy by referencing the \"id\" attribute of another User.",
+         "readOnly":false,
+         "required":false,
+         "caseExact":false,
+         "subAttributes":[
+           {
+             "name":"managerId",
+             "type":"string",
+             "multiValued":false,
+             "description":"The id of the SCIM resource representing the User's  manager.  REQUIRED." ,
+             "readOnly":false,
+             "required":false,
+             "caseExact":false
+           },
+           {
+             "name":"$ref",
+             "type":"string",
+             "multiValued":false,
+             "description":"The URI of the SCIM resource representing the User's manager.  REQUIRED." ,
+             "readOnly":false,
+             "required":false,
+             "caseExact":false
+           },
+           {
+             "name":"displayName",
+             "type":"string",
+             "multiValued":false,
+             "description":"The displayName of the User's manager.  OPTIONAL and READ-ONLY." ,
+             "readOnly":true,
+             "required":false,
+             "caseExact":false
+           }]
+        }]
+}
\ No newline at end of file

Added: directory/escimo/trunk/common/src/main/resources/group-schema.json
URL: http://svn.apache.org/viewvc/directory/escimo/trunk/common/src/main/resources/group-schema.json?rev=1525387&view=auto
==============================================================================
--- directory/escimo/trunk/common/src/main/resources/group-schema.json (added)
+++ directory/escimo/trunk/common/src/main/resources/group-schema.json Sun Sep 22 16:23:55 2013
@@ -0,0 +1,71 @@
+{
+     "id": "urn:scim:schemas:core:2.0:Group",
+     "name": "Group",
+     "description": "Core Group",
+     "attributes":[
+       {
+         "name":"id",
+         "type":"string",
+         "multiValued":false,
+         "description":"Unique identifier for the SCIM resource as defined by the Service Provider. Each representation of the resource MUST include a non-empty id value. This identifier MUST be unique across the Service Provider's entire set of resources. It MUST be a stable, non-reassignable identifier that does not change when the same resource is returned in subsequent requests. The value of the id attribute is always issued by the Service Provider and MUST never be specified by the Service Consumer. REQUIRED.",
+         "readOnly":true,
+         "required":true,
+         "caseExact":false
+       },
+       {
+         "name":"externalId",
+         "type":"string",
+         "multiValued":false,
+         "description":"An identifier for the Resource as defined by the Service Consumer.",
+         "readOnly":true,
+         "required":true,
+         "caseExact":false
+       },
+       {
+         "name":"displayName",
+         "type":"string",
+         "multiValued":false,
+         "description":"A human readable name for the Group.  REQUIRED.",
+         "readOnly":true,
+         "required":false,
+         "caseExact":false
+       },
+       {
+         "name":"members",
+         "type":"complex",
+         "multiValued":false,
+         "description":"A list of members of the Group.",
+         "readOnly":false,
+         "required":false,
+         "caseExact":false,
+          "subAttributes":[
+            {
+              "name":"value",
+              "type":"string",
+              "multiValued":false,
+              "description":"The identifier of the member of this Group.",
+              "readOnly":false,
+              "required":false,
+              "caseExact":false
+            },
+            {
+              "name":"$ref",
+              "type":"string",
+              "multiValued":false,
+              "description":"The URI of the corresponding to the member resource of this Group.",
+              "readOnly":false,
+              "required":false,
+              "caseExact":false
+            },
+            {
+              "name":"type",
+              "type":"string",
+              "multiValued":false,
+              "description":"A label indicating the type of resource; e.g., 'User' or 'Group'.",
+              "readOnly":false,
+              "required":false,
+              "caseExact":false,
+              "canonicalValues":["User", "Group"]
+            }]
+        }]
+}
\ No newline at end of file

Added: directory/escimo/trunk/common/src/main/resources/user-schema.json
URL: http://svn.apache.org/viewvc/directory/escimo/trunk/common/src/main/resources/user-schema.json?rev=1525387&view=auto
==============================================================================
--- directory/escimo/trunk/common/src/main/resources/user-schema.json (added)
+++ directory/escimo/trunk/common/src/main/resources/user-schema.json Sun Sep 22 16:23:55 2013
@@ -0,0 +1,656 @@
+{
+     "id": "urn:scim:schemas:core:2.0:User",
+     "name": "User",
+     "description": "Core User",
+     "attributes":[
+       {
+         "name":"id",
+         "type":"string",
+         "multiValued":false,
+         "description":"Unique identifier for the SCIM resource as defined by the Service Provider. Each representation of the resource MUST include a non-empty id value. This identifier MUST be unique across the Service Provider's entire set of resources. It MUST be a stable, non-reassignable identifier that does not change when the same resource is returned in subsequent requests. The value of the id attribute is always issued by the Service Provider and MUST never be specified by the Service Consumer. REQUIRED.",
+         "readOnly":true,
+         "required":true,
+         "caseExact":false
+       },
+       {
+         "name":"externalId",
+         "type":"string",
+         "multiValued":false,
+         "description":"An identifier for the Resource as defined by the Service Consumer.",
+         "readOnly":true,
+         "required":true,
+         "caseExact":false
+       },
+       {
+         "name":"userName",
+         "type":"string",
+         "multiValued":false,
+         "description":"Unique identifier for the User typically used by the user to directly authenticate to the service provider. Each User MUST include a non-empty userName value.  This identifier MUST be unique across the Service Consumer's entire set of Users.  REQUIRED",
+         "readOnly":false,
+         "required":true,
+         "caseExact":false
+       },
+       {
+         "name":"name",
+         "type":"complex",
+         "multiValued":false,
+         "description":"The components of the user's real name. Providers MAY return just the full name as a single string in the formatted sub-attribute, or they MAY return just the individual component attributes using the other sub-attributes, or they MAY return both. If both variants are returned, they SHOULD be describing the same name, with the formatted name indicating how the component attributes should be combined.",
+         "readOnly":false,
+         "required":false,
+         "caseExact":false,
+         "subAttributes":[
+           {
+             "name":"formatted",
+             "type":"string",
+             "multiValued":false,
+             "description":"The full name, including all middle names, titles, and suffixes as appropriate, formatted for display (e.g. Ms. Barbara J Jensen, III.)." ,
+             "readOnly":false,
+             "required":false,
+             "caseExact":false
+           },
+           {
+             "name":"familyName",
+             "type":"string",
+             "multiValued":false,
+             "description":"The family name of the User, or Last Name in most Western languages (e.g. Jensen given the full name Ms. Barbara J Jensen, III.).",
+             "readOnly":false,
+             "required":false,
+             "caseExact":false
+           },
+           {
+             "name":"givenName",
+             "type":"string",
+             "multiValued":false,
+             "description":"The given name of the User, or First Name in most Western languages (e.g. Barbara given the full name Ms. Barbara J Jensen, III.).",
+             "readOnly":false,
+             "required":false,
+             "caseExact":false
+           },
+           {
+             "name":"middleName",
+             "type":"string",
+             "multiValued":false,
+             "description":"The middle name(s) of the User (e.g. Robert given the full name Ms. Barbara J Jensen, III.).",
+             "readOnly":false,
+             "required":false,
+             "caseExact":false
+           },
+           {
+             "name":"honorificPrefix",
+             "type":"string",
+             "multiValued":false,
+             "description":"The honorific prefix(es) of the User, or Title in most Western languages (e.g. Ms. given the full name Ms. Barbara J Jensen, III.).",
+             "readOnly":false,
+             "required":false,
+             "caseExact":false
+           },
+           {
+             "name":"honorificSuffix",
+             "type":"string",
+             "multiValued":false,
+             "description":"The honorific suffix(es) of the User, or Suffix in most Western languages (e.g. III. given the full name Ms. Barbara J Jensen, III.).",
+             "readOnly":false,
+             "required":false,
+             "caseExact":false
+           }
+         ]
+        },
+        {
+          "name":"displayName",
+          "type":"string",
+          "multiValued":false,
+          "description":"The name of the User, suitable for display to end-users. The name SHOULD be the full name of the User being described if known",
+          "readOnly":false,
+          "required":false,
+          "caseExact":false
+        },        
+        {
+          "name":"nickName",
+          "type":"string",
+          "multiValued":false,
+          "description":"The casual way to address the user in real life, e.g. \"Bob\" or \"Bobby\" instead of \"Robert\".  This attribute SHOULD NOT be used to represent a User's username (e.g. bjensen or mpepperidge)",
+          "readOnly":false,
+          "required":false,
+          "caseExact":false
+        },
+        {
+          "name":"profileUrl",
+          "type":"string",
+          "multiValued":false,
+          "description":"A fully qualified URL to a page representing the User's online profile",
+          "readOnly":false,
+          "required":false,
+          "caseExact":false
+        },
+        {
+          "name":"title",
+          "type":"string",
+          "multiValued":false,
+          "description":"The user's title, such as \"Vice President.\"",
+          "readOnly":false,
+          "required":false,
+          "caseExact":false
+        },
+        {
+          "name":"userType",
+          "type":"string",
+          "multiValued":false,
+          "description":"Used to identify the organization to user relationship. Typical values used might be \"Contractor\", \"Employee\", \"Intern\", \"Temp\", \"External\", and \"Unknown\" but any value may be used ",
+          "readOnly":false,
+          "required":false,
+          "caseExact":false
+        },
+        {
+          "name":"preferredLanguage",
+          "type":"string",
+          "multiValued":false,
+          "description":"Indicates the User's preferred written or spoken language.  Generally used for selecting a localized User interface. e.g., 'en_US' specifies the language English and country US.",
+          "readOnly":false,
+          "required":false,
+          "caseExact":false
+        },
+        {
+          "name":"locale",
+          "type":"string",
+          "multiValued":false,
+          "description":"Used to indicate the User's default location for purposes of localizing items such as currency, date time format, numerical representations, etc.",
+          "readOnly":false,
+          "required":false,
+          "caseExact":false
+        },
+        {
+          "name":"timezone",
+          "type":"string",
+          "multiValued":false,
+          "description":"The User's time zone in the \"Olson\" timezone database format [19]; e.g.,'America/Los_Angeles'",
+          "readOnly":false,
+          "required":false,
+          "caseExact":false
+        },
+        {
+          "name":"active",
+          "type":"boolean",
+          "multiValued":false,
+          "description":"A Boolean value indicating the User's administrative status.",
+          "readOnly":true,
+          "required":false,
+          "caseExact":false
+        },
+        {
+          "name":"password",
+          "type":"string",
+          "multiValued":false,
+          "description":"The User's clear text password.  This attribute is intended to be used as a means to specify an initial password when creating a new User or to reset an existing User's password.",
+          "readOnly":false,
+          "required":false,
+          "caseExact":false
+        },
+        {
+          "name":"emails",
+          "type":"complex",
+          "multiValued":true,
+          "description":"E-mail addresses for the user. The value SHOULD be canonicalized by the Service Provider, e.g. bjensen@example.com instead of bjensen@EXAMPLE.COM. Canonical Type values of work, home, and other.",
+          "readOnly":false,
+          "required":false,
+          "caseExact":false,
+          "subAttributes":[
+            {
+              "name":"value",
+              "type":"string",
+              "multiValued":false,
+              "description":"E-mail addresses for the user. The value SHOULD be canonicalized by the Service Provider, e.g. bjensen@example.com instead of bjensen@EXAMPLE.COM. Canonical Type values of work, home, and other.",
+              "readOnly":false,
+              "required":false,
+              "caseExact":false
+            },
+            {
+              "name":"display",
+              "type":"string",
+              "multiValued":false,
+              "description":"A human readable name, primarily used for display purposes. READ-ONLY.",
+              "readOnly":true,
+              "required":false,
+              "caseExact":false
+            },
+            {
+              "name":"type",
+              "type":"string",
+              "multiValued":false,
+              "description":"A label indicating the attribute's function; e.g., 'work' or 'home'.",
+              "readOnly":false,
+              "required":false,
+              "caseExact":false,
+              "canonicalValues":["work","home","other"]
+            },
+            {
+              "name":"primary",
+              "type":"boolean",
+              "multiValued":false,
+              "description":"A Boolean value indicating the 'primary' or preferred attribute value for this attribute, e.g. the preferred mailing address or primary e-mail address. The primary attribute value 'true' MUST appear no more than once.",
+              "readOnly":false,
+              "required":false,
+              "caseExact":false
+            }]
+        },
+        {
+          "name":"phoneNumbers",
+          "type":"complex",
+          "multiValued":true,
+          "description":"Phone numbers for the User.  The value SHOULD be canonicalized by the Service Provider according to format in RFC3966 [20] e.g. 'tel:+1-201-555-0123'.  Canonical Type values of work, home, mobile, fax, pager and other.",
+          "readOnly":false,
+          "required":false,
+          "caseExact":false,
+          "subAttributes":[
+            {
+              "name":"value",
+              "type":"string",
+              "multiValued":false,
+              "description":"Phone number of the User",
+              "readOnly":false,
+              "required":false,
+              "caseExact":false
+            },
+            {
+              "name":"display",
+              "type":"string",
+              "multiValued":false,
+              "description":"A human readable name, primarily used for display purposes. READ-ONLY.",
+              "readOnly":true,
+              "required":false,
+              "caseExact":false
+            },
+            {
+              "name":"type",
+              "type":"string",
+              "multiValued":false,
+              "description":"A label indicating the attribute's function; e.g., 'work' or 'home' or 'mobile' etc.",
+              "readOnly":false,
+              "required":false,
+              "caseExact":false,
+              "canonicalValues":["work", "home", "mobile", "fax", "pager", "other"]
+            },
+            {
+              "name":"primary",
+              "type":"boolean",
+              "multiValued":false,
+              "description":"A Boolean value indicating the 'primary' or preferred attribute value for this attribute, e.g. the preferred phone number or primary phone number. The primary attribute value 'true' MUST appear no more than once.",
+              "readOnly":false,
+              "required":false,
+              "caseExact":false
+            }]
+        },
+                {
+          "name":"ims",
+          "type":"complex",
+          "multiValued":true,
+          "description":"Instant messaging addresses for the User.",
+          "readOnly":false,
+          "required":false,
+          "caseExact":false,
+          "subAttributes":[
+            {
+              "name":"value",
+              "type":"string",
+              "multiValued":false,
+              "description":"Instant messaging address for the User.",
+              "readOnly":false,
+              "required":false,
+              "caseExact":false
+            },
+            {
+              "name":"display",
+              "type":"string",
+              "multiValued":false,
+              "description":"A human readable name, primarily used for display purposes. READ-ONLY.",
+              "readOnly":true,
+              "required":false,
+              "caseExact":false
+            },
+            {
+              "name":"type",
+              "type":"string",
+              "multiValued":false,
+              "description":"A label indicating the attribute's function; e.g., 'aim', 'gtalk', 'mobile' etc.",
+              "readOnly":false,
+              "required":false,
+              "caseExact":false,
+              "canonicalValues":["aim", "gtalk", "icq", "xmpp", "msn", "skype", "qq", "yahoo"]
+            },
+            {
+              "name":"primary",
+              "type":"boolean",
+              "multiValued":false,
+              "description":"A Boolean value indicating the 'primary' or preferred attribute value for this attribute, e.g. the preferred messenger or primary messenger. The primary attribute value 'true' MUST appear no more than once.",
+              "readOnly":false,
+              "required":false,
+              "caseExact":false
+            }]
+        },
+        {
+          "name":"photos",
+          "type":"complex",
+          "multiValued":true,
+          "description":"URLs of photos of the User.",
+          "readOnly":false,
+          "required":false,
+          "caseExact":false,
+          "subAttributes":[
+            {
+              "name":"value",
+              "type":"string",
+              "multiValued":false,
+              "description":"URL of a photo of the User.",
+              "readOnly":false,
+              "required":false,
+              "caseExact":false
+            },
+            {
+              "name":"display",
+              "type":"string",
+              "multiValued":false,
+              "description":"A human readable name, primarily used for display purposes. READ-ONLY.",
+              "readOnly":true,
+              "required":false,
+              "caseExact":false
+            },
+            {
+              "name":"type",
+              "type":"string",
+              "multiValued":false,
+              "description":"A label indicating the attribute's function; e.g., 'photo' or 'thumbnail'.",
+              "readOnly":false,
+              "required":false,
+              "caseExact":false,
+              "canonicalValues":["photo", "thumbnail"]
+            },
+            {
+              "name":"primary",
+              "type":"boolean",
+              "multiValued":false,
+              "description":"A Boolean value indicating the 'primary' or preferred attribute value for this attribute, e.g. the preferred photo or thumbnail. The primary attribute value 'true' MUST appear no more than once.",
+              "readOnly":false,
+              "required":false,
+              "caseExact":false
+            }]
+        },
+        {
+          "name":"addresses",
+          "type":"complex",
+          "multiValued":true,
+          "description":"A physical mailing address for this User, as described in (address Element). Canonical Type Values of work, home, and other. The value attribute is a complex type with the following sub-attributes.",
+          "readOnly":false,
+          "required":false,
+          "caseExact":false,
+          "subAttributes":[
+            {
+              "name":"formatted",
+              "type":"string",
+              "multiValued":false,
+              "description":"The full mailing address, formatted for display or use with a mailing label. This attribute MAY contain newlines.",
+              "readOnly":false,
+              "required":false,
+              "caseExact":false
+            },
+            {
+              "name":"streetAddress",
+              "type":"string",
+              "multiValued":false,
+              "description":"The full street address component, which may include house number, street name, PO BOX, and multi-line extended street address information. This attribute MAY contain newlines.",
+              "readOnly":false,
+              "required":false,
+              "caseExact":false
+            },
+            {
+              "name":"locality",
+              "type":"string",
+              "multiValued":false,
+              "description":"The city or locality component.",
+              "readOnly":false,
+              "required":false,
+              "caseExact":false
+            },
+            {
+              "name":"region",
+              "type":"string",
+              "multiValued":false,
+              "description":"The state or region component.",
+              "readOnly":false,
+              "required":false,
+              "caseExact":false
+            },
+            {
+              "name":"postalCode",
+              "type":"string",
+              "multiValued":false,
+              "description":"The zipcode or postal code component.",
+              "readOnly":false,
+              "required":false,
+              "caseExact":false
+            },
+            {
+              "name":"country",
+              "type":"string",
+              "multiValued":false,
+              "description":"The country name component.",
+              "readOnly":false,
+              "required":false,
+              "caseExact":false
+            },
+            {
+              "name":"type",
+              "type":"string",
+              "multiValued":false,
+              "description":"A label indicating the attribute's function; e.g., 'work' or 'home'.",
+              "readOnly":false,
+              "required":false,
+              "caseExact":false,
+              "canonicalValues":["work","home","other"]
+            }
+          ]
+        },
+        {
+          "name":"groups",
+          "type":"complex",
+          "multiValued":true,
+          "description":"A list of groups that the user belongs to, either thorough direct membership, nested groups, or dynamically calculated",
+          "readOnly":true,
+          "required":false,
+          "caseExact":false,
+          "subAttributes":[
+            {
+              "name":"value",
+              "type":"string",
+              "multiValued":false,
+              "description":"The identifier of the User's group.",
+              "readOnly":false,
+              "required":false,
+              "caseExact":false
+            },
+            {
+              "name":"$ref",
+              "type":"string",
+              "multiValued":false,
+              "description":"The URI of the corresponding Group resource to which the user belongs",
+              "readOnly":false,
+              "required":false,
+              "caseExact":false
+            },
+            {
+              "name":"display",
+              "type":"string",
+              "multiValued":false,
+              "description":"A human readable name, primarily used for display purposes. READ-ONLY.",
+              "readOnly":true,
+              "required":false,
+              "caseExact":false
+            },
+            {
+              "name":"type",
+              "type":"string",
+              "multiValued":false,
+              "description":"A label indicating the attribute's function; e.g., 'direct' or 'indirect'.",
+              "readOnly":false,
+              "required":false,
+              "caseExact":false,
+              "canonicalValues":["direct", "indirect"]
+            },
+            {
+              "name":"primary",
+              "type":"boolean",
+              "multiValued":false,
+              "description":"A Boolean value indicating the 'primary' or preferred attribute value for this attribute. The primary attribute value 'true' MUST appear no more than once.",
+              "readOnly":false,
+              "required":false,
+              "caseExact":false
+            }]
+        },
+        {
+          "name":"entitlements",
+          "type":"complex",
+          "multiValued":true,
+          "description":"A list of entitlements for the User that represent a thing the User has.",
+          "readOnly":false,
+          "required":false,
+          "caseExact":false,
+          "subAttributes":[
+            {
+              "name":"value",
+              "type":"string",
+              "multiValued":false,
+              "description":"The value of an entitlement.",
+              "readOnly":false,
+              "required":false,
+              "caseExact":false
+            },
+            {
+              "name":"display",
+              "type":"string",
+              "multiValued":false,
+              "description":"A human readable name, primarily used for display purposes. READ-ONLY.",
+              "readOnly":true,
+              "required":false,
+              "caseExact":false
+            },
+            {
+              "name":"type",
+              "type":"string",
+              "multiValued":false,
+              "description":"A label indicating the attribute's function.",
+              "readOnly":false,
+              "required":false,
+              "caseExact":false,
+              "canonicalValues":[]
+            },
+            {
+              "name":"primary",
+              "type":"boolean",
+              "multiValued":false,
+              "description":"A Boolean value indicating the 'primary' or preferred attribute value for this attribute. The primary attribute value 'true' MUST appear no more than once.",
+              "readOnly":false,
+              "required":false,
+              "caseExact":false
+            }]
+        },
+        {
+          "name":"roles",
+          "type":"complex",
+          "multiValued":true,
+          "description":"A list of roles for the User that collectively represent who the User is; e.g., 'Student', 'Faculty'.",
+          "readOnly":false,
+          "required":false,
+          "caseExact":false,
+          "subAttributes":[
+            {
+              "name":"value",
+              "type":"string",
+              "multiValued":false,
+              "description":"The value of a role.",
+              "readOnly":false,
+              "required":false,
+              "caseExact":false
+            },
+            {
+              "name":"display",
+              "type":"string",
+              "multiValued":false,
+              "description":"A human readable name, primarily used for display purposes. READ-ONLY.",
+              "readOnly":true,
+              "required":false,
+              "caseExact":false
+            },
+            {
+              "name":"type",
+              "type":"string",
+              "multiValued":false,
+              "description":"A label indicating the attribute's function.",
+              "readOnly":false,
+              "required":false,
+              "caseExact":false,
+              "canonicalValues":[]
+            },
+            {
+              "name":"primary",
+              "type":"boolean",
+              "multiValued":false,
+              "description":"A Boolean value indicating the 'primary' or preferred attribute value for this attribute. The primary attribute value 'true' MUST appear no more than once.",
+              "readOnly":false,
+              "required":false,
+              "caseExact":false
+            }]
+        },
+        {
+          "name":"x509Certificates",
+          "type":"complex",
+          "multiValued":true,
+          "description":"A list of certificates issued to the User.",
+          "readOnly":false,
+          "required":false,
+          "caseExact":false,
+          "subAttributes":[
+            {
+              "name":"value",
+              "type":"string",
+              "multiValued":false,
+              "description":"The value of a X509 certificate.",
+              "readOnly":false,
+              "required":false,
+              "caseExact":false
+            },
+            {
+              "name":"display",
+              "type":"string",
+              "multiValued":false,
+              "description":"A human readable name, primarily used for display purposes. READ-ONLY.",
+              "readOnly":true,
+              "required":false,
+              "caseExact":false
+            },
+            {
+              "name":"type",
+              "type":"string",
+              "multiValued":false,
+              "description":"A label indicating the attribute's function.",
+              "readOnly":false,
+              "required":false,
+              "caseExact":false,
+              "canonicalValues":[]
+            },
+            {
+              "name":"primary",
+              "type":"boolean",
+              "multiValued":false,
+              "description":"A Boolean value indicating the 'primary' or preferred attribute value for this attribute. The primary attribute value 'true' MUST appear no more than once.",
+              "readOnly":false,
+              "required":false,
+              "caseExact":false
+            }]
+        }
+      ],
+     "meta": {
+       "resourceType": "Schema",
+       "created": "2010-01-23T04:56:22Z",
+       "lastModified": "2011-05-13T04:42:34Z",
+       "version": "W\/\"3694e05e9dff596\"",
+       "location": "https://example.com/v1/Schemas/urn:scim:schemas:core:2.0:User"
+     }
+   }
\ No newline at end of file