属性ルール ビューを使用して、既存のルールを表示および管理したり、ルールを作成したりできます。 ルールの管理には、ルールのプロパティの変更、ルールのインポートおよびエクスポート、ルールの削除などのタスクがあります。
属性ルール ビューには、特定のデータセットの既存の属性ルールの表示とそのプロパティが表示されます。 属性ルールの作成または既存のルールの管理を行うには、データ所有者としてジオデータベースからビューにアクセスする必要があります。
注意:
ArcGIS Pro Basic ライセンス、Web フィーチャ レイヤー、またはデータ所有者以外のユーザーとしてデータベース コネクションからアクセスした場合、属性ルール ビューは読み取り専用となります。
属性ルール ビューを開く
属性ルール ビューは次の場所から開くことができます。
- [カタログ] ウィンドウ - フィーチャクラスまたはテーブルを右クリックし、[データ設計] > [属性ルール] をクリックします。
- [コンテンツ] ウィンドウ - レイヤーまたはテーブルを右クリックし、[データ設計] > [属性ルール] をクリックします。
- リボン - コンテンツ ウィンドウでレイヤーまたはテーブルを選択します。 [フィーチャ レイヤー] タブ セットで、[データ] タブをクリックし、[データ設計] グループの [属性ルール] をクリックします。
ナビゲーション セクション
属性ルール ビューを開くと、[計算]、[制約]、または [検証] タブをクリックして、さまざまなルール タイプを表示できます。 既存のルールが各タブに表示され、各行に個々のルールが表示されます。 ルールを選択すると、ルールのプロパティがビューの右側の詳細ウィンドウに表示されます。
[列] ボタンと [フィルター] ボタンを使用して、[属性ルール] ビューを構成します。 [列] ボタンを使用して、ルール リストに表示される列を変更できます。 [フィルター] ボタンを使用して、ルール プロパティで属性ルールをフィルタリングすることもできます。 フィルターでは、ルール リストの表示列が使用されます。
エレメント | 説明 |
---|---|
[計算]、[制約]、[検証] のルール タイプの切り替えにタブを使用します。 | |
ルールは、ビューのグリッド セクションに表示されます。 列をカスタマイズして、各ルールの表示される詳細の程度を調整できます。 | |
詳細ウィンドウには、グリッドから選択したルールのプロパティが含まれます。このウィンドウは、ルールの作成時のプロパティの入力にも使用されます。 |
属性ルールの作成
属性ルールは、属性ルール ビューで作成するか、[属性ルールの追加 (Add Attribute Rule)] ツールを使用して作成できます。 属性ルールを作成する前に、データ ソースがルール タイプでサポートされていること、および基本データセットが排他ロックされていることを確認します。 これは、どの接続もサービスもそのデータセットにアクセスできないことを意味します。
注意:
データセットに属性ルールを追加すると、後方互換性に影響があります。- 属性ルールは、データセットに追加された後に、ArcMap または ArcGIS Pro 2.0 以前のリリースとの互換性がなくなります。 クライアントとジオデータベースのバージョンが異なる場合の利用可能な機能については、「クライアントとジオデータベースの互換性」をご参照ください。
- 新しい Arcade 関数は、ArcGIS クライアントのどのリリースが属性ルールを含むデータセットにアクセスできるかに影響を与えます。 詳細については、「スクリプト式における Arcade の互換性」をご参照ください。
属性ルール ビューで属性ルールを作成するには、次の手順を実行します。
- [カタログ] ウィンドウで、データ所有者としてジオデータベースを参照します。
ヒント:
データセットがアクティブなマップ ビューにある場合は、[コンテンツ] ウィンドウを使用できます。 - データセットを右クリックし、[データ設計] > [属性ルール] をクリックします。
[属性ルール] コンテキスト タブが表示されます。
- [属性ルール] タブの [ルールの追加] グループで、作成したい属性ルール タイプのボタンをクリックします。
- 計算ルール (即時またはバッチ)
- 制約ルール
- 検証ルール
- レビューアー ルール
選択したルール タイプは、属性ルール ビューで有効になります。詳細ウィンドウが表示されるので、ここで新しいルールの詳細を入力します。
- 属性ルール ビューの詳細ウィンドウに、新しい属性ルールのプロパティを入力します。
ヒント:
次に示す一部のプロパティは、特定のルール タイプにのみ適用されます。 作成されるルール タイプに必須のプロパティは、赤色のアスタリスク で示されます。- ルール名 - ルールの一意の名前
- 説明 - ルールとともに保存されている説明
- サブタイプ - データセットにサブタイプが含まれる場合にルールが適用されるサブタイプ
- フィールド - ルールの適用先となるフィールドの名前
- [編集可能] - ルールに指定されたフィールドが編集可能かどうかを決定するチェックボックス
- 式 - ルールを定義する Arcade 式:
- [式の設定] を使用して、Arcade スクリプトを構成し確認します。
- 構文エラーがある場合、行番号と理由がエラーに記されます。 [式の設定] で行番号を確認するには、式のテキスト ボックスを右クリックし、[ライン番号の表示] を選択します。
- 属性ルール スクリプト式の作成の詳細
- エラー番号 - ルールの違反が発生した場合に返されるエラー番号
- エラー メッセージ - ルールの違反が発生した場合に返されるエラー メッセージ
- トリガー - ルールをトリガーする編集イベント:
- 挿入 - このルールは新しいフィーチャの追加時に適用されます。
- 更新 - このルールはフィーチャが更新された時点で適用されます。
- 削除 - このルールはフィーチャが削除された時点で適用されます。
- 実行 - ルールの評価動作を指定する設定:
- アプリケーション評価から除外 - オンにした場合、ルールはアプリケーションまたはクライアントにより評価されず、編集が適用された時点で評価されます。
- 無効化 - オンの場合、ルールが無効化されます。
- バッチ - オンの場合ルールはバッチ計算ルールとなり、検証サービスを使用して評価される必要があります。
- タグ - ルールを識別する一連のタグ
- [属性ルール] タブの [保存] ボタン をクリックします。
データセットに属性ルールが作成されます。
属性ルールの管理
データセットに属性ルールを作成したら、属性ルール ツールセットのツールと属性ルール ビューを使用してルールを表示および管理できます。 データセットに対して arcpy.Describe 関数を使用すると、属性ルール プロパティを印刷できます。 [属性ルールのエクスポート (Export Attribute Rules)] ツールの使用時に作成されたカンマ区切り値 (.csv) ファイルから、データセットの属性ルールを表示することもできます。
属性ルール ビューでは、ビューが開かれているデータセットまたはレイヤーの属性ルールを操作できます。 ビューがアクティブな場合、[属性ルール] グループに、ルールを管理するためのツールとコマンドがあります。 これらのツールは、ビューおよび詳細ウィンドウと一緒に使用できます。
- ルールの削除 - ビュー内の選択したルールを削除します。
- ルールのインポート - CSV ファイルから属性ルールをインポートします。
- ルールのエクスポート - CSV ファイルに属性ルールをエクスポートします。
- ルールの有効化 - ビュー内の選択したルールを有効化します。
- ルールの無効化 - ビュー内の選択したルールを無効化します。
- 保存 - ビュー内で行った編集を確定します。
データセットに対して属性ルールを一時的に無効にするには、属性ルール ビューを使用するか、[属性ルールの無効化 (Disable Attribute Rules)] および [属性ルールの有効化 (Enable Attribute Rules)] ツールを使用します。 これにより、一括データ読み込みのパフォーマンスが向上するため、ルールの実行を一時停止する必要がある場合に便利です。
既存のデータセット間で属性ルールを転送する場合は、[属性ルールのエクスポート (Export Attribute Rules)] および [属性ルールのインポート (Import Attribute Rules)] ツールを使用します。 [属性ルールのエクスポート (Export Attribute Rules)] ツールでは、属性ルールの定義が .csv ファイルに格納されます。
属性ルールは、ジオデータベース内のフィーチャクラスまたはテーブルのプロパティとして作成されます。 属性ルールは、ジオデータベースのデータセットとともにデータ転送プロセスに含まれます。コピーおよび貼り付け操作を行うか、[XML ワークスペース ドキュメントのエクスポート (Export XML Workspace Document)] および [XML ワークスペース ドキュメントのインポート (Import XML Workspace Document)] ツールを使用します。 [フィーチャクラス → フィーチャクラス (Feature Class To Feature Class)] や [テーブル → テーブル (Table To Table)] などのデータ移行ツールでは、基になるデータセットを含む属性ルールが転送されません。 バッチ計算および整合チェック ルールを含むデータセットの場合、作成される出力データセットで整合チェック ステータス属性がリセットされます。
注意:
コピーおよび貼り付け操作および XML ワークスペース ドキュメントを使用してデータセットを属性ルールとともに転送するとき、属性ルールのスクリプト式で参照される順序が含まれます。
既存のルール プロパティの変更
属性ルールを作成したら、属性ルール ビューを使用して特定のプロパティを変更できます。 属性ルールを変更するには、基本データセットを排他ロックする必要があります。
次のプロパティを変更できます。
- 説明
- 式
- エラー番号
- エラー メッセージ
- トリガー
- タグ
- チェックボックスの無効化 (実行セクション)
- 評価順序 (計算ルール)
- アプリケーション評価から除外
既存の属性ルールを変更するには、次の手順を実行します。
- [カタログ] ウィンドウで、データ所有者としてジオデータベースを参照します。
注意:
データセットがアクティブなマップ ビューにある場合は、[コンテンツ] ウィンドウが使用できます。 - データセットを右クリックし、[データ設計] > [属性ルール] をクリックします。
属性ルール タブが表示されます。
- 属性ルール ビューで、変更するルールのルール タイプを選択します。
- 計算
- 制約
- 検証
- 特定の行をクリックして、変更するルールを選択します。
詳細ウィンドウにルール プロパティが表示されます。
- 詳細ウィンドウで、次のルール プロパティのいずれかを変更します。
- 説明
- 式
- エラー番号
- エラー メッセージ
- トリガー
- タグ
- チェックボックスの無効化 (実行セクション)
- アプリケーション評価から除外
ヒント:
一部のルール プロパティを変更するには、ルールを削除してもう一度作成する必要があります。 読み取り専用のルール プロパティは変更できません。 - 計算ルールのみの場合、必要に応じて、評価順序を変更できます。 ビューの [計算] タブをクリックします。 ビューのルール リスト セクションで、評価順序で移動させたいルールの [順序] 列値を変更します。
- [属性ルール] タブの [保存] ボタン をクリックします。
属性ルール ビューの構成
属性ルールを確認するとき、[列] ボタンと [フィルター] ボタンを使用して、[属性ルール] ビューのグリッドに表示される情報をカスタマイズできます。
- [コンテンツ] ウィンドウでレイヤーを右クリックし、[データ設計] > [属性ルール] をクリックします。
[属性ルール] コンテキスト タブが表示されます。
- [列] ドロップダウン矢印をクリックして、次の列を有効化してグリッドに表示します。
デフォルトでは、各ルールの [ルール名]、[説明]、および [サブタイプ] がグリッド内に表示されます。
- フィールド - 計算ルールの適用先となるフィールド。
- 編集可能 -計算ルールに指定されたフィールドを編集可能に設定した場合に有効化します。
- エラー番号 - ルールの違反が発生した場合に返されるエラー番号。
- トリガー - ルールをトリガーする編集イベントを表示する [挿入]、[更新]、および [削除] 列を追加します。
- 無効化 - ルールを無効化した場合に有効化します。
- 除外 - ルールがアプリケーションまたはクライアントにより評価されない場合に有効化します。
- リリース - 属性ルールとスクリプト条件式に基づく ArcGIS クライアント リリースの互換性を表示する [最小の Pro リリース]、[最小の Enterprise リリース]、および [最小の Arcade リリース] 列を追加します。 詳細については、「スクリプト式における Arcade の互換性」をご参照ください。
有効化すると、列が属性ルール ビューのグリッドにルール タイプごとに表示されます。
- [フィルター] ドロップダウン矢印をクリックして、フィルター クエリを構成します。
フィルターをビューに適用すると、[フィルター] ボタン が青色でハイライト表示されます。