Crear dominio (Administración de datos)

Resumen

Crea un dominio de atributo en el espacio de trabajo especificado.

Uso

Sintaxis

CreateDomain_management (in_workspace, domain_name, domain_description, field_type, {domain_type}, {split_policy}, {merge_policy})
ParámetroExplicaciónTipo de datos
in_workspace

La geodatabase que contendrá el dominio nuevo.

Workspace
domain_name

El nombre del dominio que se creará.

String
domain_description

La descripción del dominio que se creará.

String
field_type

El tipo de dominio de atributo que se creará. Los dominios de atributo son reglas que describen los valores legales de un tipo de campo. Especifique un tipo de campo que coincida con el tipo de datos del campo al que se asignará el dominio de atributo.

  • CORTOValores numéricos sin valores fraccionales dentro de un rango específico; valores codificados.
  • LONGValores numéricos sin valores fraccionales dentro de un rango específico.
  • FLOTANTEValores numéricos con valores fraccionales dentro de un rango específico.
  • DOUBLEValores numéricos con valores fraccionales dentro de un rango específico.
  • TEXTNombres u otras cualidades textuales.
  • DATEFecha u hora.
String
domain_type
(Opcional)

El tipo de dominio que se creará:

  • CODEDEspecifica un conjunto válido de valores para un atributo. Por ejemplo, un dominio de valor codificado puede especificar valores de material de tubería válidos: CL: tubería de hierro fundido, DL: tubería de hierro dúctil, o ACP: tubería de amianto y concreto.
  • RANGOEspecifica un rango válido de valores para un atributo numérico. Por ejemplo, si las redes de distribución de agua tienen una presión de entre 50 y 75 psi, entonces un dominio de rango especificará estos valores mínimos y máximos.
String
split_policy
(Opcional)

La política de división del dominio creado. El comportamiento de los valores de un atributo cuando una entidad dividida está bajo el control de su política de división.

  • POR DEFECTOLos atributos de las dos entidades resultantes aceptan el valor predeterminado del atributo de la clase de entidad o del subtipo dado.
  • DUPLICATEEl atributo de las dos entidades resultantes acepta una copia del valor de atributo del objeto original.
  • GEOMETRY_RATIOLos atributos de las entidades resultantes son una relación del valor de la entidad original. La relación está basada en la proporción en la que se divide la geometría original. Si la geometría se divide en partes iguales, el atributo de cada entidad nueva recibe la mitad del valor del atributo del objeto original. La política de relación geométrica sólo se aplica a los dominios de rango.
String
merge_policy
(Opcional)

La política de fusionado del dominio creado. Cuando se fusionan dos entidades para crear una única entidad, las políticas de fusionado controlan los valores de atributo en la nueva entidad.

  • POR DEFECTOEl atributo de la entidad resultante acepta el valor predeterminado del atributo de la clase de entidad o del subtipo dado. Esta es la única política de fusionado que se aplica a los campos no numéricos y a los dominios de valor codificado.
  • SUM_VALUESEl atributo de la entidad resultante acepta la suma de los valores del atributo de la entidad original. La política de valores de suma sólo se aplica a los dominios de rango.
  • AREA_WEIGHTEDEl atributo de la entidad resultante es el promedio ponderado de los valores de atributo de las entidades originales. Este promedio está basado en la geometría de la entidad original. La política de área ponderada sólo se aplica a los dominios de rango.
String

Ejemplo de código

Ejemplo de Crear dominio (ventana de Python)

La siguiente secuencia de comandos de la ventana de Python demuestra cómo utilizar la función CreateDomain en el modo inmediato.

import arcpy from arcpy import env env.workspace = "C:/data" arcpy.CreateDomain_management("montgomery.gdb", "Materials", "Valid pipe materials", "TEXT", "CODED")
Ejemplo 2 de Crear dominio (secuencia de comandos independiente)

Esta secuencia de comandos independiente utilizó la función CreateDomain como parte de un flujo de trabajo para crear un dominio de atributo, asignarle valores y asignar el dominio a un campo en una clase de entidad.

# Name: MakeDomain.py # Description: Create an attribute domain to constrain pipe material values # Author: ESRI   #Import system modules import arcpy from arcpy import env   try:     # Set the workspace (to avoid having to type in the full path to the data every time)     env.workspace = "C:/data"       # Set local parameters     domName = "Material4"     gdb = "montgomery.gdb"     inFeatures = "Montgomery.gdb/Water/Distribmains"     inField = "Material"       # Process: Create the coded value domain     arcpy.CreateDomain_management("montgomery.gdb", domName, "Valid pipe materials", "TEXT", "CODED")          #Store all the domain values in a dictionary with the domain code as the "key" and the      #domain description as the "value" (domDict[code])     domDict = {"CI":"Cast iron", "DI": "Ductile iron", "PVC": "PVC", \                 "ACP": "Asbestos concrete", "COP": "Copper"}          # Process: Add valid material types to the domain     #use a for loop to cycle through all the domain codes in the dictionary     for code in domDict:                 arcpy.AddCodedValueToDomain_management(gdb, domName, code, domDict[code])          # Process: Constrain the material value of distribution mains     arcpy.AssignDomainToField_management(inFeatures, inField, domName)   except Exception, e:     # If an error occurred, print line number and error message     import traceback, sys     tb = sys.exc_info()[2]     print "Line %i" % tb.tb_lineno     print e.message

Entornos

Temas relacionados


7/10/2012