Skip to content

Create the Template Workbook

Before running the template toolbox, you will need to set up your Template_Domains workbook for your database. The sections below walk you through:

  1. Selecting an appropriate starter workbook
  2. A sheet by sheet and column by column explanation of what to update and how it affects the output database.

Copy a Template Domains Workbook

Make a copy of a template domain workbook included with the tool. Even if you think you will use a workbook as is, start with a copy.

Here is some guidance on the different workbooks included with the toolbox:

Workbook Sheet Description
Symbol_Domains Includes over 1000 line and point types for the various GeMS feature classes
GeMS_IsCon Both use Y/Yes; N/No; X/Not applicable
Workbook Sheet Description
Methods Various methods used in the LOCOS project
DataSources Comprehensive list of personnel and entities that serve as DataSources in the LOCOS project
DMU_Table surficial map units used within the LOCOS project
Workbook Sheet Description
Methods No methods specified
DataSources Basic list of common data sources, not project specific
DMU_Table No MapUnits specified

To make a copy of your selected workbook:

  1. Navigate to the downloaded or cloned script.
  2. Within the script directory, navigate to TemplateDomainsTables and make a copy of either:
    1. LOCOS_Template_Domains_Test.xlsx, or
    2. WBR_Template_Domains_Test.xlsx.
  3. Save the workbook to a suitable location.

Tip

The LOCOS spreadsheet is very project specific, while the WBR spreadsheet provides for a blank slate.

Regarding the Excel workbook, any of the following actions will crash the tool:

  • Deleting or renaming any sheets in the workbook.
  • Deleting or renaming columns in any of the sheets.

The next few sections will guide you through each sheet in the workbook and point out any changes to make.

Symbol_Domains Sheet

The Symbol_Domains sheet: - Generates feature class specific Symbol domains - Creates the lookup table used by attribute rules when auto-populating depedent attributes

The default Symbol_Domains sheets contain a wide variety of values. Each section below covers an individual column and:

  • Gives a brief summary of the column's purpose.
  • How the data formatting was chosen.
  • Provides guidance on customization.

Tip

Each row in the Symbol_Domains Sheet represents a point or line type that you could create in the output database. Make sure the table includes all line and point types that you anticipate needing when creating/editing data. You can still add values later, see Updating an Existing Template GDB, but it is easiest to add the values up front.

Symbol

Symbol Column Explained:

  • Used as coded values in feature class specific symbol domains.
  • Acts as the lookup value to the AttrRules_CalcFromSymbol table when an attribute rule is populating a dependent value.

The Symbol column uses FGDC codes as they appear in the official FGDC.stylx file(1)

  1. Refer to ArcGIS Pro style implementation of FGDC Standard at National Geologic Map Database Standards and Guidelines.

Change Guidelines:

  • Proceed with Caution


    Change Recommendation
    Adding rows The default lists are extensive, make sure you truly need to add values
    Removing rows Make sure any values removed are truly unneeded. They can be added back in later, but require additional steps
    Changing Symbol values for custom symbols Make sure values use 0-padded formatting and Descriptions are consistent
  • Not Recommended


    Not Recommended Change Reason
    Deleting 0-padding portions of values Symbol field will be incompatible with the FGDC.stylx file discussed earlier

Symbol cannot be null

Symbol is used to generate domain codes, which cannot be null. Blank Symbol values will crash the tool.

Description

Description Column Explained:

  • Used as coded value descriptions in feature class specific symbol domains.
  • Formatted as FGDC code - FGDC description. The FGDC description matches those found in the FGDC.stylx file.
  • By using a symbol domain with descriptions formatted this way, symbolizing via the symbol field will place FGDC code - FGDC description into the Contents Pane legend, making it a fully user-friendly list of symbol types without having to know FGDC codes.

