I have some piece of information which need to be attached to/present in both Profile and its corresponding transactional events.
Shall I create a custom Field Group or create a custom XDM Schema and a corresponding custom XDM Class?
I dont want to use a mapping table and establish a relationship between third entity (which holds common info) and other two entities (Profile and Event)
Any best practice from Adobe to cater to above use case and comparison, use cases for custom Class vs custom Field Group?
Thanks!
Solved! Go to Solution.
Topics help categorize Community content and increase your ability to discover relevant content.
A basic difference between FG and Data type, is that
FG is a shared resource between schemas, which means it would have the same XDM path for all the schemas, thus easing things for Unified Profile and CJA.
where as, Data Type is more like a custom data structure, to enable reusability and reduce the efforts of schema creation. As per my understanding, this is the basic principle to use them, as per our use case.
In such cases, where we need to have the same info in both Profile and ExpEvent schemas, it is always advised to have a common Custom FG. Since, creating 2 custom XDM Class and Schemas(one each) is not viable for each of our use case.
Note: Once the custom FG is created, make sure to patch it to update the "meta:intendedToExtend" tag with both Profile and Exp Event class.
Custom Class & Schema are more relevant, when we would need a lookup entity, which doesn't comply with existing XDM classes. For ex:- category mapping tables, master data tables etc.
I can achieve the same using Data type as well. Then whats the recommended approach by Adobe and why?
A basic difference between FG and Data type, is that
FG is a shared resource between schemas, which means it would have the same XDM path for all the schemas, thus easing things for Unified Profile and CJA.
where as, Data Type is more like a custom data structure, to enable reusability and reduce the efforts of schema creation. As per my understanding, this is the basic principle to use them, as per our use case.