フィールド参照

フィールド参照は、イベントまたはフィールドグループに添付できます。 意味のある情報は、フィールドの名前とそのパスだけです。

フィールドに特殊文字を使用する場合は、二重引用符または単純引用符を使用する必要があります。 引用符が必要な場合は次のようになります。

  • フィールドは数字で始まる
  • フィールドは「 — 」文字で始まります
  • フィールドには次の値以外の値が含まれます。 a-z, A-Z, 0-9, _ , -

例えば、 3 時間: #{OpenWeather.weatherData.rain.'3h'} > 0

// event field
@{<event name>.<XDM path to the field>}
@{LobbyBeacon.endUserIDs._experience.emailid.id}

// field group
#{<data source name>.<field group name>.<path to the field>}
#{ExperiencePlatform.ProfileFieldGroup.profile.personalEmail.address}

式では、イベントフィールドは「@」で参照され、データソースフィールドは「#」で参照されます。

構文の色は、イベントフィールド(緑)とフィールドグループ(青)を視覚的に区別するために使用します。

フィールド参照のデフォルト値

デフォルト値は、フィールド名に関連付けることができます。 構文は以下のとおりです。

// event field
@{<event name>.<XDM path to the field>, defaultValue: <default value expression>}
@{LobbyBeacon.endUserIDs._experience.emailid.id, defaultValue: "example@adobe.com"}
// field group
#{<data source name>.<field group name>.<path to the field>, defaultValue: <default value expression>}
#{ExperiencePlatform.ProfileFieldGroup.profile.personalEmail.address, defaultValue: "example@adobe.com"}
メモ

フィールドのタイプとデフォルト値は同じである必要があります。 例えば、@{LobbyBeacon.endUserIDs などです。_experience.emailid.id, defaultValue :2} は無効になります。デフォルト値は整数ですが、期待値は文字列である必要があります。

例:

// for an event 'OrderEvent' having the following payload:
{
    "orderId": "12345"
}
 
expression example:
- @{OrderEvent.orderId}                                    -> "12345"
- @{OrderEvent.producdId, defaultValue : "not specified" } -> "not specified" // default value, productId is not a field present in the payload
- @{OrderEvent.productId}                                  -> null
 
 
// for an entity 'Profile' on datasource 'ACP' having fields person/lastName, with fetched data such as:
{
    "person": {
        "lastName":"Snow"
    },
    "emails": [
        { "email":"john.snow@winterfell.westeros" },
        { "email":"snow@thewall.westeros" }
    ]
}
 
expression examples:
- #{ACP.Profile.person.lastName}                 -> "Snow"
- #{ACP.Profile.emails.at(1).email}              -> "snow@thewall.westeros"
- #{ACP.Profile.person.age, defaultValue : -1}   -> -1 // default value, age is not a field present in the payload
- #{ACP.Profile.person.age}                      -> null

コレクション内のフィールドへの参照

コレクション内で定義された要素は、特定の関数を使用して参照されます all, first および last. 詳しくは、このページを参照してください。

例:

@{LobbyBeacon._experience.campaign.message.profile.pushNotificationTokens.all()

マップで定義されたフィールドへの参照

entry 関数

マップ内の要素を取得するには、特定のキーでエントリ関数を使用します。 例えば、選択した名前空間に従ってイベントのキーを定義する際に使用されます。 名前空間の選択を参照してください。 詳しくは、 このページ.

@{MyEvent.identityMap.entry('Email').first().id}

この式では、イベントの「IdentityMap」フィールドの「Email」キーのエントリを取得しています。 「Email」エントリはコレクションで、「first()」を使用して最初の要素で「id」を取得します。 詳しくは、 このページ.

firstEntryKey 関数

マップの最初のエントリキーを取得するには、 firstEntryKey 関数に置き換えます。

この例では、特定のリストの購読者の最初の E メールアドレスを取得する方法を示します。

#{ExperiencePlatform.Subscriptions.profile.consents.marketing.email.subscriptions.entry('daily-email').subscribers.firstEntryKey()}

この例では、購読リストの名前はです。 daily-email. 電子メールアドレスは、 subscribers map:購読リストマップにリンクされています。

keys 関数

マップのすべてのキーに対して取得するには、 keys 関数に置き換えます。

この例では、特定のプロファイルについて、特定のリストの購読者に関連付けられているすべての電子メールアドレスを取得する方法を示します。

#{ExperiencePlatform.Subscriptions.profile.consents.marketing.email.subscriptions.entry('daily-mail').subscribers.keys()

データソースのパラメーター値(データソースの動的値)

パラメーターの呼び出しが必要な外部データソースからフィールドを選択すると、右側に新しいタブが表示され、このパラメーターを指定できます。 このページを参照してください。

より複雑な使用例では、データソースのパラメーターをメイン式に含める場合、キーワードを使用してその値を定義できます params. パラメーターは、別のパラメーターも含む別のデータソースからの場合でも、任意の有効な式にすることができます。

メモ

式にパラメータ値を定義すると、右側のタブが消えます。

次の構文を使用します。

#{<datasource>.<field group>.fieldName, params: {<params-1-name>: <params-1-value>, <params-2-name>: <params-2-value>}}
  • <params-1-name>:データソースの最初のパラメーターの名前です。
  • <params-1-value>:最初のパラメーターの値。 任意の有効な式を指定できます。

例:

#{Weather.main.temperature, params: {localisation: @{Profile.address.localisation}}}
#{Weather.main.temperature, params: {localisation: #{GPSLocalisation.main.coordinates, params: {city: @{Profile.address.city}}}}}

このページ