Expand my Community achievements bar.

Help shape the future of AI assistance by participating in this quick card sorting activity. Your input will help create a more effective system that better serves your needs and those of your colleagues.
SOLVED

XDM Modeling best practices

Avatar

Level 2

Hi Team,

 

I am looking for best practices tom construct the XDM for Individual profile with many custom classes which will have additional details about the individual profile. I am trying to understand which approach will be better and on which aspect:

  1. Defining custom classes and refer those classes from the Individual profile as shown in Define a Relationship Between Two Schemas Using the Schema Editor | Adobe Experience Platform
  2. Embed the custom classes as field groups (as we have homeAddress under Person) within the individual profile 

What aspects should we consider to decide when to choose which option? For example: If I go with a model following Option 1, then can I create a segment rule based on the attributes which belongs to the reference entity? Is there any restriction(s) on these 2 options? 

 

Thanks in advance.

1 Accepted Solution

Avatar

Correct answer by
Employee Advisor

@bitunsen , in general, Platform schemas are highly denormalized. There are some limitations with the use of lookups aka schema relationships aka dimension entities which relate to your Option 1. These are documented here: https://experienceleague.adobe.com/docs/experience-platform/profile/guardrails.html

 

Would your custom classes be populated with data from multiple sources? One approach that some people take is to create a separate schema for each data source.

 

You might be interested in this course we have on Experience League: Model Your Customer Experience Data with XDM

View solution in original post

2 Replies

Avatar

Level 5

@bitunsen There is no clear recommendation in a documentation by Adobe on the Field Groups (mixins) to use when modelling schemas. However in the Comprehensive Tech Tutorial training material, it is called out to use ootb field groups whenever possible. These field groups will also enable you to exploit some ootb automations that Adobe is planning in the future (ex: Industry specific CJA dashboards etc). That said, there would not be any major show stoppers in using custom fields/groups when the situation demands.

Avatar

Correct answer by
Employee Advisor

@bitunsen , in general, Platform schemas are highly denormalized. There are some limitations with the use of lookups aka schema relationships aka dimension entities which relate to your Option 1. These are documented here: https://experienceleague.adobe.com/docs/experience-platform/profile/guardrails.html

 

Would your custom classes be populated with data from multiple sources? One approach that some people take is to create a separate schema for each data source.

 

You might be interested in this course we have on Experience League: Model Your Customer Experience Data with XDM