ListBasedFeatureMerger

Fusionne les attributs et/ou géométries d'un jeu d'entités en un autre jeu d'entités en fonction de la correspondance de valeurs d'un attribut de liste avec des valeurs de clés d'attributs et d'expressions.

Aller à la configuration

Cas d'utilisation courants

  • Combiner les attributs et/ou géométrie de deux différents flux d'entités selon une valeur d'attribut clé commune ou une expression, où la clé de l'entité receveuse (Demandeur) est stockée dans un attribut de liste.
  • Référencer une table de correspondance à un attribut de liste

Comment fonctionne-t-il ?

Le ListBasedFeatureMerger réunit deux flux d'entités sur la base d'un attribut ou d'une expression clé commune, où l'une des valeurs clés est un attribut de liste. Chaque valeur de la liste (pour chaque entité) est prise en compte pour la correspondance, le Transformer testant tour à tour chaque élément de la liste pour trouver une correspondance.

Il reçoit deux des flux d'entités via ses ports d'entrée.

Demandeur : les entités qui recevront de nouveaux attributs et/ou une nouvelle géométrie. Le demandeur doit avoir un attribut de liste qui sera utilisé comme clé pour joindre le(s) fournisseur(s).

Fournisseur : les Fournisseurs fournissent des attributs et/ou géométrie à fusionner dans les Demandeurs.

Les correspondances entre le demandeur et le fournisseur sont identifiées en fonction de la configuration des attributs de jointure. Une entité demandeuse correspond à une entité fournisseuse lorsqu'une clé dans le paramètre Attribut liste demandeurs (par exemple, list{}.key) correspond au paramètre Attribut fournisseur (par exemple, supplierKey).

Quand un Demandeur trouve un Fournisseur correspondant, les attributs et/ou géométrie du Fournisseur sont fusionnés avec le Demandeur.

Le paramètre Demandeurs incomplets spécifie s'il faut ou non fusionner des fournisseurs avec des requérants partiellement correspondants lorsque des clés de l'attribut de liste des demandeurs n'ont pas de fournisseurs correspondants. Une entité du demandeur est considérée comme totalement adaptée si chaque clé de l'attribut de liste des demandeurs correspond à une ou plusieurs entités du fournisseur.

  • Si le Demandeur possède déjà un attribut que possède le Fournisseur, la valeur originale de cet attribut du Demandeur peut être conservée ou surchargée.
  • Un même fournisseur peut être utilisé par plusieurs demandeurs.
  • Plusieurs fournisseurs peuvent être regroupés en un seul demandeur.
  • En cas de conflit de noms d'attributs, vous pouvez choisir quelles valeurs utiliser entre celles des demandeurs et des fournisseurs en utilisant le paramètre Résolution de conflit, et vous pouvez définir comment gérer les valeurs nulles via le paramètre Ignorer les valeurs nulles.

Exemples

Notes

  • ListBasedFeatureMerger est une instance très spécifique de FeatureMerger qui traite le cas où l'attribut Requestor est une liste. Si l'attribut du demandeur n'est PAS une liste, utilisez le FeatureMerger ou une autre méthode de jonction.

Choisir une méthode de jointure d'entités

De nombreux Transformers peuvent effectuer des jointures de données sur la base d'attributs, d'expressions et/ou de géométries correspondants. Lorsque vous en choisissez un pour une tâche de jointure spécifique, vous devez prendre en compte la complexité de la jointure, le format des données, l'indexation, la gestion des conflits et les résultats souhaités. Certains Transformers utilisent la syntaxe SQL, d'autres accèdent directement aux bases de données externes. Ils peuvent ou non prendre en charge la lecture et la création d'attributs de liste.

En général, le choix de la méthode la plus spécifique à la tâche à accomplir permet d'obtenir des résultats optimaux en termes de performances. S'il existe plus d'une façon de procéder (ce qui est souvent le cas), il peut être utile de consacrer du temps à tester les performances des autres méthodes. Les performances peuvent varier considérablement selon l'existence d'index clés lors de la lecture de tables externes (par opposition aux entités déjà présentes dans le traitement).

Configuration

Ports d'entrée

Ports de sortie

Paramètres

Éditer les paramètres des Transformers

À l'aide d'un ensemble d'options de menu, les paramètres du Transformer peuvent être attribués en faisant référence à d'autres éléments de traitement. Des fonctions plus avancées, telles qu'un éditeur avancé et un éditeur arithmétique, sont également disponibles dans certains Transformers. Pour accéder à un menu de ces options, cliquez sur à côté du paramètre applicable. Pour plus d'informations, voir Options de menus et paramètres de Transformer.

Définir les valeurs

Il existe plusieurs façons de définir une valeur à utiliser dans un Transformer. La plus simple est de simplement taper une valeur ou une chaîne de caractères, qui peut inclure des fonctions de différents types comme des références d'attributs, des fonctions mathématiques et de chaînes de caractères, et des paramètres de traitement. Il existe un certain nombre d'outils et de raccourcis qui peuvent aider à construire des valeurs, généralement disponibles dans le menu contextuel déroulant adjacent au champ de valeur.

Options - Tables

Les Transformers avec des paramètres de style table possèdent des outils additionnels pour remplir et manipuler des valeurs.

Références

Comportement

Basé sur le regroupement

Stockage des entités

Oui

Dépendances Aucun
Alias  
Historique

 

FME Community

FME Community est l'endroit où trouver des démos, des tutoriaux, des articles, des FAQ et bien plus encore. Obtenez des réponses à vos questions, apprenez des autres utilisateurs et suggérez, votez et commentez de nouvelles entités.

Voir tous les résultats à propos de ce Transformer sur FME Community.

 

Les exemples peuvent contenir des informations sous licence Open Government - Vancouver et/ou Open Government - Canada.