Change Guidelines:

  • Proceed with Caution


    Change Recommendation
    Updating descriptions for stylistic reasons Make sure to retain the 0-padded FGDC codes and hyphens in front of the descriptions
    Updating descriptions for repurposed symbols Retain the 0-padded FGDC codes and hyphens.

    Ensure any other dependent fields are updated to match, if required.

    Update the FGDC code in both Description and Symbol, if applicable
  • Not Recommended


    Not Recommended Change Reason
    Changing the FGDC Code - FGDC Description general formatting This approach yields a user friendly Contents Pane when symbolized with the FGDC.stylx or derivative style file without having to memorize FGDC codes.

Description cannot be null

Description is used to generate symbol domain descriptions and those values cannot be null. Blank Descriptions will crash the tool.

GeMSFeatureClass

GeMSFeatureClass Column Explained:

  • The template database uses feature class specific Symbol field domains
  • The values in this field determine which of those feature classes the Symbol will belong to
  • You can specify multiple feature classes by separating values by a comma

Note

For the GenericPoints feature class, the toolbox allows you to specify a custom name, such as CinderConePoints. Make sure that the name you plan to use in the toolbox is also used here. It must be a valid feature class name. The toolbox will validate the feature class name before running.

Change Guidelines:

  • Proceed with Caution


    Change Recommendation
    Changing which feature classes are assigned to a symbol The changes should be logical. Many symbols truly only belong in certain feature classes
  • Not Recommended


    Not Recommended Change Reason
    Using Feature Class names that are not part of GeMS The toolbox will skip these values when building the Symbol domains

Type

Type Column Explained:

  • For a given symbol, attribute Rules will set Type in the database to the value in this column; only operates on feature classes with a Type field.
  • First letters are capitalized for stylistic reasons and consistency.
  • Phrases are written to match FGDC.stylx file descriptions, as opposed to other alternate ordering of the words.

    Example

    Normal fault instead of Fault, normal

    Low-angle normal fault instead of Fault, normal, low-angle or Fault, low-angle, normal

Change Guidelines:

  • Proceed with Caution


    Change Recommendation
    Changing Type for custom symbols Make sure Descriptions and any other dependent fields are consistent
    Changing Type for stylistic reasons such as changing the order or case Stay consistent when the same Type value is used across symbols.

    Also consider staying consistent throughout the database. Sorting and filtering the Symbol_Domains sheet can help with consistency.
  • Not Recommended


    Not Recommended Change Reason
    Blank Type values Attribute Rules will leave Type in created/edited features blank and you will not be able to add a value.

    Type is a GeMS required field.
    Type values for feature classes that do not have a Type Field The Type attribute rule only operates on feature classes with a Type field.

    Adding values to the spreadsheet will have no effect.

ExIDConfidence

ExIDConfidence Column Explained:

  • Controls ExistenceConfidence and IdentityConfidence attributes.
  • Uses GeMS standard confidence values of certain and questionable.
  • Symbols with identity and existence certain have an ExIDConfidence value of certain.
  • Symbols with identity or existence questionable have an ExIDConfidence value of questionable.

Attribute Rules and ExIDConfidence:

  • Attribute rules will always set Existence and IdentityConfidence to certain for symbols that are certain
  • For questionable symbols, attribute rule behavior depends on template options:

    • If Existence and IdentityConfidence will always be equal, questionable symbols always have both confidence values set to questionable.
    • If not, the user must specify both values when creating a symbol that is questionable. At least one of the two confidence values must be questionable.
    • Only operates on feature classes with both Identity and ExistenceConfidence.

Change Guidelines:

ExIDConfidence Must Not Be Updated

  • Template databases only support GeMS standard confidence values. Therefore, only certain and questionable can be used. Any other values will cause conflicts with attribute rules and domains.
  • Due to the way attribute rules are written, identity and existence certain symbols must have an ExIDConfidence of certain. Other values will cause unexpected behavoir. Additionally, identity or existence questionable requires ExIDConfidence values of questionable.
  • Specifying ExIDConfidence values for feature classes that only have IdentityConfidence, such as OrientationPoints, has no effect.

IsConcealed

