PROBLEM
Attribute domains are rules that define the permissible values for a specific field type. They serve to restrict the values that can be entered for an attribute in a table or feature class, thereby enhancing data integrity by ensuring that only valid options are available. If features within a feature class or nonspatial objects in a table are categorized into subtypes, different attribute domains can be assigned to each subtype. When a domain is linked to an attribute field, only the values specified within that domain are considered valid for that field, meaning that any value outside of the domain will be rejected.
When a domain is created in an enterprise geodatabase, the current connected user becomes the owner of the domain. Only the owner or the geodatabase administrator can modify the domain properties, and the information of the domain is stored in the GDB_Items system table of the respective enterprise geodatabase.

In the above image, we could observe the entry of a domain called as ‘Test’ being stored within the GDB_Items system table. This domain ‘Test’ was created on the enterprise geodatabase from ArcGIS Pro.
ArcGIS Pro or ArcMap do not allow us to create one or more domains with the same name ( here 'Test') in an enterprise geodatabase. This clause is also applicable if the domains are owned by two different users. This is done to preserve the integrity of the geodatabase and prevent the duplication of the domains.
In this case, if we attempt to create another domain called as ‘Test’, the application will automatically rename it to ‘Test1’.

Assume that the domain ‘Test’ is applied to a feature class created within your Geodatabase_A and you are migrating this feature class to ‘Geodatabase_B’ in which we already have a domain called as ‘Test’.

The domains will only be duplicated if the ‘Test’ domain created in ‘Geodatabase_A’ and ‘Test’ domain created in ‘Geodatabase_B’ have different properties. For example – If the domain ‘Test’ in ‘Geodatabase_A’ is a coded-value domain and the domain ‘Test’ in ‘Geodatabase_B’ is a range-value domain, then during the feature class migration a new coded-value domain called as ‘Test_1’ will be created.

If the domain named 'Test' exists as a coded value domain in both 'Geodatabase_A' and 'Geodatabase_B', but their codes and descriptions differ, the domains will still be treated as duplicates.
Article ID: 000038116
Get help from ArcGIS experts
Start chatting now