forked from hbacila/xdm
-
Notifications
You must be signed in to change notification settings - Fork 0
/
channel.schema.json
135 lines (135 loc) · 5.88 KB
/
channel.schema.json
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
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
{
"meta:license": [
"Copyright 2017 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/"
],
"$id": "https://ns.adobe.com/xdm/channels/channel",
"$schema": "http://json-schema.org/draft-06/schema#",
"title": "Experience Channel",
"meta:extensible": true,
"meta:abstract": true,
"type": "object",
"description": "There are multiple experience channels, each with different constraints on how content is delivered and how customer interaction can be observed and data collected. Within a channel, experiences can be delivered to specific locations. The locations and types of locations that exist in a channel differ from channel to channel.",
"definitions": {
"channel": {
"properties": {
"@id": {
"type": "string",
"format": "uri-reference",
"description": "The ID uniquely identifies the channel. Each specific experience channel defines a constant `@id`."
},
"xdm:typeAtSource": {
"type": "string",
"description": "Customer defined custom channel name"
},
"xdm:mode": {
"type": "string",
"enum": [
"push",
"pull",
"bidirectional"
],
"description": "How experiences are delivered in this channel.",
"meta:enum": {
"push": "The publisher of an experience can initiate an experience by sending a message into the channel. Most `push` channels involve some form of subscription or opt-in.",
"pull": "The consumer can initiate an experience by requesting a location in the channel. Most `pull` channels give publishers some control how the experience is then delivered.",
"bidirectional": "Both `push` and `pull` interaction modes are supported by the channel."
}
},
"@type": {
"type": "string",
"format": "uri",
"description": "The `@type` property is used to provide a rough classification of channels with similar properties.",
"meta:enum": {
"https://ns.adobe.com/xdm/channel-types/web": "The world wide web, including mobile web",
"https://ns.adobe.com/xdm/channel-types/social": "Social media platforms",
"https://ns.adobe.com/xdm/channel-types/mobile": "Mobile apps",
"https://ns.adobe.com/xdm/channel-types/messaging": "Instant messaging",
"https://ns.adobe.com/xdm/channel-types/email": "Email",
"https://ns.adobe.com/xdm/channel-types/offline": "Non-digital experience channels",
"https://ns.adobe.com/xdm/channel-types/display":"Display",
"https://ns.adobe.com/xdm/channel-types/search":"Search",
"https://ns.adobe.com/xdm/channel-types/social_display":"Social Display",
"https://ns.adobe.com/xdm/channel-types/video":"Video",
"https://ns.adobe.com/xdm/channel-types/affiliate":"Affiliate",
"https://ns.adobe.com/xdm/channel-types/affinity":"Affinity",
"https://ns.adobe.com/xdm/channel-types/apps":"Applications",
"https://ns.adobe.com/xdm/channel-types/preload":"Preload",
"https://ns.adobe.com/xdm/channel-types/direct":"Direct",
"https://ns.adobe.com/xdm/channel-types/external":"External",
"https://ns.adobe.com/xdm/channel-types/mail":"Mail",
"https://ns.adobe.com/xdm/channel-types/instore":"Instore"
}
},
"xdm:mediaType": {
"type": "string",
"description": "Describes whether the media type is paid,owned or earned.",
"meta:enum": {
"paid": "Paid",
"owned": "Owned",
"earned": "Earned"
}
},
"xdm:mediaAction": {
"type":"string",
"description": "The `mediaAction` property is used to provide a type of experiance event media action .",
"meta:enum": {
"opens":"Opens",
"sends":"Sends",
"clicks":"Clicks",
"impressions":"Impressions",
"bounces":"Bounces",
"mirrorpages":"Mirrorpages",
"nonDeliverables":"NonDeliverables",
"notSent":"NotSent",
"offerOpens":"OfferOpens",
"unSubscriptions":"UnSubscriptions",
"userComplaints":"UserComplaints",
"subscriptions":"Subscriptions"
}
},
"xdm:contentTypes": {
"type": "array",
"items": {
"type": "string",
"format": "uri",
"description": "The `@type` of an XDM-defined content type that is supported by this channel."
},
"description": "The content types that this channel can deliver."
},
"xdm:metricTypes": {
"type": "array",
"items": {
"type": "string",
"format": "uri",
"description": "The `@type` of an XDM-defined metric that is supported by this channel."
},
"description": "The metrics that can be collected in this channel."
},
"xdm:locationTypes": {
"type": "array",
"items": {
"type": "string",
"format": "uri",
"description": "The `@type` of an XDM-defined location (virtual place) that this channel can contain."
},
"description": "The types of locations (virtual places) that this channel consists of and can deliver content to."
}
}
}
},
"allOf": [
{
"$ref": "https://ns.adobe.com/xdm/common/extensible#/definitions/@context"
},
{
"$ref": "#/definitions/channel"
}
],
"required": [
"@id"
],
"meta:status": "experimental"
}