SQL Server に格納されたジオデータベースのドメイン
ドメインはビジネス テーブルのフィールドに適用されるルールです。ドメインはドメインに指定された値だけをフィールドに入力できるようにすることで、データ整合性を維持します。ドメインはジオデータベースに対して定義され、複数のフィーチャクラス、テーブル、またはサブタイプに適用することができます。
定義可能なドメインは、範囲ドメインとコード値ドメインの 2 種類です。範囲ドメインは数値フィールドにのみ適用可能です。ドメインの詳細については、「属性ドメインの概要」をご参照ください。
ArcGIS Desktop のドメイン
ジオデータベースのドメインへアクセスするには、[データベース プロパティ] ダイアログ ボックスからカタログ ウィンドウを使用します。ジオデータベースを右クリックし、[プロパティ] をクリックします。
上記の例では、ジオデータベースに定義されているすべてのドメインのリストがダイアログ ボックスの上部に表示されています。このリストでは、Fitting_type ドメインが選択されています。選択されたドメインに関する [ドメイン プロパティ] と [コード値] が表示されています。[ドメイン プロパティ] に示されているように、Fitting_type ドメインはコード値ドメインです。
ドメインをサブタイプに適用すると、そのドメインは [フィーチャクラス プロパティ] ダイアログ ボックスの [サブタイプ] タブに表示されます。フィーチャクラスを右クリックし、[プロパティ] をクリックします。
Fitting_type ドメインが Fittings フィーチャクラスの SUBTYPE フィールドに適用されます。
ArcMap で Fittings フィーチャクラスの属性を編集する際、SUBTYPE フィールドに入力できるのは Fitting_type ドメインに指定されているコードのいずれかに限られます。
SQL Server でのドメイン
データベースでは、すべてのドメインが GDB_ITEMS システム テーブルに格納されます。GDB_ITEMTYPES テーブルのフィールドによって、オブジェクトがドメインとして識別されます。
XML ワークスペース ドキュメントでのドメイン
XML ワークスペース ドキュメントでは、ドメインは Domain タグで囲まれています。
次に、Fitting_type コード値ドメインの定義を含む XML ワークスペース ドキュメントの一部を示します。
<Domain xsi:type="esri:CodedValueDomain"> <DomainName>FittingType</DomainName> <FieldType>esriFieldTypeString</FieldType> <MergePolicy>esriMPTDefaultValue</MergePolicy> <SplitPolicy>esriSPTDuplicate</SplitPolicy> <Description>Valid fitting type codes</Description> <Owner>RJP</Owner> <CodedValues xsi:type="esri:ArrayOfCodedValue"> <CodedValue xsi:type="esri:CodedValue"> <Name>Tee</Name> <Code xsi:type="xs:string">TEE</Code> </CodedValue> <CodedValue xsi:type="esri:CodedValue"> <Name>Sleeve</Name> <Code xsi:type="xs:string">SLV</Code> </CodedValue> <CodedValue xsi:type="esri:CodedValue"> <Name>Reduser</Name> <Code xsi:type="xs:string">RED</Code> </CodedValue> <CodedValue xsi:type="esri:CodedValue"> <Name>Expansion joint</Name> <Code xsi:type="xs:string">EOP</Code> </CodedValue> <CodedValue xsi:type="esri:CodedValue"> <Name>Cross</Name> <Code xsi:type="xs:string">CRS</Code> </CodedValue> <CodedValue xsi:type="esri:CodedValue"> <Name>Bend</Name> <Code xsi:type="xs:string">BEND</Code> </CodedValue> <CodedValue xsi:type="esri:CodedValue"> <Name>Cap</Name> <Code xsi:type="xs:string">CAP</Code> </CodedValue> <CodedValue xsi:type="esri:CodedValue"> <Name>Coupling</Name> <Code xsi:type="xs:string">CPL</Code> </CodedValue> <CodedValue xsi:type="esri:CodedValue"> <Name>Offset</Name> <Code xsi:type="xs:string">OFF</Code> </CodedValue> <CodedValue xsi:type="esri:CodedValue"> <Name>Plug</Name> <Code xsi:type="xs:string">PLG</Code> </CodedValue> <CodedValue xsi:type="esri:CodedValue"> <Name>Saddle</Name> <Code xsi:type="xs:string">SDL</Code> </CodedValue> <CodedValue xsi:type="esri:CodedValue"> <Name>Tap</Name> <Code xsi:type="xs:string">TAP</Code> </CodedValue> <CodedValue xsi:type="esri:CodedValue"> <Name>Weld</Name> <Code xsi:type="xs:string">WLD</Code> </CodedValue> <CodedValue xsi:type="esri:CodedValue"> <Name>Riser</Name> <Code xsi:type="xs:string">RIS</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>RJP</Owner> <MaxValue xsi:type="xs:double">359</MaxValue> <MinValue xsi:type="xs:double">0</MinValue> </Domain>