Fonctions de mappage de la préparation des données
Les fonctions de préparation de données peuvent être utilisées pour calculer des valeurs en fonction de ce qui est saisi dans les champs sources.
Champs
Un nom de champ peut être n’importe quel identifiant légal, une séquence de lettres et de chiffres Unicode d’une longueur illimitée commençant par une lettre, le signe dollar ($
) ou le caractère de soulignement (_
). Les noms de variables respectent également la casse.
Si un nom de champ ne suit pas cette convention, il doit être encapsulé avec des ${}
. Ainsi, par exemple, si le nom du champ est « Prénom » ou « Prénom », le nom doit être encapsulé comme ${First Name}
ou ${First\.Name}
, respectivement.
.
), vous devez utiliser une barre oblique inverse (\
) pour échapper les caractères spéciaux. Pour plus d’informations, consultez le guide sur l’échappement des caractères spéciaux.Si le nom d’un champ est l’un des mots-clés réservés suivants, il doit être encapsulé avec ${}{}
:
new, mod, or, break, var, lt, for, false, while, eq, gt, div, not, null, continue, else, and, ne, true, le, if, ge, return, _errors, do, function, empty, size
En outre, les mots-clés réservés incluent également l’une des fonctions de mappeur répertoriées sur cette page.
Les données des sous-champs sont accessibles à l’aide de la notation par points. Par exemple, s’il existait un objet name
, pour accéder au champ firstName
, utilisez name.firstName
.
Liste des fonctions
Les tableaux suivants répertorient toutes les fonctions de mappage prises en charge, y compris des exemples d’expressions et les sorties qui en résultent.
Fonctions de chaîne string
- STRING : les chaînes qui seront concaténées.
"Hi, there!"
\
: +, ?, ^, |, ., [, (, {, ), *, $, \
Si vous incluez plusieurs caractères comme délimiteur, le délimiteur sera traité comme un délimiteur à plusieurs caractères.- STRING : obligatoire la chaîne qui doit être fractionnée.
- REGEX : facultatif expression régulière qui peut être utilisée pour fractionner la chaîne.
["Hi,", "there"]
- INPUT : obligatoire chaîne faisant l’objet de la recherche.
- SOUS-CHAÎNE : obligatoire sous-chaîne recherchée dans la chaîne.
- POSITION_DÉBUT : facultatif emplacement où commencer à rechercher des éléments dans la chaîne.
- OCCURRENCE : facultatif nième occurrence à rechercher à partir de la position de départ. Par défaut, il s’agit de 1.
- INPUT : obligatoire chaîne d’entrée.
- TO_FIND : Obligatoire chaîne à rechercher dans l’entrée.
- TO_REPLACE : Obligatoire chaîne qui remplacera la valeur dans « TO_FIND ».
- INPUT : obligatoire chaîne d’entrée.
- START_INDEX : obligatoire index de la chaîne d’entrée sur laquelle la sous-chaîne commence.
- LONGUEUR : Obligatoire longueur de la sous-chaîne.
lcase
- INPUT : obligatoire chaîne qui sera convertie en minuscules.
lcase("HeLLo")
ucase
- INPUT : obligatoire chaîne qui sera convertie en majuscules.
ucase("HeLLo")
\
: \
. Si vous incluez plusieurs délimiteurs, la chaîne est fractionnée sur n’importe lequel des délimiteurs présents dans la chaîne. Remarque : cette fonction renvoie uniquement des index non nuls à partir de la chaîne, quelle que soit la présence du séparateur. Si tous les index, y compris les valeurs nulles, sont requis dans le tableau obtenu, utilisez plutôt la fonction « explode ».- INPUT : obligatoire chaîne d’entrée qui va être fractionnée.
- SEPARATOR : obligatoire chaîne utilisée pour fractionner l’entrée.
["Hello", "world"]
- SEPARATOR : Obligatoire chaîne qui sera utilisée pour joindre les objets.
- OBJETS : Obligatoire Tableau de chaînes qui seront jointes.
join(SEPARATOR, [OBJECTS])
join(" ", to_array(true, "Hello", "world"))
- INPUT : obligatoire chaîne qui va être complétée. Cette chaîne peut être nulle.
- COUNT : obligatoire taille de la chaîne à remplir.
- MARGE INTÉRIEURE : obligatoire chaîne avec laquelle remplir l’entrée. Si nul ou vide, il sera traité comme un espace unique.
- INPUT : obligatoire chaîne qui va être complétée. Cette chaîne peut être nulle.
- COUNT : obligatoire taille de la chaîne à remplir.
- MARGE INTÉRIEURE : obligatoire chaîne avec laquelle remplir l’entrée. Si nul ou vide, il sera traité comme un espace unique.
- STRING : Obligatoire chaîne pour laquelle vous obtenez les premiers caractères « n ».
- COUNT : Obligatoire les caractères « n » que vous souhaitez obtenir à partir de la chaîne.
- STRING : Obligatoire chaîne pour laquelle vous obtenez les « n » derniers caractères.
- COUNT : Obligatoire les caractères « n » que vous souhaitez obtenir à partir de la chaîne.
- STRING : Obligatoire chaîne dont vous souhaitez supprimer l’espace.
- STRING : Obligatoire chaîne dont vous souhaitez supprimer l’espace.
- STRING : Obligatoire chaîne dont vous souhaitez supprimer l’espace.
- STRING1 : Obligatoire première chaîne à comparer.
- STRING2 : Obligatoire deuxième chaîne à comparer.
- STRING1 : Obligatoire première chaîne à comparer.
- STRING2 : Obligatoire deuxième chaîne à comparer.
Fonctions d’expressions régulières
- STRING : obligatoire chaîne à partir de laquelle vous extrayez les groupes.
- REGEX : obligatoire expression régulière à laquelle vous souhaitez que le groupe corresponde.
- STRING : Obligatoire la chaîne que vous vérifiez correspond à l’expression régulière.
- REGEX : obligatoire expression régulière à laquelle vous effectuez une comparaison.
Fonctions de hachage hashing
- INPUT : obligatoire texte brut à hacher.
- CHARSET : facultatif nom du jeu de caractères. Les valeurs possibles sont UTF-8, UTF-16, ISO-8859-1 et US-ASCII.
- INPUT : obligatoire texte brut à hacher.
- CHARSET : facultatif nom du jeu de caractères. Les valeurs possibles sont UTF-8, UTF-16, ISO-8859-1 et US-ASCII.
- INPUT : obligatoire texte brut à hacher.
- CHARSET : facultatif nom du jeu de caractères. Les valeurs possibles sont UTF-8, UTF-16, ISO-8859-1 et US-ASCII.
- INPUT : obligatoire texte brut à hacher.
- CHARSET : facultatif nom du jeu de caractères. Les valeurs possibles sont UTF-8, UTF-16, ISO-8859-1 et US-ASCII.
- INPUT : obligatoire texte brut à hacher.
- CHARSET : facultatif nom du jeu de caractères. Les valeurs possibles sont UTF-8, UTF-16, ISO-8859-1 et US-ASCII.
Fonctions d’URL url
- URL : Obligatoire URL à partir de laquelle le protocole doit être extrait.
- URL : Obligatoire URL à partir de laquelle l’hôte doit être extrait.
- URL : Obligatoire URL à partir de laquelle le port doit être extrait.
- URL : Obligatoire URL à partir de laquelle le chemin d’accès doit être extrait.
- FULL_PATH : facultatif valeur booléenne qui détermine si le chemin d’accès complet est renvoyé. Si elle est définie sur false, seule la fin du chemin est renvoyée.
- URL : Obligatoire URL à partir de laquelle vous essayez d’obtenir la chaîne de requête.
- ANCHOR : obligatoire détermine ce qui sera fait avec l’ancre dans la chaîne de requête. Il peut s’agir de l’une des trois valeurs suivantes : « conserver », « supprimer » ou « ajouter ».
Si la valeur est « retain », l'ancre sera attachée à la valeur renvoyée.
Si la valeur est « remove », l'ancre sera supprimée de la valeur renvoyée.
Si la valeur est « append », l’ancre est renvoyée en tant que valeur distincte.
get_url_query_str(« foo://example.com:8042/over/There?name=ferret#nose », « remove »)
get_url_query_str (« foo://example.com:8042/over/then?name=ferret#nose », « append »)
{"name": "ferret#nose"}
{"name": "ferret"}
{"name": "ferret", "_anchor_": "nose"}
- URL : Obligatoire URL d’entrée avec des caractères spéciaux que vous souhaitez remplacer ou coder avec des caractères ASCII.
- URL : Obligatoire URL d’entrée contenant des caractères ASCII que vous souhaitez décoder en caractères spéciaux.
Fonctions de date et d’heure date-and-time
date
dans la section dates du guide de la gestion des formats de données.2021-10-26T10:10:24Z
- DATE : Obligatoire date d’entrée, sous la forme d’un objet ZonedDateTime, que vous souhaitez formater.
- FORMAT : Obligatoire format dans lequel vous souhaitez que la date soit modifiée.
yyyy-MM-dd HH:mm:ss
»)2019-10-23 11:24:35
- TIMESTAMP : obligatoire date et heure à formater. Il est écrit en millisecondes.
- FORMAT : Obligatoire format dans lequel vous souhaitez que l’horodatage soit défini.
yyyy-MM-dd'T'HH:mm:ss.SSSX
»)2019-10-23T11:24:35.000Z
- DATE : Obligatoire chaîne qui représente la date.
- FORMAT : Obligatoire chaîne représentant le format de la date source.Remarque : il ne s’agit pas du format dans lequel vous souhaitez convertir la chaîne de date.
- DEFAULT_DATE : Obligatoire date par défaut renvoyée, si la date fournie est nulle.
2019-10-23T11:24:00Z
- DATE : Obligatoire chaîne qui représente la date.
- FORMAT : Obligatoire chaîne représentant le format de la date source.Remarque : il ne s’agit pas du format dans lequel vous souhaitez convertir la chaîne de date.
2019-10-23T11:24:00Z
- DATE : Obligatoire chaîne qui représente la date.
« year »
« yyyy »
« yy »
« quarter »
« qq »
« q »
« month »
« mm »
« m »
« dayofyear »
« y »
« day »
»
»
« d »
« week »
»
« w »
»
« weekday »
« dw »
»
« hour »
« hh »
»
« hh24 »
»
« hh12 »
« minute »
»
»
« n »
« « second »« ss »« s »« milliseconde
- COMPOSANT : Obligatoire Chaîne représentant la partie de la date.
- DATE : Obligatoire date au format standard.
"year"
"yyyy"
"yy"
"month"
"mm"
"m"
"day"
"dd"
"d"
"hour"
"hh"
"minute"
"mi"
"n"
"second"
"ss"
"s"
- COMPOSANT : Obligatoire Chaîne représentant la partie de la date.
- VALEUR : Obligatoire valeur à définir pour le composant à une date donnée.
- DATE : Obligatoire date au format standard.
- YEAR : Obligatoire L'année, écrite dans 4 chiffres.
- MOIS : obligatoire le mois. Les valeurs autorisées sont comprises entre 1 et 12.
- JOUR : obligatoire le jour. Les valeurs autorisées sont comprises entre 1 et 31.
- HEURE : obligatoire l’heure. Les valeurs autorisées sont comprises entre 0 et 23.
- MINUTE : Obligatoire La minute. Les valeurs autorisées sont comprises entre 0 et 59.
- NANOSECONDE : obligatoire valeurs de la nanoseconde. Les valeurs autorisées sont 0 à 999999999.
- TIMEZONE : obligatoire fuseau horaire de la date et de l’heure.
2019-10-17T11:55:12Z
- DATE : Obligatoire date que vous tentez de convertir.
zone_date_to_utc​(2019-10-17T11:55:​12 PST
2019-10-17T19:55:12Z
- DATE : Obligatoire date que vous tentez de convertir.
- ZONE : Obligatoire fuseau horaire dans lequel vous essayez de convertir la date.
zone_date_to_zone(now(), "Europe/Paris")
2021-10-26T15:43:59Z
Hiérarchies - Objets objects
- INPUT : obligatoire l’objet que vous essayez de vérifier est vide.
is_empty([1, null, 2, 3])
- INPUT : obligatoire regroupement de paires clé-tableau.
arrays_to_objects('sku', explode("id1|id2", '\\|'), 'price', [22.5,14.35])
[{ "sku": "id1", "price": 22.5 }, { "sku": "id2", "price": 14.35 }]
- INPUT : obligatoire liste plate de paires clé/valeur.
{"firstName": "John", "lastName": "Doe"}
- STRING : obligatoire chaîne en cours d’analyse pour créer un objet.
- VALUE_DELIMITER : facultatif délimiteur qui sépare un champ de la valeur. Le délimiteur par défaut est
:
. - FIELD_DELIMITER : facultatif délimiteur qui sépare les paires valeur de champ. Le délimiteur par défaut est
,
.
get()
avec str_to_object()
pour récupérer les valeurs des clés de la chaîne.- Exemple #1 : str_to_object(« firstName - John ; lastName - ; - 123 345 7890 », « - », »; »)
- Exemple #2 : str_to_object(« firstName - John ; lastName - ; phone - 123 456 7890 », « - », »; »).get(« firstName »)
- Exemple #1:
{"firstName": "John", "lastName": "Doe", "phone": "123 456 7890"}
- Exemple de #2 : « John »
is_set()
obsolète.- INPUT : obligatoire chemin d’accès à vérifier s’il existe dans les données source.
null
. Utilisez-le lorsque vous ne souhaitez pas copier le champ dans le schéma cible.null
- OBJET : Obligatoire objet à partir duquel les clés seront extraites.
["book1", "book2"]
- STRING : obligatoire chaîne que vous souhaitez analyser.
- KEY : Obligatoire clé pour laquelle la valeur doit être extraite.
- VALUE_DELIMITER : obligatoire délimiteur qui sépare le champ et la valeur. Si une
null
ou une chaîne vide est fournie, cette valeur est:
. - FIELD_DELIMITER : facultatif délimiteur qui sépare les paires champ/valeur. Si une
null
ou une chaîne vide est fournie, cette valeur est,
.
- MAP : obligatoire données de mappage d’entrée.
- KEY : obligatoire la clé peut être une chaîne unique ou un tableau de chaînes. Si un autre type primitif (données/nombre) est fourni, il est traité comme une chaîne.
- MAP : obligatoire données de mappage d’entrée
- KEY : obligatoire la clé peut être une chaîne unique ou un tableau de chaînes. Si un autre type primitif (données/nombre) est fourni, il est traité comme une chaîne.
- KEY : Obligatoire les clés doivent être une chaîne. Si d’autres valeurs primitives, telles que des entiers ou des dates, sont fournies, elles sont automatiquement converties en chaînes et traitées comme des chaînes.
- ANY_TYPE : obligatoire fait référence à tout type de données XDM pris en charge, à l’exception des mappages.
- OBJET : obligatoire vous pouvez fournir un objet ou un tableau d’objets entrant et pointer vers un attribut à l’intérieur de l’objet comme clé.
- OBJET : obligatoire vous pouvez fournir un objet ou un tableau d’objets entrant et pointer vers un attribut à l’intérieur de l’objet comme clé.
Pour plus d’informations sur la fonction de copie d’objet, consultez la section ci-dessous.
Hiérarchies - Tableaux arrays
- INPUT : Obligatoire tableau dont vous souhaitez rechercher le premier objet non nul.
- INPUT : Obligatoire tableau dont vous souhaitez trouver le premier élément.
- INPUT : Obligatoire tableau dont vous souhaitez rechercher le dernier élément.
- TABLEAU : obligatoire tableau auquel vous ajoutez des éléments.
- VALEURS : éléments à ajouter au tableau.
- TABLEAU : obligatoire tableau auquel vous ajoutez des éléments.
- VALEURS : le ou les tableaux que vous souhaitez ajouter au tableau parent.
- INCLUDE_NULLS : obligatoire valeur booléenne utilisée pour indiquer si les valeurs NULL doivent être incluses ou non dans le tableau de réponse.
- VALEURS : Obligatoire éléments à convertir en tableau.
[1, 2, 3]
- INPUT : Obligatoire objet dont vous essayez de déterminer la taille.
size_of([1, 2, 3, 4])
- TABLEAU : obligatoire tableau servant à ajouter le tableau dans le profil.
upsert_array_append([123, 456])
- TABLEAU : obligatoire tableau servant à remplacer le tableau dans le profil.
upsert_array_replace([123, 456], 1)
- SEPARATOR : obligatoire séparateur utilisé pour joindre les éléments du tableau.
- TABLEAU : obligatoire tableau à joindre (après aplatissement).
array_to_string(";", ["Hello", "world"])
- TABLEAU : obligatoire tableau à filtrer
- PREDICATE : Obligatoire prédicat à appliquer à chaque élément du tableau donné.
filterArray([5, -6, 0, 7], x -> x > 0)
- TABLEAU : obligatoire tableau à transformer.
- PREDICATE : Obligatoire prédicat à appliquer à chaque élément du tableau donné.
transformArray([5, 6, 7], x -> x + 1)
- TABLEAU : obligatoire tableau à aplatir.
Hiérarchies - Mappage map
- INPUT : Obligatoire tableau d’objets dont vous souhaitez rechercher le premier objet non nul.
- KEY : obligatoire la clé doit être un nom de champ dans le tableau d’objets et l’objet doit être une valeur.
- INPUT : Obligatoire tableau d’objets dont vous souhaitez rechercher le premier objet non nul.
»,État : \« CA\ »,type : \« office\« } »
"{line1 : \"345 park ave\",line2: \"bldg 2\",City : \"san jose\",State : \"CA\",type: \"office\"}"
"{\"firstName\" : \"John\", \"lastName\": \"Doe\"}"
Opérateurs logiques logical-operators
- KEY : Obligatoire clé à faire correspondre.
- OPTIONS : obligatoire tableau aplati de paires clé/valeur. Vous pouvez éventuellement placer une valeur par défaut à la fin.
Si le code d’état donné est « pa », « Pennsylvania ».
Si le code d’état ne correspond pas à ce qui suit, « N/A ».
- EXPRESSION : obligatoire expression booléenne en cours d’évaluation.
- TRUE_VALUE : obligatoire valeur renvoyée si l’expression est évaluée comme vraie.
- FALSE_VALUE : obligatoire valeur renvoyée si l’expression est évaluée comme égale à false.
Agrégation aggregation
- OPTIONS : obligatoire un ou plusieurs objets pouvant être comparés les uns aux autres.
- OPTIONS : obligatoire un ou plusieurs objets pouvant être comparés les uns aux autres.
Conversions de type type-conversions
- STRING : Obligatoire la chaîne qui doit être convertie en BigInteger.
- STRING : Obligatoire chaîne à convertir en doublon.
- STRING : Obligatoire chaîne à convertir en chaîne flottante.
- STRING : obligatoire chaîne à convertir en entier.
Fonctions JSON json
- STRING : obligatoire la chaîne JSON à désérialiser.
Opérations spéciales special-operations
guid
guid()
guid()
c7016dc7-3163-43f7-afc7-2e1c9c206333
fpid_to_ecid
- STRING : obligatoire chaîne FPID à convertir en ECID.
fpid_to_ecid(STRING)
fpid_to_ecid("4ed70bee-b654-420a-a3fd-b58b6b65e991")
"28880788470263023831040523038280731744"
Fonctions de l’agent utilisateur user-agent
L’une des fonctions de l’agent utilisateur contenues dans le tableau ci-dessous peut renvoyer l’une des valeurs suivantes :
- Téléphone : appareil mobile doté d’un petit écran (généralement < 7 pouces)
- Mobile : appareil mobile qui n’a pas encore été identifié. Cet appareil mobile peut être un eReader, une tablette, un téléphone, une montre, etc.
Pour plus d’informations sur les valeurs de champ de l’appareil, veuillez lire la liste des valeurs de champ de l’appareil dans l’annexe de ce document.
- USER_AGENT : obligatoire chaîne de l’agent utilisateur.
- USER_AGENT : obligatoire chaîne de l’agent utilisateur.
- USER_AGENT : obligatoire chaîne de l’agent utilisateur.
- USER_AGENT : obligatoire chaîne de l’agent utilisateur.
- USER_AGENT : obligatoire chaîne de l’agent utilisateur.
- USER_AGENT : obligatoire chaîne de l’agent utilisateur.
- USER_AGENT : obligatoire chaîne de l’agent utilisateur.
- USER_AGENT : obligatoire chaîne de l’agent utilisateur.
Fonctions Analytics analytics
- EVENT_STRING : obligatoire chaîne d’événement Analytics séparée par des virgules.
- EVENT_NAME : Obligatoire nom de l’événement à extraire et identifiant de celui-ci.
- EVENT_STRING : obligatoire chaîne d’événement Analytics séparée par des virgules.
- EVENT_NAME : Obligatoire nom de l’événement duquel extraire une valeur.
- PRODUCTS_STRING : obligatoire chaîne de produits Analytics.
- PRODUCTS_STRING : obligatoire chaîne de produits Analytics.
- PRODUCTS_STRING : obligatoire chaîne de produits Analytics.
- PRODUCTS_STRING : obligatoire chaîne de produits Analytics.
- PRODUCTS_STRING : obligatoire chaîne de produits Analytics.
- EVENT_NAME : Obligatoire nom de l’événement duquel extraire les valeurs.
- PRODUCTS_STRING : obligatoire chaîne de produits Analytics.
- EVAR_NAME : obligatoire nom d’eVar à extraire.
Copie d’objet object-copy
Vous pouvez utiliser la fonction de copie d’objet pour copier automatiquement les attributs d’un objet sans apporter de modifications au mappage. Par exemple, si vos données source ont une structure de :
address{
line1: 4191 Ridgebrook Way,
city: San Jose,
state: California
}
et une structure XDM de :
addr{
addrLine1: 4191 Ridgebrook Way,
city: San Jose,
state: California
}
Le mappage devient alors :
address -> addr
address.line1 -> addr.addrLine1
Dans l’exemple ci-dessus, les attributs city
et state
sont également ingérés automatiquement au moment de l’exécution, car l’objet address
est mappé à addr
. Si vous deviez créer un attribut line2
dans la structure XDM et que vos données d’entrée contiennent également un line2
dans l’objet address
, il sera également ingéré automatiquement sans avoir à modifier manuellement le mappage.
Pour que le mappage automatique fonctionne, les conditions préalables suivantes doivent être remplies :
- Les objets au niveau du parent doivent être mappés ;
- De nouveaux attributs doivent avoir été créés dans le schéma XDM ;
- Les nouveaux attributs doivent avoir des noms correspondants dans le schéma source et le schéma XDM.
Si l’une des conditions préalables n’est pas remplie, vous devez mapper manuellement le schéma source au schéma XDM à l’aide de la préparation des données.
Annexe
Vous trouverez ci-dessous des informations supplémentaires sur l’utilisation des fonctions de mappage de la préparation des données
Caractères spéciaux special-characters
Le tableau ci-dessous présente une liste des caractères réservés et les caractères codés correspondants.
Valeurs de champ de l’appareil device-field-values
Le tableau ci-dessous présente une liste des valeurs de champ d’appareil et leurs descriptions correspondantes.
useragents
ont été modifiées par un logiciel d’anonymisation.useragents
qui ne contiennent aucune information sur le périphérique.useragent
.Exemples de code code-samples
map_get_values map-get-values
code language-json |
---|
|
map_has_keys map_has_keys
code language-json |
---|
|
add_to_map add_to_map
code language-json |
---|
|
object_to_map object_to_map
Syntaxe 1
code language-json |
---|
|
Syntaxe 2
code language-json |
---|
|
Syntaxe 3
code language-json |
---|
|
array_to_map array_to_map
code language-json |
---|
|