adobe / adobe/xdm

CORE-64789 Addition of consentPolicies structure to Profile schema

Open
#1,344 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
JavaScript
Stars
266
Forks
380
Avg merge
5d 8h
Merged PRs (30d)
9

Description

The schemas that are impacted by this issue is the profile-union schema.

This will be used as a part of consent initiative implementation in UPS. Once "consent" of the data ingested into the Profile store has been analyzed and evaluated, UPS adds this structure to the merged profile after segmentation and lookup. The downstream services will be able to use the filtered fields from here to take appropriate action.

**More on the Consent initiative:** https://wiki.corp.adobe.com/display/DMSArchitecture/Consent+Policy+Filter+Logic

**Consent in UPS:** https://wiki.corp.adobe.com/pages/viewpage.action?spaceKey=DMSArchitecture&title=Consent+Enforcement+Implementation+in+UPS

**More about the "consentPolicies" schema:** https://wiki.corp.adobe.com/display/DMSArchitecture/Consent+Enforcement+Implementation+Details#ConsentEnforcementImplementationDetails-Additionof%22consentPolicies%22toXDM

Example of consent Policies:

` "consentPolicies": {
"consentPolicy1": {},
"consentPolicy3": {
"email": [
{"id": "abc@email.com"},
{"id":"john.doe@domain.com"},
{"id":"personal.email@email.com"}
]
}
}`

Protocols followed:

1. ConsentPolicies is map type field where the key is "consent policy id/name" and value is identityMap kind of data type.
2. As consent can be identity specific, keep the value empty if a consent policy evaluates to true for all identities.
3. Don't include consent policies in the profile record that evaluate to false (for all identities).

Contributor guide

Open the contributing guide

Research direction

Start by locating the profile-union schema in the repository and reviewing its existing map and identityMap structures. Use the consentPolicies example and listed protocols to determine the schema shape and inclusion rules; the work is done when the schema represents policy keys and identity-specific values as specified.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
data
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.