Focus on Geodatabases in ArcGIS Pro. David W. Allen

Чтение книги онлайн.

Читать онлайн книгу Focus on Geodatabases in ArcGIS Pro - David W. Allen страница 9

Focus on Geodatabases in ArcGIS Pro - David W. Allen Focus On

Скачать книгу

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 values for these lines. With the problem solved, you can proceed to design the subtypes. A good field that could use a subtype is Material. By selecting the material, the default values will automatically populate the other fields. And if a pipe size other than the standard is used, the pipe size domain will prevent any incorrect values from being entered.

      The subtype field must always be an integer, and the material field is set as text. This entry can be changed easily with an eraser.

      5.On the Tables worksheet, erase the field type for Material and enter SI. Also, add the name Sewer_Line_Material in the Subtype column on the right with an (S1) notation.

      Next, you can fill in the Subtypes worksheet for the first material, polyvinyl chloride (PVC). The default value for PipeSize will be 8 inches, and the domain designed previously should be applied to this field. The default for the description field will be Oleander. And to save a little typing, make the default for Year_Built 2010. You can change it once a year to keep up with new construction.

      6.On the Subtypes worksheet, write the name of the Subtype field, Sewer_Line_Material. Write the code as 1 and the description as PVC. In the Field column, write the name Pipe_Size, note its domain as Sewer_Pipe_Size, and its default value as 8.

      Note that the default value does not have the inch marks next to it. Remember that its field type is short integer, so the value entered in the database must be short integer. But the inch mark is stored in the domain description, which can be used for labeling later if necessary. The benefit here is that you can do math processes on the pipe size value, such as a selection PipeSize ≤ 8, but still have the value with an inch mark for labeling.

      7.Continuing on the Subtypes worksheet, write the names of the other fields and their default values. For the Description field, write a default value of Oleander. For the Year_Built field, write a default value of 2019.

      This work completes the design for the first choice of subtype. The

Скачать книгу