forked from adobe/xdm
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathprofile-constraints.schema.json
More file actions
72 lines (72 loc) · 3.99 KB
/
profile-constraints.schema.json
File metadata and controls
72 lines (72 loc) · 3.99 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
{
"meta:license": [
"Copyright 2021 Adobe Systems Incorporated. All rights reserved.",
"This work is licensed under a Creative Commons Attribution 4.0 International (CC BY 4.0) license",
"you may not use this file except in compliance with the License. You may obtain a copy",
"of the License at https://creativecommons.org/licenses/by/4.0/"
],
"$schema": "http://json-schema.org/draft-06/schema#",
"$id": "https://ns.adobe.com/experience/decisioning/profile-constraints",
"meta:intendedToExtend": [
"https://ns.adobe.com/experience/decisioning/option"
],
"meta:abstract": true,
"meta:extensible": true,
"type": "object",
"title": "Decision Option Profile Constraints",
"description": "Profile constraints define the policies that ensure a particular decision option qualifies, is relevant and is suitable for a particular profile. Such policy rules determine the eligibility, applicability and suitability of the option. Usually the option is tested against a user profile and the events that were observed for that profile, but the qualification rule can consider any context data as long as it can be described by an XDM schema.",
"definitions": {
"profile-constraints": {
"type": "object",
"properties": {
"https://ns.adobe.com/experience/decisioning/profileConstraints": {
"$ref": "https://ns.adobe.com/experience/decisioning/profile-constraint-details",
"title": "Profile Constraint Details",
"description": "The profile constraints decide if an option is eligible for this profile identity, at this moment, in this context. If the profile constraint does not need to consider values of each of the option, i.e. it is invariant of the options from the option selection, the profile constraint that evaluates to 'false' cancels out the entire option selection. On the other hand, a profile constraint rule that takes an option as a parameter is evaluated for each qualifiying option of the option selection.",
"meta:titleId": "profile-constraints##https://ns.adobe.com/experience/decisioning/profileConstraints##title##4951",
"meta:descriptionId": "profile-constraints##https://ns.adobe.com/experience/decisioning/profileConstraints##description##61921"
}
}
}
},
"allOf": [
{
"$ref": "#/definitions/profile-constraints"
}
],
"meta:status": "stable",
"meta:titleId": "profile-constraints##title##63211",
"meta:descriptionId": "profile-constraints##description##57591",
"examples": [
{
"https://ns.adobe.com/experience/decisioning/profileConstraints": {
"https://ns.adobe.com/experience/decisioning/profileConstraintType": "eligibilityRule",
"https://ns.adobe.com/experience/decisioning/eligibilityRule": "xcore:eligibility-rule:e5244c22eff29e8"
}
},
{
"https://ns.adobe.com/experience/decisioning/profileConstraints": {
"https://ns.adobe.com/experience/decisioning/profileConstraintType": "anySegments",
"https://ns.adobe.com/experience/decisioning/segmentIdentities": [
{
"@id": "https://data.adobe.io/entities/segmentIdentity/id123",
"xdm:namespace": {
"xdm:code": "AA12345"
}
},
{
"@id": "https://data.adobe.io/entities/segmentIdentity/id456",
"xdm:namespace": {
"xdm:code": "AA12345"
}
}
]
}
},
{
"https://ns.adobe.com/experience/decisioning/profileConstraints": {
"https://ns.adobe.com/experience/decisioning/profileConstraintType": "none"
}
}
]
}