I am creating a file geodatabase with a feature class. I have created attribute columns in which a few of them have domain value YES/NO but when I select, NO, I have to provide a measurement value as per the condition.

How do I design such a database?

The objective of this database is to collect field information through the ArcGIS collector App where the field workers will measure the length of the roadside drainage if it does not satisfy the length specification.

  • 1
    Which pages of the Online Help about domains have you already reviewed? – PolyGeo Jan 15 at 19:49
  • @PolyGeo: Do you have any recommendation? – BPS Jan 16 at 14:44
  • Are you trying to do this using the ArcMap or ArcGIS Pro application of ArcGIS Desktop? – PolyGeo Jan 16 at 19:42
  • @PolyGeo It's ArcMap on ArcGIS Desktop. After creating the database and feature class, I want to publish it so that I can collect data from the field through ArcGIS Collector App. – BPS Jan 16 at 19:48

What you are describing sounds like the use case for contingent values:

Contingent values, sometimes referred to as contingent attribute values, are a data design feature that allow you to make values in one field dependent on values in another field. Attribute domains allow you to restrict the valid entries on a field to a set list or range of values. Contingent values extends this model by making your choice for a value on one field further constrain the domain values that can be placed on another field. In this way, contingent values enforce data integrity by applying additional constraints to reduce the number of valid field inputs. This can be useful when modeling real world parts and assets in your GIS, particularly for utility companies. This can also be useful for creating decision trees or survey questions where making a choice will determine the next set of valid choices.

Within ArcGIS Desktop contingent values are only available in the ArcGIS Pro application and are not available in the much older ArcMap application.

I do not work with Collector for ArcGIS but I suspect that if you create contingent values in ArcGIS Pro and publish a layer which has them, then they would become instantly available.


I think @PolyGeo is correct if you have ArcPro then Contingent Values is the way to go. But if you don't then domains and sub-types would work if when you create your feature on the map you use the template. If you then went back into the attribute table then yes you see the list of all values rather than a subset.

  1. So to explain I created a text Domain called object with the codes Building, Tree and Not Set.
  2. I created a point featureclass with an Object field (text) and a Type field (short)
  3. I set up the sub-types, it's important to set the Default Values to their correct Object type, so below when I click on Hospital I have to type Building into the Default Value section.

Sub Types

  1. Now when in Edit mode creating my features I select my sub-type and create the point


  1. If you look at the attribute panel you will see that it has auto-filled the Object type based upon the default value you had set when creating the sub-type.

Attribute Panel

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.