Define a relationship between two schemas using the Schema Editor

様々なチャネルでの顧客とブランドとの関係を理解する能力は、Adobe Experience Platform の重要な部分です。Defining these relationships within the structure of your Experience Data Model (XDM) schemas allows you to gain complex insights into your customer data.

スキーマの関係は、和集合スキーマを使用して推論できますが、 Real-time Customer Profileこれは同じクラスを共有するスキーマにのみ適用されます。 異なるクラスに属する2つのスキーマ間の関係を確立するには、目的のスキーマのIDを参照するソーススキーマに、専用の関係フィールドを追加する必要があります。

This document provides a tutorial for defining a relationship between two schemas using the Schema Editor in the Experience Platform user interface. API を使用してスキーマ関係を定義する手順については、スキーマレジストリ API を使用した関係の定義についてのチュートリアルを参照してください。


This tutorial requires a working understanding of XDM System and the Schema Editor in the Experience Platform UI. このチュートリアルを始める前に、次のドキュメントを確認してください。


この関係で定義される 2 つのスキーマが既に作成されていると想定されます。For demonstration purposes, this tutorial creates a relationship between members of an organization's loyalty program (defined in a "Loyalty Members" schema) and their favorite hotel (defined in a "Hotels" schema).


関係を確立するには、両方のスキーマがプライマリIDを定義し、有効にする必要があり Real-time Customer Profileます。 スキーマをそれに応じて設定する方法のガイダンスが必要な場合は、「プロファイルの作成」チュートリアルの「スキーマをスキーマで使用できるようにする」のセクションを参照して ください。

スキーマの関係は、 ソーススキーマ内の、 宛先スキーマ内の別のフィールドを参照する専用のフィールドで表されます 。 In the steps that follow, "Loyalty Members" will be the source schema, while "Hotels" will act as the destination schema.


Loyalty Members schema

The source schema "Loyalty Members" is based on the XDM Individual Profile class, and is the schema that was constructed in the tutorial for creating a schema in the UI. It includes a loyalty object under its _tenantId namespace, which includes several loyalty-specific fields. One of these fields, loyaltyId, serves as the primary identity for the schema under the Email namespace. As seen under Schema Properties, this schema has been enabled for use in Real-time Customer Profile.

Hotels schema

宛先スキーマ「Hotels」は、カスタムの「Hotels」クラスに基づいており、ホテルを説明するフィールドが含まれています。 The hotelId field serves as the primary identity for the schema under a custom hotelId namespace. スキーマと同様に、 Loyalty Members このスキーマもに対して有効になってい Real-time Customer Profileます。

関係の mixin の作成


この手順は、ソーススキーマに、ターゲットスキーマへの参照として使用する専用の文字列型フィールドがない場合にのみ必要です。 このフィールドがソーススキーマで既に定義されている場合は、次の関係フィールドを定義する手順に進んでください。

2 つのスキーマ間の関係を定義するには、ソーススキーマに、ターゲットスキーマへの参照として使用する専用のフィールドが必要です。新しい mixin を作成して、このフィールドをソーススキーマに追加することができます。

Start by selecting Add in the Mixins section.

Mixin を追加ダイアログが表示されます。From here, select Create new mixin. 表示されるテキストフィールドに、新しい mixin の表示名と説明を入力します。Select Add mixin when finished.

The canvas reappears with "Favorite Hotel" appearing in the Mixins section. Select the mixin name, then select Add field next to the root-level Loyalty Members field.

A new field appears in the canvas under the _tenantId namespace. Under Field properties, provide a field name and display name for the field, and set its type to "String".

When finished, select Apply.

The updated favoriteHotel field appears in the canvas. Select Save to finalize your changes to the schema.



Select the favoriteHotel field in the canvas, then scroll down under Field properties until the Relationship checkbox appears. このチェックボックスを選択すると、関係フィールドを設定するために必要なパラメーターが表示されます。

Select the dropdown for Reference schema and select the destination schema for the relationship ("Hotels" in this example). If the destination schema is enabled for Profile, the Reference identity namespace field is automatically set to the namespace of the destination schema's primary identity. スキーマにプライマリ ID が定義されていない場合は、使用する名前空間をドロップダウンメニューから手動で選択する必要があります。Select Apply when finished.

The favoriteHotel field is now highlighted as a relationship in the canvas, displaying the name and reference identity namespace of the destination schema. Select Save to save your changes and complete the workflow.


By following this tutorial, you have successfully created a one-to-one relationship between two schemas using the Schema Editor. API を使用して関係を定義する手順については、スキーマレジストリ API を使用した関係の定義についてのチュートリアルを参照してください。