IsConcealed Column Explained:

  • Given a specific symbol, attribute rules will set IsConcealed in the database to the value in this column; only operates on feature classes with an IsConcealed field.
  • Uses Y, N, and X for Yes, No, and Not applicable, respectively. 31.08, Map neatline is the only symbol that uses X.
  • IsConcealed fields in the database are assigned the GeMS_IsCon domain, with the values shown in the respective workbook spreadsheet.

Change Guidelines:

  • Proceed with Caution


    Change Recommendation
    Using different values for IsConcealed Make sure to update the GeMS_IsCon spreadsheet to include all values that you use. Failure to do so will cause conflicts between attribute rules and domains.

    Make sure changes are applied consistently across all symbol types.
  • Not Recommended


    Not Recommended Change Reason
    Blank IsConcealed values Attribute Rules will leave IsConcealed in created/edited features blank and you will not be able to add a value.

    IsConcealed is a GeMS required field.
    IsConcealed values for feature classes that do not have an IsConcealed field The IsConcealed attribute rule only operates on feature classes with an IsConcealed field.

    Adding values to the spreadsheet will have no effect.

Do not leave the GeMS_IsCon sheet blank and make sure Code and Description are filled in for each value

The GeMS_IsCon sheet is used to generate the GeMS_IsCon domain. Codes and Descriptions cannot be blank and there must be at least one row of values. Blank columns or no values will crash the tool.

Inclination

Inclination Column Explained:

  • For OrientationPoint symbols, attribute rules will set Inclination to 0 for horizontal symbols and 90 for vertical symbols as specified in the AttrRules_CalcFromSymbol table.
  • For inclined OrientationPoint symbols, no value is specified. Attribute rules allow the user to enter a value, but must enter a value other than 0, 90, or -90.

Change Guidelines:

  • Proceed with Caution


    Change Recommendation
    Using -90 for some or all vertical symbols Make sure to only update vertical symbols, otherwise attribute rules will cause unexpected behavior
  • Not Recommended


    Not Recommended Change Reason
    Setting values for inclined symbols Attribute rules expect that the AttrRules_CalcFromSymbol table will use null values for inclined symbols.

    Specifying values causes unexpected behavior in the database.
    Setting horizontal or vertical symbols to null Attribute rules expect that the AttrRules_CalcFromSymbol table specifies values for all horizontal and vertical symbols.

    Leaving values null causes unexpected behavior in the database.
    Specifying Inclination for non-OrientationPoint symbols The Inclination attribute rule only operates on OrientationPoints.

    Specifying Inclination values for other symbol types has no effect.

LocationConfidenceMeters

LocationConfidenceMeters Column Explained:

  • Given a specific symbol, if LocationConfidenceMeters is specified in the table, attribute rules set the value in the feature to the value specified in the column; only operates on feature classes with a LocationConfidenceMeters field.
  • If a LocationConfidenceMeters value is not specified, attribute rules allow the user to specify a value during feature creation/editing.
  • The default spreadsheets do not specify values since they are mapping dependent.

Change Guidelines:

  • Proceed with Caution


    Change Recommendation
    Setting LocationConfidenceMeters values for selected symbols Make sure to only use integer values.

    Keep in mind that specifying a value here means all symbols of that type will use that LocationConfidenceMeters value. If you expect the same symbol type to use varying confidence values, do not specify a value here.

    An alternative is to specify a default value either in the database or in feature templates. This approach works if most of your confidence values will be the same, but still allows you to change the exceptions.

    Refer to Finalize the Template GDB - Feature Template Default Values for more information.
  • Not Recommended


    Not Recommended Change Reason
    LocationConfidenceValues values for feature classes that do not have LocationConfidenceMeters field The LocationConfidenceMeters attribute rule only operates on feature classes with a LocationConfidenceMeters field.

    Specifying values causes unexpected behavior in the database.

MapUnit - For MapUnitLines

Note

MapUnit only applies to MapUnitLines. Attribute rules have no effect on other feature classes that use MapUnit, for example, OrientationPoints.

Template gdbs support two different methods for populating Symbol and MapUnit in MapUnitLines. Which you pick ultimately depends on what geologic data you will digitize.

