- Exposing attributes that a workspace is not aware of, such as those created by a SchemaMapper
- Exposing normally unexposed fme_ and format-specific attributes for access in the workspace
- Exposing attributes in a dynamic translation where source attributes may vary
How does it work?
The AttributeExposer makes unexposed attributes visible in Workbench so they can be used elsewhere in the workspace. This transformer is useful if you know features have an attribute, but that attribute is not currently showing in Workbench. For example:
- FME Attributes (fme_) and more obscure format-specific attributes that are not automatically shown in Workbench.
- Transformers, such as the SchemaMapper, that dynamically add attributes onto features which Workbench is not aware of.
You may enter the attribute names manually, or import attributes from any supported source dataset. Known attributes (including fme_ and format-specific attributes that are not currently exposed) can be selected from the drop-down menu.
This transformer only exposes the attribute in Workbench - it does not ensure that valid attribute names are being exposed. The input features are not modified in any way.
Once the attributes are exposed, they can be accessed elsewhere in the workspace.
Note: Exposing fme_basename or fme_dataset will not change the behavior of the reader. To get these attributes added by the reader, you need to expose them where the read occurs, that is, in the reader feature types or the FeatureReader transformer.
In this example, we have a Parks dataset, and want to change the attribute names to match a desired schema. We route the Parks features into a SchemaMapper, which uses an external CSV file (lookup table) to map the attribute names to new ones.
The attribute map created in the SchemaMapper will take care of creating new attributes with the existing values, but Workbench does not yet know that the new attribute names exist on these features, and so cannot expose them in the workspace.
In the AttributeExposer parameters dialog, we add the names of the attributes we want to expose for use elsewhere in the workspace. The names could be entered manually, or imported using the Import button (and then, in this case, reading the names from the same CSV file used in the SchemaMapper).
The features are then sent into an AttributeManager, where we remove the old, unwanted names, and reorder the attributes.
Features with attributes.
Features with exposed attributes.
|Attributes to Expose||
Enter attribute names or choose them from the drop-down list (which provides access to fme_ and format-specific attributes).
The order in which they appear in the list is the order in which they will appear in the Output port of the transformer.
Import: Use this to import attribute names from any supported source dataset.
Editing Transformer Parameters
Using a set of menu options, transformer parameters can be assigned by referencing other elements in the workspace. More advanced functions, such as an advanced editor and an arithmetic editor, are also available in some transformers. To access a menu of these options, click beside the applicable parameter. For more information, see Transformer Parameter Menu Options.
There are several ways to define a value for use in a Transformer. The simplest is to simply type in a value or string, which can include functions of various types such as attribute references, math and string functions, and workspace parameters. There are a number of tools and shortcuts that can assist in constructing values, generally available from the drop-down context menu adjacent to the value field.
Using the Text Editor
The Text Editor provides a convenient way to construct text strings (including regular expressions) from various data sources, such as attributes, parameters, and constants, where the result is used directly inside a parameter.
Using the Arithmetic Editor
The Arithmetic Editor provides a convenient way to construct math expressions from various data sources, such as attributes, parameters, and feature functions, where the result is used directly inside a parameter.
Set values depending on one or more test conditions that either pass or fail.
Expressions and strings can include a number of functions, characters, parameters, and more - whether entered directly in a parameter or constructed using one of the editors.
|These functions manipulate and format strings.|
|A set of control characters is available in the Text Editor.|
|Math functions are available in both editors.|
|These operators are available in the Arithmetic Editor.|
|These return primarily feature-specific values.|
|FME and workspace-specific parameters may be used.|
|Working with User Parameters||Create your own editable parameters.|
|FME Licensing Level||FME Base Edition and above|
FME Knowledge Center
The FME Knowledge Center is the place for demos, how-tos, articles, FAQs, and more. Get answers to your questions, learn from other users, and suggest, vote, and comment on new features.
Search for all results about the AttributeExposer on the FME Knowledge Center.
Examples may contain information licensed under the Open Government Licence – Vancouver