ドメインにコード値を追加 (Add Coded Value To Domain) (データ管理)

サマリー

ドメインのコード値リストに値を追加します。

使用法

  • ドメイン管理は次の手順で行います。

    1. [ドメインの作成 (Create Domain)] ツールを使って、ドメインを作成します。
    2. [ドメインにコード値を追加 (Add Coded Value To Domain)] (このツール) を使用してドメインの値を追加するか、[範囲ドメインの値を設定 (Set Value For Range Domain)] ツールを使用してドメインの値の範囲を設定します。
    3. [フィールドへのドメインの割り当て (Assign Domain To Field)] ツールを使って、ドメインをフィーチャクラスに関連付けます。
  • コード値ドメインには、データベースに格納されている実際の値 (たとえば、舗装道路は 1) と、そのコード値の意味の説明 (たとえば、舗装道路) が含まれています。

  • 属性に対する一連の有効な値を指定するコード値ドメインは、テキスト、数値、日付など、あらゆる種類の属性に適用することができます。たとえば、テキスト属性のコード値リストに水道管材料の有効な値として CL (鋳鉄)、DL (球状黒鉛鋳鉄)、ACP (石綿セメント管) などを含めたり、有効な管径を表す数値としてコード値リストに .75 – 3/4"、2 – 2"、24 – 24"、30 – 30" などを含めたりすることができます。

パラメーター

ラベル説明データ タイプ
入力ワークスペース

更新対象のドメインを含むジオデータベース。

Workspace
ドメイン名

コード値リストに追加される値を持つ属性ドメインの名前

String
コード値

指定したドメインのコード値リストに追加する値

String
コード値の説明

コード値が何を表しているかについての説明

String

派生した出力

ラベル説明データ タイプ
更新されたワークスペース

更新されたワークスペース

ワークスペース

arcpy.management.AddCodedValueToDomain(in_workspace, domain_name, code, code_description)
名前説明データ タイプ
in_workspace

更新対象のドメインを含むジオデータベース。

Workspace
domain_name

コード値リストに追加される値を持つ属性ドメインの名前

String
code

指定したドメインのコード値リストに追加する値

String
code_description

コード値が何を表しているかについての説明

String

派生した出力

名前説明データ タイプ
out_workspace

更新されたワークスペース

ワークスペース

コードのサンプル

AddCodedValueToDomain (ドメインにコード値を追加) の例 1 (Python ウィンドウ)

次の Python ウィンドウ スクリプトは、イミディエイト モードで AddCodedValueToDomain 関数を使用する方法を示しています。

import arcpy
arcpy.env.workspace = "C:/data"
arcpy.AddCodedValueToDomain_management("montgomery.gdb", "material", "1", "PVC")
AddCodedValueToDomain (ドメインにコード値を追加) の例 2 (スタンドアロン スクリプト)

次に示すスタンドアロン スクリプトでは、AddCodedValueToDomain (ドメインにコード値を追加) 関数をワークフローの一部として使用することにより、属性ドメインを作成し、値を指定します。

# Name: MakeDomain.py
# Description: Create an attribute domain to constrain pipe material values
 
# Import system modules
import arcpy
 
# Set the workspace (to avoid having to type in the full path to the data every time)
arcpy.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)

関連トピック