Each example below will give you instructions about how to set the Symbol_Domain sheet. You will also have to select the proper template option when you run the tool, which is discussed in Create the Template GDB.

The examples will use MapUnitLine data from https://www.sciencebase.gov/catalog/item/62e056b0d34e10763b59517e1

Using FGDC codes or FGDC-like codes in the Symbol field:

The Turtle Mountains database actually follows this approach. The relationship between Symbol and MapUnit are shown below(1):

  1. The FGDC descriptions are all Dikes, Identity and existence certain, location accurate, options 2, 3, 4, and 5.

    The published database uses different colors in addition to line types to distinguish the MapUnitLines.

Symbol MapUnit
01.03.03 Kqp
01.03.05 Ydb
01.03.07 Tif
01.03.09 Tm

To use this method, populate the MapUnit in the Symbol_Domain sheet for each of the MapUnitLine symbols you plan to use.

When digitizing features, the mapper selects Symbol and attribute rules will automatically populate MapUnit.

Using MapUnit Codes in the Symbol field:

If the Turtle Mountains database took this approach, Symbol and MapUnit would both use the same values:

Symbol MapUnit
Kqp Kqp
Ydb Ydb
Tif Tif
Tm Tm

To have the template database record your MapUnitLines with this approach, update the Symbol_Domains sheet as follows:

  1. Leave the MapUnit column blank
  2. For the Symbols you will use for MapUnitLines, replace the FGDC codes with the MapUnit codes.
  3. Leave Description unchanged. It will not be used when generating domains for MapUnitLines, but can serve as a useful reference in the template database since it contains the original FGDC code for the symbol.

Example

For Turtle Mountains, 01.03.03, 01.03.05, 01.03.07, and 01.03.09 would be replaced with the corresponding MapUnit codes.

LTYPE, PTYPE, PTTYPE

These fields are available for reference purposes to relate older database schemas. They have no effect on attribute rules or domains.

Methods Sheet

The Methods sheet sets the Method_ID domain and also populates the Methods table. There are a series of template options regarding Methods:

  1. The table, domain, and Method_ID field can be excluded from the template database.
  2. The table, domain, and Method_ID field can be included, but left blank so that you can populate it later.
  3. The table, domain, and Method_ID field are included, and the table and domain are populated with the Method sheet.

Refer to Create the Template GDB for more information on Method options.

If you choose option 1 or 2, the Methods sheet is ignored by the tool, and you do not need to edit it.

If you choose option 3, continue reading below.

Method_ID Domain

The Method_ID domain will be generated as follows:

Sheet Column Method_ID Domain
Method_ID Domain Code
Method Domain Description

The LOCOS spreadsheet provides one formatting approach, with sequentially numbered Method_IDs and a short descriptive sentence of the method.

Include all applicable Methods for your database.

Do not leave the sheet blank or the Method_ID and Method columns blank

Since this sheet is used to generate domains, there must be at least one row of data, and Method_ID and Method must be filled out for all rows. Otherwise, the tool will crash.

Methods Table

The Methods sheet is an exact copy of the non-spatial table that will be added to the template database. Notes is an optional field that could be specified in the spreadsheet if needed.

DataSources Sheet

The DataSources sheet sets the DataSourcesID domain and populates the GeMS DataSources non-spatial table in the database.

DataSoucesID Domain

The DataSources_ID column in the DataSources Sheet will populate both the code and description in the DataSourcesID domain. Both the LOCOS and WBR sheets use a citation abbreviation format for DataSources_ID, which can be more user-friendly than a DAS1, DAS2, DAS3 approach.

FGDC-STD-013-2006 is added to DataSources by default by the GeMS Create New Database tool. It should still be left in the DataSources sheet, as the template tool will ensure it only appears once.

Include all applicable DataSources for your database.

Include at least 1 DataSource and do not leave DataSources_ID blank

Since DataSources_ID is used to generate the DataSourcesID domain, there must be at least one row of data, and DataSources_ID cannot be blank. Otherwise, the tool will crash.

