Expand my Community achievements bar.

SOLVED

listVar mapping from Edge to Analytics

Avatar

Level 4

Hello all,

 

It seems that listVars are not automatically mapped to Analytics when ingested from the Adobe Edge.

 

_experience.analytics.customDimensions.lists.list1.list = [ { value: 'a' }, { value: 'b' } ... ]

 

This validates just fine in the dataset, but "list1" in Analytics doesn't get any love. Is there a plan to automatically map list variables?

 

In lieu of that, is my only option to send the value as a single comma (or whatever delimiter is configured) separated string (encoded of course) as non-XDM data and map it manually in the Processing Rules? For example:

data: { list1: 'abc,def, ghi' }, then map "a.d.list1" in the processing rules to my real listVar1?

 

Or am I missing a secret hiding place in the standard XDM _experience namespace that can do this for me easy peasy?

I did see something odd in the documentation that made me wonder...

 

https://experienceleague.adobe.com/docs/experience-platform/sources/connectors/adobe-applications/ma... 

 

Scroll down to "mvvar1_instances" and note the odd XDM notation of ".list.items". Relevant to my interests?

 

Thank you in advance

 

1 Accepted Solution

Avatar

Correct answer by
Level 4

Actually, I feel kind of silly because I just thought of a better solution... holiday brain I guess.

I could just cram the whole comma separated list of values into a single array element, as in:

_experience.analytics.customDimensions.lists.list1.list = [ { value: 'a,b,c,d,e' }]

And then map "a.x._experience.analytics.customdimensions.lists.list1.list.0.value" in Processing Rules to my listVar.

 

I don't suppose there's a way to wildcard all entries, like "a.x._experience.analytics.customdimensions.lists.list1.list.*.value". I guess there's no way to specify a delimiter for the individual values. Otherwise I'd need to exhaustively concatenate a ton of context variables, with no guarantee that I'd cover all circumstances

 

View solution in original post

2 Replies

Avatar

Correct answer by
Level 4

Actually, I feel kind of silly because I just thought of a better solution... holiday brain I guess.

I could just cram the whole comma separated list of values into a single array element, as in:

_experience.analytics.customDimensions.lists.list1.list = [ { value: 'a,b,c,d,e' }]

And then map "a.x._experience.analytics.customdimensions.lists.list1.list.0.value" in Processing Rules to my listVar.

 

I don't suppose there's a way to wildcard all entries, like "a.x._experience.analytics.customdimensions.lists.list1.list.*.value". I guess there's no way to specify a delimiter for the individual values. Otherwise I'd need to exhaustively concatenate a ton of context variables, with no guarantee that I'd cover all circumstances

 

Avatar

Community Advisor and Adobe Champion

@jgrubbs I encountered the same problem and just noted that Adobe had fixed their automated XDM mapping to handle list variables just a couple weeks ago, event the documentation changed.

_experience.analytics.customDimensions.
lists.list1.list[].value -
_experience.analytics.customDimensions.
lists.list3.list[].value
Concatenates all value strings in each respective list[] array to its respective List variable using comma delimiters.

 

I had tested that by sending in

Screenshot 2022-08-26 at 11.33.37 AM.png

 and able to see the mapped list variable in Griffon

Screenshot 2022-08-26 at 11.35.02 AM.png