Tutorial: Geodatabase Transformations

Liz Sanderson
Liz Sanderson
  • Updated

FME Version

  • FME 2022.0


FME supports reading and writing to different geodatabase formats and also model complexities inherent to the data attribute and geometry structures. In this tutorial series, we will demonstrate how to handle some of the more complex functionality that is inherent to File Geodatabase formats. Such functionality includes domains, subtypes, metadata, aliases, and so on.
FME supports a number of readers/writers for geodatabase. Which to use depends on the platform you are running, and what your ultimate needs are. In this tutorial, we will concentrate on vector-based File Geodatabase readers/writers.


Esri Geodatabase (File Geodb) vs Esri Geodatabase (File Geodatabase Open API)
Both of the vector-based File Geodatabase reader/writer modules allow FME to store and retrieve data from an Esri Geodatabase. However, it is important to make the distinction between the Esri Geodatabase (File Geodb) reader/writer and the Esri Geodatabase (File Geodatabase Open API) reader/writer as differences in functionality do exist.
To use FME’s Esri Geodatabase (File Geodb) reader/writer, you must also install and have available to you a licensed version of ArcGIS®. In contrast, the Esri Geodatabase (File Geodatabase Open API) reader/writer does not require additional software for use, however, less functionality is permitted.
For instance, because they are considered to have complex behavior, the File Geodatabase Open API writer does not support writing to tables that participate in or are comprised of the following:

  • Annotation and Dimension feature classes
  • Relationship Classes
  • Networks (GN and ND)
  • Topologies
  • Terrains

Knowing what you hope to achieve with your workflow will aid in determining what geodatabase module you choose to accomplish your task. Unless otherwise indicated, the material contained in this tutorial utilizes the Esri Geodatabase (File Geodb) reader/writer.
For more information on geodatabase reader and writer functionality/capabilities, please see the Comparison of FME readers and writers for SDE and Geodatabase article. For information on FME and Esri Versions and Compatibility, please see Notes on FME and Esri Versions and Compatibility


  • FME Desktop installed and licensed
  • Esri ArcGIS or ArcPro installed and licensed  (this is required for most of the articles)
  • A basic understanding of working with FME and Geodatabases, work through Geodatabase Basics before Geodatabase Transformations


Geodatabase Basics

1. Viewing and Inspecting Geodatabases

This example demonstrates the basics of viewing geodatabase feature classes in the Data Inspector.

2. Converting from Geodatabase Format

This example demonstrates how to create a simple workspace that takes two geodatabase feature classes and translates them to individual shapefiles.

3. Converting to Geodatabase Format

This example demonstrates how to create and populate a geodatabase using various source data sets and an XML template.


Geodatabase Transformations

This tutorial series has been updated for 2022.0. There was an AttributeManager update between 2021.1 and 2022.0, so both versions are available to download from each of the following articles. 

1. How to use an Esri Template

This example demonstrates how domains created inside ArcGIS can be applied to features using FME. 

2. Working with Geodatabase Domains: Writing A Coded Domain

This example demonstrates how to create a geodatabase-coded domain.

3. Working with Geodatabase Subtypes: Writing A Subtype

This example demonstrates how to create a geodatabase subtype.

4. Working with Geodatabase Feature-Linked Annotation

This example demonstrates how to write geodatabase features and corresponding feature-linked annotation using a geodatabase XML template file.

5. Introduction to Working with Geodatabase Relationship Classes

This article discusses how to work with geodatabase relationship classes in FME. 

6. Writing Geodatabase Relationship Classes

This example demonstrates how to write a geodatabase 1:M relationship, how to insert into a M:N relationship, or an advanced M:N relationship.  

7. Writing ArcGIS Geodatabase Attachments

This example demonstrates how to write attachments and relationships to a geodatabase

8. Geodatabase Behaviour: Updating a File Geodatabase

This example demonstrates how to update existing features in a file geodatabase.

9. Extracting Differences from an ArcSDE Geodatabase

This example demonstrates how to extract differences from ArcSDE geodatabase versions.

10. Working with Geodatabase Field Aliases: Altering Alias Values

This example demonstrates how to alter existing geodatabase alias values.

11. Using the FeatureReader to Query a Geodatabase

This example demonstrates how to interact with file geodatabase using database transformers.

12. Working with Geodatabase Metadata: Writing/Updating Metadata

This demonstrates how to write and update geodatabase metadata.

Was this article helpful?



Please sign in to leave a comment.