Skip to main content

I have a change-detection workflow that triggers another workflow whenever input feature(s) changes. I need to fine-tune this process even more. Say for example, if the input feature(s) has 1000 attributes, the attributes relevant to me are only 100. I need the change-detection workflow to trigger only if any of those 100 attribute value changes.

Is there a way to only get a list of attributes that are actually used inside the workflow?

So you are looking for all the attributes on a feature, rather than all attributes that have been used throughout an entire workspace?

If it the first one, use python:

feature.getAllAttributeNames()

will return all attribute names (including format attributes) .

If you are unsure about python, have a look at:
https://knowledge.safe.com/questions/21304/get-the-attributes-names-with-python.html
So you are looking for all the attributes on a feature, rather than all attributes that have been used throughout an entire workspace?

If it the first one, use python:

feature.getAllAttributeNames()

will return all attribute names (including format attributes) .

If you are unsure about python, have a look at:
https://knowledge.safe.com/questions/21304/get-the-attributes-names-with-python.html
My workspace has multiple readers/multiple features. I do not need to know the reader attributes. Rather, I need to know only the attributes that are actually used inside the workspace.

You could try the FMW reader in FME 2017 and analyze all the transformer settings for a list of all the attributes used. I'm not sure it will be 100% correct, but it could serve as a starting point.


You could try the FMW reader in FME 2017 and analyze all the transformer settings for a list of all the attributes used. I'm not sure it will be 100% correct, but it could serve as a starting point.

That worked. Exposed the transformer output attributes and did a Histogram.

 

 


Reply