A successful GIS is built upon a well-designed collection of geographic data that effectively models your world and makes for simple and efficient display, editing, and analysis. To this end, Esri has put together a number of industry solutions for a variety of communities, such as water utilities, public safety, local government, and many others. Each solution contains a data model designed to work with the features and information specific to that community, be it water mains, hydrants, and other features in a water utilities solution, or emergency facilities and city streets in a solution designed for public safety.
This help section will take a look inside the Campus Editing solution to demonstrate how you can work with the components of a data model in ArcGIS Pro. We'll start with the basic building blocks: fields, domains, and subtypes.
View and edit a layer's fields in the fields view
In the image below, you can see that a few layers from the Campus Editing data model have been added to a map.
Each of these layers contains a number of fields that describe the properties of that layer. For example, the Building layer represents a collection of campus buildings and the layer has fields to describe each of the building's properties, such as the name of the building, what type of building it is, the size of the building, and so on. All of this information is stored as fields in a table, the most fundamental building block there is.
To view the fields for any given layer, you can highlight the layer in the Contents pane, which enables a contextual section on the ribbon called Feature Layer. Clicking the Data tab, you will find the Design group on the tab containing Fields, Subtypes, and Domains buttons. These are your tools for working with a data model.
Clicking Fields opens a new view displaying the layer's fields in a tabular arrangement.
From within the fields view you can create new fields, delete fields, and modify existing fields by navigating within the table and typing, or by using the clipboard functions.
For the Campus Editing data model, we can perform some edits to the Buildings layer within the fields view, such as the following:
- Change the name and alias of a field.
- Delete some unnecessary fields.
- Add a new field called BLDGTYPE to store the type of campus building.
- Apply a domain to a field.
- Apply a default value to a field.
From the Fields tab we can also access two other useful views when working with a data model: the domains view and subtypes view.
View and edit domains in the domains view
Domains are created and edited within their own tabular-style view called the domains view.
Domains allow you to model specific values to be used on the fields in your layers. They offer a way to enforce data integrity in your data model by restricting the input on any particular field to a list or range of valid values. By creating a domain and applying it to a field, you are limiting the choice of values available for that field. This decreases the possibility of entering invalid information while editing, therefore increasing the integrity of your data model overall.
The domains view is also accessible from the Data tab or from the Fields and Subtypes tabs, available with the fields view and subtypes view. Within the domains view you can view existing domains, edit their properties and values, and create new domains.
In the image below you can see some of the domains associated with the Campus Editing data model. These domains can be applied on a layer's fields, or on the fields of any subtypes associated with a given layer.
The next image shows the creation of a new domain called Access Type. This domain will be used to determine what type of access permissions an employee needs in order to enter any given building on campus. This domain is given four valid values: Employees, Public, Maintenance, and Security.
After filling out the domain's properties and valid values in the domains view and clicking Save on the tab, that domain can then be used on fields in fields or subtype view.
View and edit subtypes in the subtypes view
Using the Subtypes button on the Data tab, you can open the subtypes view and see all of the subtypes associated with a given layer.
Subtypes allow you to categorize a layer into a subset of features that share the same attributes. You can then apply domains and default values to the fields of each subtype.
Within the subtypes view you can view the subtypes associated with a layer, make edits to the properties of those subtypes, or make entirely new subtypes within that layer.
You can also create new subtypes on a layer that doesn't yet have any, by clicking the Create/Manage Subtypes button on the ribbon, choosing a field to base the subtype on from the Subtype Field drop-down menu and creating new subtype codes and descriptions for that layer.
In the example below, subtypes are being created on the Buildings layer. These subtypes are applied to the BLDGTYPE field and represent different types of buildings, such as Development, Utility, Marketing, and Security. Now when creating new buildings, the type of building will be determined by choosing one of these subtypes.
Domains and default values can also be applied to the fields on each of the subtypes. Using the Access Type domain that was created in the above section, access permissions can be added to each building by applying the appropriate domain and default value on a subtype. Now when creating a new Development building, for example, it will automatically be given the Access Type value of Employees, restricting entrance permissions on that building to employees only. Whereas, new Utility buildings will automatically be given the Access Type value of Maintenance.
This example shows how you can use subtypes to subcategorize your layers and apply behavior to those subtypes.
Continue learning about fields, domains, and subtypes views
This topic showed an overview of some of the functionality within the fields, domains, and subtypes views. Using these views in conjunction with one another allows you to modify existing data models or build your own.
This topic briefly covered the following:
- Creating, deleting, and modifying fields in the fields view
- Creating a new domain in the domains view
- Creating subtypes in the subtypes view
- Applying domains and default values to subtypes
The following topics in this help section go into more detail on each of the three views. Read on to gather a better understanding of how to use the fields, domains, and subtypes views when working with a data model.