Summary
Removes an attribute domain association from a feature class or table field.
Usage
This tool is the opposite operation from the Assign Domain To Field function. Removing a domain from a field removes the association between a field and an attribute domain.
When a domain is removed from a field, the attribute validation rule for that field is removed from the database.
The same attribute domain can be associated with multiple fields of the same table, feature class, or subtype as well as with multiple tables and feature classes. Removing a domain from a field will not affect other domain associations.
Workspace domains can also be managed in ArcCatalog or the Catalog window. Domains can be created and modified through the Domains tab on the Database Properties dialog box.
Current map layers may be used to define the Input table.
The Subtype parameter Add Value button is used only in ModelBuilder. In ModelBuilder, where the preceding tool has not been run, or its derived data does not exist, the Subtype parameter may not be populated with values. The Add Value button allows you to add expected value(s) so you can complete the Remove Domain From Field dialog box and continue to build your model.
Syntax
RemoveDomainFromField_management (in_table, field_name, {subtype_code})
Parameter | Explanation | Data Type |
in_table | The input table containing the attribute domain that will be removed. | Table View |
field_name | The field that will no longer be associated with an attribute domain. | Field |
subtype_code [subtype_code,...] (Optional) | The subtype code(s) that will no longer be associated with an attribute domain. | String |
Code sample
Remove Domain from Field Example (Python Window)
The following Python window script demonstrates how to use the RemoveDomainFromField function in immediate mode.
import arcpy
from arcpy import env
env.workspace = "C:/data"
arcpy.RemoveDomainFromField_management("montgomery.gdb/water/distribmains", "DIAMETER")
Remove Domain from Field Example 2 (Stand-alone Script)
This stand-alone script uses the RemoveDomainFromField function as part of a workflow to edit a domain.
# Name: RemoveDomainsExample.py
# Purpose: Update an attribute domain to constrain valid pipe material values
# Import system modules
import arcpy, os
try:
# Set the workspace (to avoid having to type in the full path to the data every time)
arcpy.env.workspace = "data"
# set local parameters
inFeatures = "Montgomery.gdb/Water/DistribMains"
inField = "MATERIAL"
dWorkspace = "Montgomery.gdb"
domName = "Material"
codedValue = "ACP: Asbestos concrete"
codeField = "TYPE"
descField = "DESRIPT"
# Process: Remove the constraint from the material field
arcpy.RemoveDomainFromField_management(inFeatures, inField)
# Edit the domain values
# Process: Remove a coded value from the domain
arcpy.DeleteCodedValueFromDomain_management(dWorkspace, domName, codedValue)
# Process: Create a table from the domain to edit it with ArcMap editing tools
arcpy.DomainToTable_management(dWorkspace, domname, dWorkspace + os.sep + domname , codeField, descField)
# Process: Delete the domain
arcpy.DeleteDomain_management(dWorkspace, domName)
# Edit the domain table outside of geoprocessing
# and then bring the domain back in with the TableToDomain process
except Exception as err:
print(err.args[0])
Environments
Licensing information
- ArcGIS for Desktop Basic: Yes
- ArcGIS for Desktop Standard: Yes
- ArcGIS for Desktop Advanced: Yes