Configure relationships between schemas
This video shows how to configure a relationship between two schemas in Adobe Experience Platform. Relationships allow you to use one dataset as a lookup table for another. For detailed product documentation, see Define a relationship between two schemas using the Schema Editor and Define a relationship between two schemas using the Schema Registry API
Transcript
In this video, I’ll show you how to configure a relationship between two schemas in Adobe Experience Platform. A schema relationship allows you to use one dataset as a lookup table for another. If you use Adobe Analytics, it’s like a SAINT classification. For example, in the data model for our sample brand Luma, we have schemas capturing in-store purchases and web purchases. We also have a schema for Luma’s product catalog. We can capture just the product SKU in the schemas capturing purchases and use that to look up more complete product details from the product catalog. This makes it easy for marketers to do something like create a segment for all customers who bought a hat without having to explicitly list out all hat SKUs or capture every single product detail and transactional systems. In order to define a relationship, there needs to be a dedicated field in the source schema. In this case, it would be the product SKU field in both the in-store purchases and web events schemas. And this field needs to reference another field in the destination schema, which is going to be the product SKU field in the product catalog schema. Also, the source and destination schemas must be enabled for Real-Time Customer profile, and the destination schema must have that common field defined as its primary identity. So here I have my product catalog schema enabled for a profile with the product SKU as the primary identity. Now, in my store purchase schema, I select the Product SKU field there, and in the field properties, I check the Relationship check box. I enter the product catalog schema as the reference schema and select the Identity namespace for the product. In this case, it’s a custom non-people identifier I’ve defined called lumaProductSKU. I hit Apply, and now I can see the relationship in the schema editor. I can do the same in my web events schema, and I’ve defined this schema relationship for Luma. In Luma’s data model, I would want to do the same for the store ID and promotion ID.
There are important guardrails for using schema relationships, and I encourage you to read about them in the documentation.
So that’s how to create a relationship between two schemas in the interface. You can, of course, do the same thing with the API. Good luck using schema relationships in your data model. -
recommendation-more-help
9051d869-e959-46c8-8c52-f0759cee3763