Product library distribution

A product library is a database that stores your business rules for data or cartographic production. The distribute functionality in the Product Library window and the Distribute Product library tool are designed to help you share product information more effectively. Only certain information in the product library can be distributed. This information is limited to the solution, the product class, and certain types of files that are associated with either the solution or class such as batch jobs and field configurations. You will not be able to distribute a series or any individual products using this tool.

A solution is essentially the name of the specific projects or industry grouping that corresponds to the products being created. When distributing a solution, you have the option to choose any of the product classes that are associated with the solution.

The product class is a type of geographic product designed for a particular use, typically unique types of maps, charts, or digital data that share common properties. A product class has a default product class version and a default data model version that are used to define the schema of the data used for a product. This information from the product class is automatically exported. You also have the option to choose other product class information such as the associated batch jobs, field configuration, or associated files that will also be included when you distribute the product class.

When distributing a product library, you have the option to copy the product information directly into another product library or to save the information into an XML workspace. If you choose to save the information to an XML workspace, the XML can later be imported into a database by pointing to the XML as the source. When you choose to import into a geodatabase, the geodatabase will be validated to ensure it has the latest product library schema. You may be prompted to upgrade the schema of the database if it is not current, so you may need permissions to modify the schema of the database. If the schema is current, you will only need permissions to write records to the database.

Scenarios for distributing a product library

Merging multiple product classes

The product library is designed to be a central repository for your business rules. Your business may require that you support multiple types of products. If you have created or received multiple product libraries, you may decide to merge them together to manage one central product library rather than multiple product libraries. The Distribute Product Library tool allows you to copy the solution and product class information from one product library into another.

When importing product information into an existing product library, only items that do not already exist in the target product library will be imported, for example, if you are exporting the State solution and the Highways product class and you are importing into a database that already has a State solution and a Counties product class. When you import, because the State solution already exists, it will not be re-created, and the new Highways product class will simply be added to the existing State solution.

Distributing schema updates

When exporting a product class, the default product class version and default data model version are automatically exported. The product class and data model version are used to define the schema of the data, which is used to create a product. Each set of versions can also have a unique set of validation rules and field configurations associated with it.

If the schema of your database changes, you may also choose to create new product class and data model versions that have an updated set of business rules in the product library. You may choose to create these new versions in a staging database or you may receive these updates as part of a solution. The Distribute Product Library tool can be used to merge the new schema and business rules into your existing product library.

When distributing a product class, this tool will look for existing product classes with the same name. So if you want the new schema and business rules added as a new version to an existing product class, the name in the source and target product libraries must match. If the names do not match, the imported information will be added as a new product class.

Working in a distributed environment

Many users work in a distributed environment where there is a central office with either multiple regional offices or other organizations that work is contracted out to. In this scenario, the central office may want to keep a product library with all types of supported solutions and product classes. However, the regional offices or contractors may only need a subset of these. The central office can export only those product classes that are needed for the individual region or contractor, which can then be imported into a product library at the distributed location.