DataSources Table

The DataSources sheet is an exact copy of the GeMS DataSources non-spatial table. The template tool will use the sheet to append data to the DataSources non-spatial table.

Source is not required by the template tool, but completing it can help fully identify a DataSources_ID. It is also a GeMS required field.

Complete URL and Notes if applicable.

DMU_Table Sheet

  • The DMU_Table sheet sets the MapUnit domain and populates the GeMS DescriptionOfMapUnits non-spatial table in the database.
  • The template tool supports DMU Headings in the table.
  • The DescriptionOfMapUnits table also serves as a lookup table for attribute rules to populate Label.

MapUnit Domain

The MapUnit domain is generated as follows:

Code Description
MapUnit MapUnit - FullName (Age)

Therefore, these columns are required for all MapUnits:

  • MapUnit
  • FullName
  • Age

As mentioned in DMU_Table Sheet, DMU headings can also appear in DMU_Table. Headings should be populated in Name. MapUnit should be left blank.

Warning

It is important that for MapUnits, you populate MapUnit, FullName, and Age. Otherwise, the tool may crash or create malformed domain descriptions.

It is equally important that for headings, only Name is completed and MapUnit is left blank. The tool identifies headings by checking if MapUnit is blank. Therefore, populating MapUnit for headings will cause unexpected results.

DescriptonOfMapUnits Table

In addition to the fields mentioned in MapUnit Domain, complete at a minimum the following columns:

  • Label, including any special characters for unit ages
  • Symbol, which must be equal to MapUnit

All other fields (even GeMS required fields) are not needed by the tool. However, completing the following fields may help with keeping the DescriptionOfMapUnits organized:

  • HierarchyKey
  • ParagraphStyle

If you populate GeoMaterialConfidence or GeoMaterial, ensure you are using values found in the domains generated by the GeMS Create New Database tool.

The template tool will check the length of text in the Description field in the spreadsheet table. If any descriptions exceed 3000 characters, the tool will increase the field length of Description in the GeMS database before appending your data. This way, no map units will be dropped during the append operation.

GeMS_IsCon Sheet

Refer to the Symbol_Domain Sheet - IsConcealed section of this page for information on the GeMS_IsCon sheet.

ExIDConfidence Values

This sheet is provided for reference purposes only and has no effect on the template database. The ExIDConfidence domain is set by the GeMS Create New Database tool and only those values can be used in the database. Refer to the Symbol_Domain Sheet - ExIDConfidence section of this page for more information.

BedrockUnits

This sheet is applicable if you plan to use the template option Add Surficial MapUnit Fields And Rules(1). List any BedrockMapUnits in your database within the MapUnits column. This sheet will generate a BedrockMapUnit domain which will be assigned to the BedrockMapUnit field. Then, if your CompositeMapUnit contains a unit in the BedrockMapUnit domain, attribute rules will automatically populate BedrockMapUnit. The PTYPE parsing rule(2) will also use the BedrockMapUnit domain when parsing data from a source database.

  1. Refer to Create the Template GDB either For New Databases or For Conversion Databases for more information on this template option.
  2. Refer Create the Template GDB For Conversion Databases for more information on this template option.

Warning

Your DescriptionOfMapUnits table, whether that comes from an existing GeMS table or the Template Workbook DescriptionOfMapUnits sheet, must have all the map units you add to the BedrockUnit sheet, or they will not be added to the BedrockMapUnit domain.

Conclusion

Make sure to save all changes to your workbook and close it. Next, you will enter parameters into the tool and generate a template.


  1. Kinser, D.W., Howard, K.A., Bennett, S.E.K., Crow, R.S., Felger, T.J., Mavor, S.P., 2022, Digital database of geologic units, contacts, and faults for Mineral Resource Potential Map of the Turtle Mountains Wilderness Study Area, San Bernardino County, California (U.S. Geological Survey Bulletin 1713-B, 1988, Plate 1): U.S. Geological Survey data release, http://doi.org/10.5066/P9NBU9PY