Skip to main content
Question

Expose all attributes

  • March 17, 2026
  • 3 replies
  • 66 views

deanhowell
Influencer
Forum|alt.badge.img+24

There are a series of similar posts but still not seeing a way to expose attributes dynamically.

I have a a large number of geodatabases which have multiple layers and different attributes, which I am merging with a geometry layer so I end up with a single layers with lots of attributes.

The geodatabases have a series of tables and a geometry layer, but there is no consistency in attributes between the geodatabases.

How do I expose and have these exposed attributes output to a merged dataset? 

3 replies

nielsgerrits
VIP
Forum|alt.badge.img+66

There is no such thing as dynamic exposing attributes in FME. But for dynamic writing you can use a Schema Feature.

 

One way to do this is to use a SchemaScanner, to generate a Schema Feature and feed that to a FeatureWriter set to Dynamic Schema Definition.

 

It is always a bit of a struggle to set this up. The Schema Feature much arrive at the FeatureWriter before the data features, but it does work. I can provide a sample if needed.


david_r
Celebrity
  • March 17, 2026

Just to add to what ​@nielsgerrits said: Exposing attributes is a design-time aid for the developer and not a binding schema contract. Due to the highly dynamic nature of FME workflows, whatever was exposed at design-time may not necessarily correspond to the situation at run-time.

Also, exposing large amounts of attributes (typically when trying to account for every type of feature class in a large dataset) will push memory consumption in FME and potentially also slow down both the design and execution time.

Look into and embrace dynamic workflows. Safe provides a really good tutorial series, here is the starting point:

https://support.safe.com/hc/en-us/articles/25407480725645-Tutorial-Dynamic-Workflows


david_r
Celebrity
  • March 17, 2026

One way to do this is to use a SchemaScanner, to generate a Schema Feature and feed that to a FeatureWriter set to Dynamic Schema Definition.

If possible, I would recommend using the FeatureReader in place of the classic readers. It will automatically provide the schema feature based on the source dataset definition without the guesswork of the SchemaScanner transformer.