Product library file management

The product library can be used as a document management system, where any file can be managed and associated with the levels in the tree view. The primary documents that are managed with the product library are ArcMap documents (.mxd). The map document files can be associated with the product class, series, and product levels. In this manner, the map documents serve as templates for a product class or series.

Production phases and file types

There are three major phases of digital data and/or cartographic production. The three phases are source management, production, and export/distribution.

The ancillary documents used in these phases of production can be associated with, managed by, and archived in the product library. Any documents that are available in the file system can also be associated with items in the product library.

Source management

When work begins on a project, the product library can be used to store and manage documents that will be used as project inputs. Files that can be stored in the product library for this phase can include, but are not limited to, the following:

  • Image files
  • Computer-aided design (CAD) drawings
  • Shapefiles
  • Text documents


During production, the product library can be used to store any of the files being used or updated at the product class or series level. By storing all the information related to the project in the product library, you can track the work that has been completed and what has yet to be done. Aside from creating the series and products, examples of other files that can be stored and tracked include the following:

  • Template Instructions, which include .mxd files, data frame rules (XML), layout rules (XML) and python scripts for product classes, series or individual products
  • Data model workspace Extensible Markup Language (XML) files
  • Grid templates (XML) for grids and graticules layers
  • Data Reviewer batch job (.rbj) files
  • Individual product .mxd files
  • Geodatabases (personal [.mdb], file [.gdb], personal Spatial Database Engine [SDE] [.mdf])


The final part of the project is delivering the data, maps, or charts to a client. Before delivering the data or .mxd files, you may need to export them to a different format. If you are delivering color-separated files, you may also need to generate those files. In this instance, the product library can be used to store all parts of the deliverable as archived copies that can be referenced.

If this is an ongoing project, you can also use the product library to save different versions of files at various stages in the project's life cycle or so you can have a snapshot of a chart or map at a specific point in time. Examples of outputs can include the following:

  • Portable Document Format (PDF)/Encapsulated PostScript (EPS) files
  • Graphics (.jpg, .tif, .gif, and .bmp) files
  • Shapefiles
  • Geography Markup Language (GML) files
  • ZIP files

The product library file manager

The files associated with each part of the product library can be viewed in the product library file manager.

In the file manager, each level of the product library can be compared to a folder in Windows Explorer. You can add files to the individual solutions, product classes, series, products, instances, and areas of interest by copying them from your file system and pasting them into the product library. For instance, you can copy an image file for use with a series into the product library.

Tree view of the product library with associated files
Tree view of the product library with associated files

Once files are pasted into the product library, you can rename them, move them to different parts of the product library, check them in and out, and publish and archive them as needed.

You can also search for files in the product library. This includes the .mxd files that are associated with the product classes, series, and products, as well as any other files associated with them. A variety of metadata attributes can be used as search criteria.

Learn more about searching for files in the product library

Product library file manager with search results
Search results in the file manager

Control files

With the product library, there are control files, which are created and managed by the product library and that have a direct relationship with levels of the product library. The files that are created by the product library include the template .mxd files and template instructions (data frame rules, layout rules, and python scripts) for the product class and series, as well as the .mxd files for the products. These documents are created automatically during specific workflows when working with the product library. For example, .mxds are created when a new product class, series, or product is created. So the product library literally controls these files.

Other files that can be controlled by the product library include data model files, instance geodatabases, and those that can be specified as you configure different product library levels. For instance, with the product class, you can specify the XML file that contains the data model. Once you choose the XML file you want to use, it is copied into the product library. The same is true for any databases you associate with instances. After these files are associated with a part of the product library, they are managed in a semiautomated fashion.

When you are working with control files, there are some limitations. For example, you cannot delete a control file directly though manage files. They can, however, be removed though the tree view properties if the user has the appropriate permissions.

Differences between control files and those pasted into the product library

When files are copied and pasted into the product library, they are stored in the database or specified directory, but there is no direct relationship between the file and the part of the product library in which you are storing the file. For instance, suppose you want to store the data for a product class at that level in the product library. You could save the database in the product library and it would be linked to the product class, but it would not have a spatial relationship with it. A spatial relationship could only be formed if you can specify the file through the properties for the product class. In this case, you could spatially relate the database to the product library by associating it with individual product instances.