Skip to main content
Solved

Retain component attribution after aggregation/deaggregation

  • January 10, 2019
  • 5 replies
  • 62 views

dustin
Influencer
Forum|alt.badge.img+31

I have a set of points and lines that I need to collectively scale down using the Scaler. I am combining all features using the Aggregator, scaling down, and then Deaggregating. The features are retaining the original attributes, but all features are getting the attribute values from just one of the features. I am needing the features to retain their original attribute values after the Deaggregator.

Best answer by jdh

In the aggregator create a list, with all attributes, in the deaggregator set the parameter List Attribute to Explode to the list you created in the aggregator.

This post is closed to further activity.
It may be an old question, an answered question, an implemented idea, or a notification-only post.
Please check post dates before relying on any information in a question or answer.
For follow-up or related questions, please post a new question or idea.
If there is a genuine update to be made, please contact us and request that the post is reopened.

5 replies

ebygomm
Influencer
Forum|alt.badge.img+44
  • Influencer
  • 3429 replies
  • January 10, 2019

Assign a unique id to every component prior to aggregating. In the aggregator drop incoming attributes and build a list with the unique id. After whatever processing you need to do, deaggregate, then use the part number to access the relevant unique id from the list. Then you can merge the original attributes back to the transformed features using the unique id.

 

Another option is to include every attribute in your list, then after deaggregation explode the list and then test to only keep the features where the part number equals the element index.


jdh
Contributor
Forum|alt.badge.img+37
  • Contributor
  • 2002 replies
  • Best Answer
  • January 10, 2019

In the aggregator create a list, with all attributes, in the deaggregator set the parameter List Attribute to Explode to the list you created in the aggregator.


jdh
Contributor
Forum|alt.badge.img+37
  • Contributor
  • 2002 replies
  • January 10, 2019

Assign a unique id to every component prior to aggregating. In the aggregator drop incoming attributes and build a list with the unique id. After whatever processing you need to do, deaggregate, then use the part number to access the relevant unique id from the list. Then you can merge the original attributes back to the transformed features using the unique id.

 

Another option is to include every attribute in your list, then after deaggregation explode the list and then test to only keep the features where the part number equals the element index.

Both of those would work, but since FME 2016.1 (I think), there is no need to be that complicated, as the deaggregator has a parameter to explode an attribute list along with the geometry.


dustin
Influencer
Forum|alt.badge.img+31
  • Author
  • Influencer
  • 629 replies
  • January 10, 2019

In the aggregator create a list, with all attributes, in the deaggregator set the parameter List Attribute to Explode to the list you created in the aggregator.

Thank you., this worked beautifully. I was using a pre-existing Deaggregator that was placed in the file before 2016, so I didn't see that option until I upgraded the transformer.


ebygomm
Influencer
Forum|alt.badge.img+44
  • Influencer
  • 3429 replies
  • January 10, 2019

Both of those would work, but since FME 2016.1 (I think), there is no need to be that complicated, as the deaggregator has a parameter to explode an attribute list along with the geometry.

Ah so it does, it's while since I used the deaggregator