Files
Introduction
A workspace author may want to give users the ability to filter reader source data by thematic group, each consisting of several feature types.
For example, a Transportation thematic group might include a Rail and a Road table, and a Water thematic group might include separate geodatabase feature classes for Streams, Rivers, and Lakes. This approach is particularly useful for FME Flow jobs, where users often want to select data for download by thematic group rather than by file.
Using the Feature Types to Read parameter of a reader, authors can configure a unique type of Choice user parameter to define thematic groups and assign multiple feature types to each group. The thematic groups are presented to users as choice options at runtime; choosing a particular thematic group will assign the associated feature types as the value for this user parameter and, thus, the value for the Feature Types to Read parameter of the reader.
This tutorial demonstrates how to create and apply this unique Choice user parameter in order to group reader feature types into thematic groups of interest, and then read data into the workspace by thematic group.
The workspace template can be downloaded from the Files section.
Step-by-Step Instructions
1. Open Starting Workspace
Download UserParameters_ThematicGroups_START_2026_3.fmwt from the Files section and save it locally. A file geodatabase, VancouverOpenData.gdb, will save alongside the workspace.
This workspace contains a single Esri Geodatabase (OpenFile Geodb) reader, pointing to a file geodatabase whose feature classes include features related to City of Vancouver transportation, water, and cultural features. The reader is currently configured to read all of the geodatabase’s feature classes into the workspace, as individual feature types. Let’s adjust the reader’s Feature Types to Read parameter so that users can choose to read feature classes from the geodatabase by thematic group, where the thematic groups will include Transportation, Water, and Cultural choices.
2. Create a Choice User Parameter
In the Navigator window, fully expand the VancouverOpenData reader. Expand VancouverOpenData [OPENFILEGDB] > Parameters > Features to Read.
Under the Features to Read node, right-click on the Feature Types to Read parameter, and select Create User Parameter. The Modify Feature Types List dialog will open, and will allow for the definition of a new Choice user parameter.
Enable the Use Alternate Display Name option at the top of the Feature Type List to access a Display Name column.
- Use Alternate Display Name: Enabled
The Display Name column serves the same purpose as the Display column configured for a typical Choice user parameter. Values entered in this column will be presented to workspace users as choice options at runtime.
The Feature Type column serves the same purpose as the Value column configured for a Choice user parameter. When a user selects a Display Name at runtime for this user parameter, the associated value in the Feature Type column will be set as the value for the user parameter.
One Display Name value can be assigned to more than one Feature Type value. Authors can readily create thematic groups by manually entering the name of a thematic group of interest (e.g. Water) into the Display Name column of each Feature Type associated with the thematic group (eg. Rivers, Streams, Lakes). Essentially, authors can create a 1:M relationship between Display Name value and Feature Type value.
We will create three thematic groups of reader feature types by manually entering the theme into the Display Name column of each Feature Type value.
For the following Feature Types, set the Display Name value to Transport:
- BikePathSegments
- bikeways
- public_streets
- snow_removal_routes
- Street_intersections
For the following Feature Types, set the Display Name value to Water:
- drinking_fountains
- public_washrooms
- sewer_mains
- sewer_manholes
- Water_distribution_mains
For the following Feature Types, set the Display Name value to Cultural:
- cultural_spaces
- libraries
- public_art
The following table are the parameters to set in the order they are listed in:
| Display Name | Feature Type |
| Transport | BikePathSegments |
| Transport | bikeways |
| Cultural | cultural_spaces |
| Water | drinking_fountains |
| Cultural | libraries |
| Cultural | public_art |
| Transport | public_streets |
| Water | public_washrooms |
| Water | sewer_mains |
| Water | sewer_manholes |
| Transport | snow_removal_routes |
| Transport | street_intersections |
| Water | water_distribution_mains |
Under the Parameter Definition section of the dialog, enter the following:
- Name: THEMATIC_GROUPS
- Label: Choose a thematic group of features to read
Click OK to accept the definition of this new user parameter and return to the main canvas. The new user parameter, THEMATIC_GROUPS, will now appear under the User Parameter node of the Navigator window. The value of the geodatabase reader’s Feature Types to Read parameter will also now be linked to the value of this new THEMATIC_GROUPS user parameter.
By default, the new THEMATIC_GROUPS user parameter is not a required parameter. In other words, users do not have to choose a thematic group at runtime for the workspace to run. This behavior is ideal for this workspace, as users might not want to filter the geodatabase’s feature types by thematic group.
If the workspace author decides users should be required to select a thematic group, the Required setting for the THEMATIC_GROUPS user parameter can be enabled by accessing the Parameter Manager. Open the Parameter Manager by right-clicking the User Parameters node of the Navigator window, and then choosing Manage User Parameters.
3. Run Workspace
With Data Caching and Prompt for Parameters enabled in the Run menu, click the Run button in the Toolbar. The Translation Parameter Values dialog will appear, showing the Label for the newly created THEMATIC_GROUPS user parameter. Select a thematic group, and then click OK. Click Run.
Watch the data caches of the various reader feature types as the workspace runs; data caches should only appear for those reader feature types associated with the chosen thematic group.
User can now choose which feature types to read by selecting a thematic group created by the workspace author using a Choice user parameter.
Additional Resources
User Parameters in FME Form [Article]
Creating and Modifying User Parameters [Documentation]
Creating User Parameters with the Parameter Manager [Article]
Creating User Parameters with the Parameter Editor [Article]
Combining User Parameters [Article]
Data Attribution
The data used here originates from open data made available by the City of Vancouver, British Columbia. It contains information licensed under the Open Government License - Vancouver.