Raster File Naming

Many file-based raster writers use the feature type as the output filename. For example, if you passed a feature to the feature type “image” on the TIFF writer, the output would be image.tif.

When used in Workbench, most file-based raster format writers fan out on fme_basename. When this is the case, the feature type will effectively be the value of the fme_basename attribute, which is set by all raster format readers to be the filename without the path or extension. For example, if you read two files, image1.tif and image2.tif, two features would be produced: one with an fme_basename value of image1, and one with a value of image2. Then, if these two features were written to a PNG writer when fanning out on fme_basename, two new files would be produced: image1.png and image2.png.

Raster format writers that store their data in files require a mechanism to avoid overwriting existing files and differentiate output file from one another when multiple rasters are written to a writer (particularly if the writer outputs one file per raster feature). Raster file-based writers implement a simple renaming mechanism to deal with name collisions. Renaming the output files only occurs within a single instance of the writer within a given translation.

The first output file is written using the name requested in the workspace. If additional files are produced from the same feature type, the subsequent files are automatically distinguished by appending sequential numbers to the filenames. For example, if four rasters are written to the same feature type, named image, the result is a set of output files with the names image.tif, image_1.tif, image_2.tif, and image_3.tif.

Multiple translations of the same workspace that incorporates a file-based raster writer will overwrite previous file output if name collisions occur. Similarly, using multiple writer instances targeted at the same folder is considered unsafe if the same feature types are used in both translations, since data overwriting may occur.