PostgreSQL に格納されたジオデータベースのドメイン
ドメインはビジネス テーブルのフィールドに適用されるルールです。ドメインはドメインに指定された値だけをフィールドに入力できるようにすることで、データ整合性を維持します。ドメインはジオデータベースに対して定義され、複数のフィーチャクラス、テーブル、またはサブタイプに適用することができます。
定義可能なドメインは、範囲ドメインとコード値ドメインの 2 種類です。範囲ドメインは数値フィールドにのみ適用可能です。ドメインの詳細については、「属性ドメインの概要」をご参照ください。
ArcGIS for Desktop のドメイン
ジオデータベースのドメインへアクセスするには、[データベース プロパティ] ダイアログ ボックスからカタログ ウィンドウを使用します。ジオデータベースを右クリックし、[プロパティ] をクリックします。
上記の例では、ジオデータベースに定義されているすべてのドメインのリストがダイアログ ボックスの上部に表示されています。このリストでは、FittingType ドメインが選択されています。選択されたドメインに関する [ドメイン プロパティ] と [コード値] が表示されています。[ドメイン プロパティ] に示されているように、FittingType ドメインはコード値ドメインです。
ドメインをサブタイプに適用すると、そのドメインは [フィーチャクラス プロパティ] ダイアログ ボックスの [サブタイプ] タブに表示されます。フィーチャクラスを右クリックし、[プロパティ] をクリックします。
FittingType ドメインが sub_type フィーチャクラスの Fittings フィールドに適用されます。
ArcMap で Fittings フィーチャクラスの属性を編集する際、FittingType フィールドに入力できるのは sub_type ドメインに指定されているコードのいずれかに限られます。
PostgreSQL データベースのドメイン
データベースでは、すべてのドメインが gdb_items システム テーブルに格納されます。gdb_itemtypes テーブルのフィールドによって、オブジェクトがドメインとして識別されます。
XML ワークスペース ドキュメントのドメイン
XML ワークスペース ドキュメントでは、ドメインは Domain タグで囲まれています。
次に、FittingType コード値ドメインの定義を含む XML ワークスペース ドキュメントの一部を示します。
<Domain xsi:type="esri:CodedValueDomain">
<DomainName>Transportation_BridgeCategory</DomainName>
<FieldType>esriFieldTypeInteger</FieldType>
<MergePolicy>esriMPTDefaultValue</MergePolicy>
<SplitPolicy>esriSPTDuplicate</SplitPolicy>
<Description />
<Owner>hbear</Owner>
<CodedValues xsi:type="esri:ArrayOfCodedValue">
<CodedValue xsi:type="esri:CodedValue">
<Name>Unspecified</Name>
<Code xsi:type="xs:int">0</Code>
</CodedValue>
<CodedValue xsi:type="esri:CodedValue">
<Name>Not Covered/Not Decked</Name>
<Code xsi:type="xs:int">1</Code>
</CodedValue>
<CodedValue xsi:type="esri:CodedValue">
<Name>Covered/Not Decked</Name>
<Code xsi:type="xs:int">2</Code>
</CodedValue>
<CodedValue xsi:type="esri:CodedValue">
<Name>Covered/Decked</Name>
<Code xsi:type="xs:int">3</Code>
</CodedValue>
<CodedValue xsi:type="esri:CodedValue">
<Name>Not Covered/Decked</Name>
<Code xsi:type="xs:int">4</Code>
</CodedValue>
<CodedValue xsi:type="esri:CodedValue">
<Name>Not Applicable</Name>
<Code xsi:type="xs:int">99</Code>
</CodedValue>
</CodedValues>
</Domain>
次に、XML ワークスペース ドキュメントに定義された RotAngle という範囲ドメインを示します。
<Domain xsi:type="esri:RangeDomain">
<DomainName>RotAngle</DomainName>
<FieldType>esriFieldTypeInteger</FieldType>
<MergePolicy>esriMPTDefaultValue</MergePolicy>
<SplitPolicy>esriSPTDuplicate</SplitPolicy>
<Description>Valid rotation angles</Description>
<Owner>hbear</Owner>
<MaxValue xsi:type="xs:double">359</MaxValue>
<MinValue xsi:type="xs:double">0</MinValue>
</Domain>