Generate a schema report

The geodatabase allows you to model real-world features as tables, feature classes, and relationships, and add behavior through geodatabase logic (domains, contingent values, attribute rules, and so on). Part of defining a geodatabase is creating the schema. In relational databases, the schema comprises a collection of tables. You can think of the schema as the blueprint of the database and, similarly, the geodatabase. Datasets and their definitions, rules, and relationships in a geodatabase define the geodatabase schema.

The Generate Schema Report geoprocessing tool generates a readable Excel, JSON, PDF, or HTML report detailing how the geodatabase schema is defined. It can be used as a way to visualize and explore your data model, as a data dictionary, or as the foundation for a more detailed document.

Watch this short video for a general overview of working with the schema report.

Use cases

It's important to understand how your schema report fits into your workflow, such as in the following examples:

  • Documentation
    • Documenting the schema allows for both GIS and non-GIS staff to understand the data and how it relates to other data in their data model. For example, as part of the onboarding process, the schema report can be used as a resource to show a non-GIS user how their business process workflows contribute to the larger department data collection story.
  • Collaboration and data modeling
    • Designing the schema is one of the most important first steps. The geodatabase schema report allows you to make changes to the geodatabase and export the report for collaboration purposes. For example, a new department was created to collect water and waste-water data, and two groups have started to build out the data model. However, there are differences between the two data models. The schema report can be used as a collaboration method to align the differences.
  • Reporting and stakeholder buy-in
    • The schema report includes different types of outputs that can be sent to stakeholders to gather support. For example, a senior level executive has asked to see a report on the proposed data model changes and how the changes help address climate change concerns in their area of interest. As part of gathering stakeholder support, the schema report can be used to present how the data model is organized and how proposed changes can offer favorable outcomes.
  • Data migration
    • The schema report can be used in data migration efforts. Using two schema reports, you can compare the schema after migrating the data to the destination by ensuring that the source and target reports match. For example, you are migrating an enterprise geodatabase from one DBMS provider to another. Using the schema report from the source geodatabase, you can compare the destination schema report to the origin schema report to confirm that the data migration was successful.
  • Auditing and compliance
    • The schema report can be used as a point-in-time report of the geodatabase schema. This is helpful for auditing and compliance purposes when there are legal requirements around data retention records. For example, your department is required to have yearly records going back several years. You can use the geodatabase schema report to assist in the data retention record requirements. By capturing snapshots, you can see how the geodatabase has changed over time and when consequential schema changes were made.

Report format

The Generate Schema Report geoprocessing tool allows you to select a target destination folder and generate a readable Excel XLSX, JSON, PDF, or HTML representation of the geodatabase schema.

The following is an example of an Excel workbook generated from address data in a geodatabase. The table of contents (TOC) tab provides an overview of the information included in the report. To quickly navigate to other sections of the workbook, you can click the hyperlinked text or use the worksheet tabs along the bottom.

Example Excel report output from the Generate Schema Report geoprocessing tool

Generate a schema report

To generate a schema report, complete the following steps:

  1. In the Catalog pane, right-click the table, feature class, feature dataset, or geodatabase you want to use as the input to the Generate Schema Report geoprocessing tool.
  2. Click Export.
  3. Click Generate Schema Report.
  4. In the Generate Schema Report geoprocessing tool, fill in the remaining parameters, select the desired output formats, and click Run.

    The selected reports are generated in the specified output location.

Read the Geodatabase Schema Reports blog article for more tips and tricks when working with the schema report.

Make schema changes in the schema report

A common workflow is to export the schema report to an Excel workbook and then perform schema changes within Excel. This offers an alternative to opening up and working in multiple Design views (Fields, Domains, Subtypes, and so on) to make schema changes and can often times be a faster and more productive workflow when mass schema changes are needed.

The short video below offers a quick overview of the workflow.

The following steps outline the workflow and geoprocessing tools used, which can be applied to any number of data modeling tasks.

  1. Generate a schema report and export it to an .xlsx or .json file.
  2. Open the Excel workbook or JSON document and make schema changes.
  3. Convert the schema report from its original format to an .xml file.
  4. Create a geodatabase from the Catalog pane, a catalog view, or a geoprocessing tool.
  5. Import the XML workspace document containing the schema changes to the new geodatabase.

Diagram for generating a schema report, converting it to XML, and importing the XML document to a new geodatabase

For more information on making changes in the schema report, read the Converting and Editing Schema Reports blog article.

Tips for editing schema reports

Keep the following in mind when editing schema reports:

  • It is important to have an intimate understanding of your schema before making changes to it in this manner. There is very limited validation logic associated with this process and any errors due to user input in the .xlsx file could result in broken schema elements when the new geodatabase is created. A schema report is not a geodatabase and isn't able to validate whether edits you make will be successful. The report can't validate against a destination workspace, identify dependencies, or check against rules or constraints imposed by your organization. For these reasons, it's important to always edit carefully, know the limitations of your destination workspace, and always edit a copy of your original schema report.

  • Only schema changes made on the individual sheets for any given schema element will be converted from .xlsx to .xml during this process. For example, if you want to change the order of fields for a feature class or update its spatial reference, you must browse to the worksheet for that feature class in the Microsoft Excel workbook and make the changes there. Making the update on the FeatureClass worksheet containing all of the feature classes in the schema report will not have any effect.

  • When adding brand new rows to existing tables in the report, make sure that each cell in the rows you add has a value. When in doubt, check out similar tables in another worksheet for examples to ensure sufficient schema information.
  • Some edits will not apply when converting a schema report to a geodatabase, like scale or precision values for fields when importing to a file geodatabase. System-maintained fields, like OBJECTID, and some fields required by controller datasets, such as utility networks, will not reflect changes made in the schema report.