Remember to look at how the data will interact with feature classes, as well as any possible domains or subtypes that may be used. This investigation will help to build not only an efficient design but also a good model of reality.
Designing the data structure
Scenario
After your successes with the parcels and zoning datasets, Oleander’s Public Works Department is seeking your help to create a geodatabase for the sewer system. You will need to design this geodatabase for them.
Sewer systems are a simple design. They consist of pipes to carry wastewater to the treatment plant. In real life, it’s important that the pipes connect to ensure a direct flow route from the beginning of the system to the end. In the data model, you will also want to ensure connectivity, which will allow the data to be used later to construct a network dataset.
A great amount of data can also be stored as attributes of the linear features. Some of the basic information includes the size of the pipe, the material it’s made of, and the year of installation.
This portion of the process is intended to inspire thought and creativity. If done correctly, your designs will be viable for years to come. Once all the designs are completed, they will be used to create the data structure in ArcGIS Pro.
Data
Since you are creating this geodatabase from scratch, there is no data to start with. But you will need to print the geodatabase design forms from the downloaded materials as an aid in the design process. Print as many of the pages as necessary to contain all your designs.
Tools used
•Geodatabase design forms
Begin the geodatabase design process
Using the geodatabase design forms, you will once again commit your thoughts to paper and examine all aspects of how the data will be used, edited, and symbolized. The first part of the design will be to name the geodatabase. Since the data likely will be used in a network later, it will also require a feature dataset.
1.On the first page of a new set of design forms, write the name of the new geodatabase as Utility_Data. On the next line, add the name of the feature dataset as Wastewater.
The sewer lines will be built as linear features, which will require a feature class. Several attributes can be stored with the lines, as mentioned earlier. You’ll add each of these attributes to the design forms.
2.On the geodatabase design form, write the name of the new feature class, SewerLines, with a feature type of LINE and an alias of Sewer Lines.
Next, you will need to fill in the Tables worksheet and show which fields the feature class will contain. The three fields that were required by Public Works were pipe size, which can be a number; pipe material, which can be text; and the year the pipe was installed, which is also a number.
3.On the Tables worksheet, write the name of the feature class. Then write the fields Pipe_Size with a data type of SI, Material with a data type of Text, and Year_Built with a data type of LI. Add the aliases of Pipe Size, Pipe Material, and Year Built, respectively.
In Oleander, some of the sewer lines that run through the city belong to other agencies. Some are the pipes of other cities and are headed for the treatment plant, and some belong to the regional utility that handles all the wastewater treatment for local cities. They all must be included in the dataset and on the maps to prevent accidentally digging into them. The owner of the line must also be recorded, so you’ll add a field named Description to store the name of the owner of each pipe.
4.In the Field Name column, add a field named Description. Write a field type of Text with an alias of Owner.
Data integrity issues
For this data, it is important that every pipe have an entry for size and material. However, year of construction may not be known for some of the older, existing pipes. So, do not accept null values for the fields Pipe_Size and Material, but allow nulls for Year_Built. Also, the ownership of every pipe must be known, so don’t allow for nulls there.
1.For each field, write N next to the aliases Pipe Size, Pipe Material, and Owner in the Nulls column. Write Y next to Year Built in the same column.
The next data integrity issue is to investigate the use of domains. Sewer pipes vary in size from 6 inches to 12 inches in 2-inch increments. Pipes larger than 12 inches are called interceptors and are metered to determine the charge to the city. In Oleander, the interceptors are owned by a regional utility that handles all the wastewater processing. Although the pipes run through the city, Oleander’s Public Works Department does no service or maintenance on them.
If a domain was built for pipe size, it could prevent some data entry errors. The choices would be to use coded values and enter a discrete set of values or use a range and give a low and a high value, such as 6 and 12. A range would allow any numeric entry between these values, and because the sizes increase in 2-inch increments, there would be values allowed by the domain that are not allowed in reality. For example, the range from 6 to 12 would allow an entry of 9, but there is no such thing as a 9-inch sewer pipe. So, using a range wouldn’t work. It is apparent that a discrete list of coded values should be entered.
2.On the Tables worksheet, write the name of the domain for the field Pipe_Size as Sewer_Pipe_Size with the (D1) notation. Then on the Domains worksheet, write the same name. Add a description of Sewer Pipe Size, set the field type as SI, and write the domain type as Coded Values. Enter the values as shown and their corresponding descriptions:
•6 = 6"
•8 = 8"
•10 = 10"
•12 = 12"
Notice that although the field stores integers, and the code must be an integer, the associated description can be text. The description will be useful in labeling the text later, as the inch marks will be visible on the labels that ArcGIS Pro generates.
Another data integrity tool is to include subtypes. Subtypes can be used to segregate data, so that there will be separate domains and defaults for each subset of data. In this scenario, the data might be separated by material. Almost all the new PVC pipes going in are 8 inches, almost all the new high-density polyethylene pipes are 10 inches, and almost all the ductile iron pipes going in are 12 inches. These three are the only materials allowed for new pipes, so if each of these materials was set up as a subtype, additional control could be added to automatically populate some of the more common fields.
One problem with this approach would be the interceptors. These pipes are typically larger than 12 inches, but the size and material change for each situation. Default values wouldn’t be appropriate here, so the interceptors don’t play by the same rules as the Oleander pipes. Perhaps the solution is to put them in their own feature class. They could still be edited simultaneously with the Oleander data, and they could still participate in any networks that are built, as long as they reside in the same feature dataset. Also, the fields for interceptors would be identical to the Oleander lines. You’ll update the worksheets to include an additional feature class for interceptors.
3.On the geodatabase worksheet, add the name of the new linear feature class as Interceptors, and give it an alias of Interceptors. Be sure to fill in its type as LINE.
4.Write the name of the feature class on the Tables worksheet, and duplicate all the fields from the SewerLines feature class.
Because the interceptors don’t have any regular size or material, there will be no domains or default