Skip to main content

属性ルールの作成および管理

属性ルール ビューを使用して、既存のルールを表示および管理したり、ルールを作成したりできます。 ルールの管理には、ルールのプロパティの変更、ルールのインポートおよびエクスポート、ルールの削除などのタスクがあります。

属性ルール ビューには、特定のデータセットの既存の属性ルールの表示とそのプロパティが表示されます。 属性ルールの作成または既存のルールの管理を行うには、データ所有者としてジオデータベースからビューにアクセスする必要があります。

属性ルールとそのプロパティに関する詳細

注意:

ArcGIS Pro Basic ライセンス、Web フィーチャ レイヤー、またはデータ所有者以外のユーザーとしてデータベース コネクションからアクセスした場合、属性ルール ビューは読み取り専用となります。

属性ルール ビューを開く

属性ルール ビューは次の場所から開くことができます。

  • カタログ ウィンドウ - フィーチャクラスまたはテーブルを右クリックし、データ設計 > 属性ルール をクリックします。

  • コンテンツ ウィンドウ - レイヤーまたはテーブルを右クリックし、データ設計 > 属性ルール をクリックします。

  • リボン - コンテンツ ウィンドウでレイヤーまたはテーブルを選択します。 フィーチャ レイヤー タブ セットで、データ タブをクリックし、データ設計 グループの 属性ルール をクリックします。

ナビゲーション セクション

属性ルール ビューを開くと、計算制約、または 検証 タブをクリックして、さまざまなルール タイプを表示できます。 既存のルールが各タブに表示され、各行に個々のルールが表示されます。 ルールを選択すると、ルールのプロパティがビューの右側の詳細ウィンドウに表示されます。

ボタンと フィルター ボタンを使用して、属性ルール ビューを構成します。 ボタンを使用して、ルール リストに表示される列を変更できます。 フィルター ボタンを使用して、ルール プロパティで属性ルールをフィルターすることもできます。 フィルターでは、ルール リストの表示列が使用されます。

属性ルール ビュー

エレメント

説明

1

計算制約検証 のルール タイプの切り替えにタブを使用します。

2

ルールは、ビューのグリッド セクションに表示されます。 列をカスタマイズして、各ルールの表示される詳細の程度を調整できます。

3

詳細ウィンドウには、グリッドから選択したルールのプロパティが含まれます。このウィンドウは、ルールの作成時のプロパティの入力にも使用されます。

属性ルール ビューのナビゲーション セクション

属性ルール ビューの構成

属性ルールを確認するとき、 ボタンと フィルター ボタンを使用して、属性ルール ビューのグリッドに表示される情報をカスタマイズできます。

  1. 属性ルール ビューを開きます。

  2. ドロップダウン メニューをクリックし、グリッドにどの列を表示するかを選択します:

    デフォルトでは、各ルールの 無効ルール名サブタイプリリース 列がグリッド内に表示されます。

    • フィールド - 計算ルールの適用先となるフィールド。

    • 編集可能 -計算ルールに指定されたフィールドを編集可能に設定した場合に有効化します。

    • 説明 - 属性ルールの動作について詳細を説明したテキスト。

    • エラー番号 - ルールの違反が発生した場合に返されるエラー番号。

    • トリガー - ルールをトリガーする編集イベントを表示する 挿入更新、および 削除 列を追加します。

    • 無効 - ルールが無効になっている場合に有効化します。

    • 除外 - ルールがアプリケーションまたはクライアントにより評価されない場合に有効化します。

    • リリース - 属性ルールとスクリプト条件式に基づく ArcGIS クライアント リリースの互換性を表示する 最小の Pro リリース最小の Enterprise リリース、および 最小の Arcade リリース 列を含みます。 詳細については、「スクリプト式における Arcade の互換性」をご参照ください。

    有効化すると、列が属性ルール ビューのグリッドにルール タイプごとに表示されます。

    注意:

    サブタイプ 列にはドロップダウン メニューが常に表示され、すべて、複数、または具体的なサブタイプ名を選択できます。 サブタイプは、グリッド内でサブタイプ列のドロップダウン メニューから直接変更できます。

  3. フィルター ドロップダウン矢印をクリックして、フィルター クエリーを構成します。

    フィルターをビューに適用すると、フィルター ボタン が青色でハイライト表示されます。

属性ルールの作成

属性ルールは最初から作成することも、属性ルール ビューやジオプロセシング ツールを使用して既存のテンプレートから作成することもできます。

注意:

データセットに属性ルールを追加すると、後方互換性に影響があります:

  • 属性ルールは、データセットに追加された後に、ArcMap または ArcGIS Pro 2.0 以前のリリースとの互換性がなくなります。 クライアントとジオデータベースのバージョンが異なる場合の利用可能な機能については、「クライアントとジオデータベースの互換性」をご参照ください。

  • 新しい Arcade 関数は、ArcGIS クライアントのどのリリースが属性ルールを含むデータセットにアクセスできるかに影響を与えます。 詳細については、「スクリプト式における Arcade の互換性」をご参照ください。

データの準備

属性ルールを作成する前に、以下を確認します。

  • データ ソースがそのルール タイプでサポートされていること、および基のデータセットが排他ロックされていること。

  • GlobalID が有効になっていること。

  • 遅延評価タイプのルール (バッチ計算ルールと検証ルール) で編集情報の記録が有効になっていること。

  • エンタープライズ ジオデータベースで、自分がデータの所有者であること。

即時計算属性ルールの作成

属性ルール ビューで即時計算属性ルールを作成するには、次の手順を実行します:

  1. 属性ルール ビューを開きます。

  2. 属性ルール タブの ルールの追加 グループで、計算ルールのボタンをクリックし、ドロップダウンから即時計算を選択します。

    ルールの追加グループ

    選択したルール タイプは、属性ルール ビューで有効になります。詳細ウィンドウが表示されるので、ここで新しいルールの詳細を入力します。

  3. 属性ルール ビューの詳細ウィンドウに、新しい属性ルールのプロパティを入力します。

    • ルール名 - ルールの一意の名前

    • 説明 - ルールとともに保存されている説明

    • サブタイプ - データセットにサブタイプが含まれる場合にルールが適用されるサブタイプ

    • フィールド - ルールの適用先となるフィールドの名前

    • 編集可能 - ルールに指定されたフィールドが編集可能かどうかを決定するチェックボックス

    • - ルールを定義する Arcade 式:

      • 式の設定 を使用して、Arcade スクリプトを構成し確認します。

      • 構文エラーがある場合、行番号と理由がエラーに記されます。 式の設定 で行番号を確認するには、式のテキスト ボックスを右クリックし、ライン番号の表示 を選択します。

      • 属性ルール スクリプト式の作成の詳細

    • トリガー - ルールをトリガーする編集イベント:

      • 挿入 - このルールは新しいフィーチャの追加時に適用されます。

      • 更新 - このルールはフィーチャが更新された時点で適用されます。

      • 削除 - このルールはフィーチャが削除された時点で適用されます。

    • トリガー フィールド - フィーチャが更新されるとき、属性ルールの実行をトリガーするフィールド。

      注意:

      トリガー イベントが更新の場合のみ適用されます。

    • 実行 - ルールの評価動作を指定する設定:

      • アプリケーション評価から除外 - オンにした場合、ルールはアプリケーションまたはクライアントにより評価されず、編集が適用された時点で評価されます。

      • 無効 - オンにすると、ルールが無効化されます。

    • エラー番号 - ルールの違反が発生した場合に返されるエラー番号

    • エラー メッセージ - ルールの違反が発生した場合に返されるエラー メッセージ

    • タグ - ルールを識別する一連のタグ

  4. 属性ルール タブの 保存 ボタン をクリックします。

データセットに属性ルールが作成されます。

バッチ計算属性ルールの作成

属性ルール ビューでバッチ計算属性ルールを作成するには、次の手順を実行します:

  1. 属性ルール ビューを開きます。

  2. 属性ルール タブの ルールの追加 グループで、計算ルールのボタンをクリックし、ドロップダウンからバッチ計算を選択します。

    ルールの追加グループ

    選択したルール タイプは、属性ルール ビューで有効になります。詳細ウィンドウが表示されるので、ここで新しいルールの詳細を入力します。

  3. 属性ルール ビューの詳細ウィンドウに、新しい属性ルールのプロパティを入力します。

    • ルール名 - ルールの一意の名前

    • 説明 - ルールとともに保存されている説明

    • サブタイプ - データセットにサブタイプが含まれる場合にルールが適用されるサブタイプ

    • フィールド - ルールの適用先となるフィールドの名前

    • 編集可能 - ルールに指定されたフィールドが編集可能かどうかを決定するチェックボックス

    • - ルールを定義する Arcade 式:

      • 式の設定 を使用して、Arcade スクリプトを構成し確認します。

      • 構文エラーがある場合、行番号と理由がエラーに記されます。 式の設定 で行番号を確認するには、式のテキスト ボックスを右クリックし、ライン番号の表示 を選択します。

      • 属性ルール スクリプト式の作成の詳細

    • 実行 - ルールの評価動作を指定する設定:

      • 無効 - オンにすると、ルールが無効化されます。

      • バッチ - オンにすると、ルールはバッチ計算ルールとなり、検証サービスを使用して評価される必要があります。

    • エラー番号 - ルールの違反が発生した場合に返されるエラー番号

    • エラー メッセージ - ルールの違反が発生した場合に返されるエラー メッセージ

    • タグ - ルールを識別する一連のタグ

  4. 属性ルール タブの 保存 ボタン をクリックします。

データセットに属性ルールが作成されます。

制約属性ルールの作成

属性ルール ビューで制約属性ルールを作成するには、次の手順を実行します:

  1. 属性ルール ビューを開きます。

  2. 属性ルール タブの ルールの追加 グループで、制約ルールのボタンをクリックします

    選択したルール タイプは、属性ルール ビューで有効になります。詳細ウィンドウが表示されるので、ここで新しいルールの詳細を入力します。

  3. 属性ルール ビューの詳細ウィンドウに、新しい属性ルールのプロパティを入力します。

    • ルール名 - ルールの一意の名前

    • 説明 - ルールとともに保存されている説明

    • サブタイプ - データセットにサブタイプが含まれる場合にルールが適用されるサブタイプ

    • - ルールを定義する Arcade 式:

      • 式の設定 を使用して、Arcade スクリプトを構成し確認します。

      • 構文エラーがある場合、行番号と理由がエラーに記されます。 式の設定 で行番号を確認するには、式のテキスト ボックスを右クリックし、ライン番号の表示 を選択します。

      • 属性ルール スクリプト式の作成の詳細

    • トリガー - ルールをトリガーする編集イベント:

      • 挿入 - このルールは新しいフィーチャの追加時に適用されます。

      • 更新 - このルールはフィーチャが更新された時点で適用されます。

      • 削除 - このルールはフィーチャが削除された時点で適用されます。

    • トリガー フィールド - フィーチャが更新されるとき、属性ルールの実行をトリガーするフィールド。

      注意:

      トリガー イベントが更新の場合のみ適用されます。

    • 実行 - ルールの評価動作を指定する設定:

      • アプリケーション評価から除外 - オンにした場合、ルールはアプリケーションまたはクライアントにより評価されず、編集が適用された時点で評価されます。

      • 無効 - オンにすると、ルールが無効化されます。

    • エラー番号 - ルールの違反が発生した場合に返されるエラー番号

    • エラー メッセージ - ルールの違反が発生した場合に返されるエラー メッセージ

    • タグ - ルールを識別する一連のタグ

  4. 属性ルール タブの 保存 ボタン をクリックします。

データセットに属性ルールが作成されます。

検証属性ルールの作成

属性ルール ビューで検証属性ルールを作成するには、次の手順を実行します:

  1. 属性ルール ビューを開きます。

  2. 属性ルール タブの ルールの追加 グループで、検証ルールのボタンをクリックします。

    選択したルール タイプは、属性ルール ビューで有効になります。詳細ウィンドウが表示されるので、ここで新しいルールの詳細を入力します。

  3. 属性ルール ビューの詳細ウィンドウに、新しい属性ルールのプロパティを入力します。

    • ルール名 - ルールの一意の名前

    • 説明 - ルールとともに保存されている説明

    • サブタイプ - データセットにサブタイプが含まれる場合にルールが適用されるサブタイプ

    • - ルールを定義する Arcade 式:

      • 式の設定 を使用して、Arcade スクリプトを構成し確認します。

      • 構文エラーがある場合、行番号と理由がエラーに記されます。 式の設定 で行番号を確認するには、式のテキスト ボックスを右クリックし、ライン番号の表示 を選択します。

      • 属性ルール スクリプト式の作成の詳細

    • 実行 - ルールの評価動作を指定する設定:

      • アプリケーション評価から除外 - オンにした場合、ルールはアプリケーションまたはクライアントにより評価されず、編集が適用された時点で評価されます。

      • 無効 - オンにすると、ルールが無効化されます。

    • エラー番号 - ルールの違反が発生した場合に返されるエラー番号

    • エラー メッセージ - ルールの違反が発生した場合に返されるエラー メッセージ

    • 重要度 - エラーの重要度。 値は 1 (高) ~ 5 (低) の範囲で定義されます。

    • タグ - ルールを識別する一連のタグ

  4. 属性ルール タブの 保存 ボタン をクリックします。

データセットに属性ルールが作成されます。

属性ルール テンプレートから属性ルールを作成する

属性ルール テンプレートは、特定のワークフロー用の属性ルールを作成するため役立ちます。

属性ルール ビューでテンプレートから属性ルールを作成するには、次の手順を実行します:

  1. 属性ルール ビューを開きます。

  2. 次のいずれかのオプションを使用して、属性ルール テンプレート ダイアログ ボックスを開きます。

    • 属性ルール タブの ルールの追加 グループで、計算ルール ボタンの下半分をクリックし、テンプレート をクリックして、テンプレート属性ルールの 1 つをクリックします。

    • 属性ルール ビューで、ルールの追加 ボタンのドロップダウン メニューをクリックし、テンプレート をクリックして、テンプレート属性ルールの 1 つをクリックします。

    テンプレート ルール ダイアログ ボックスが表示されます。 各ダイアログ ボックスには、選択した属性ルール テンプレートに固有のオプションとパラメーターが表示されます。

    テンプレート属性ルールの詳細

    注意:

    ダイアログ ボックスの上端には、データセットの名前とともに、属性ルール テンプレートの名前が表示されます。

  3. 各パラメーターの値を入力し、OK をクリックします。

    入力された値が属性ルール ビューに表示されます。

  4. 属性ルール プロパティを確認し、必要ならルール名や説明などに変更を加えてから、保存 をクリックします。

属性ルールの管理

データセットに属性ルールを作成したら、属性ルール ツールセットのツールと属性ルール ビューを使用してルールを表示および管理できます。 データセットに対して arcpy.Describe 関数を使用すると、属性ルール プロパティを印刷できます。 属性ルールのエクスポート ツールの使用時に作成されたカンマ区切り値ファイル (.csv) から、データセットの属性ルールを表示することもできます。

属性ルール ビューでは、ビューが開かれているデータセットまたはレイヤーの属性ルールを操作できます。 ビューがアクティブなとき、編集の管理編集インポート/エクスポート グループには、ルールを管理するためのツールとコマンドが含まれています。 これらのツールは、ビューおよび詳細ウィンドウと一緒に使用できます。

  • 保存 - 行った編集を確定します。

  • ルールの削除 - 選択したルールを削除します。

  • ルールの有効化 - 選択したルールを有効化します。

  • ルールの無効化 - 選択したルールを無効化します。

  • ルールのインポート - .csv ファイルから属性ルールをインポートします。

  • ルールのエクスポート - .csv ファイルに属性ルールをエクスポートします。

ヒント:

行ヘッダーを右クリックすると、次のショートカット メニュー コマンドにアクセスできます:

  • 切り取り、コピー、貼り付け - 一般的なクリップボード操作を使用します。

  • 削除 - 属性ルールを削除します。

  • 元に戻す - 保存操作を行う前に、削除した属性ルールを元に戻します。

データセットに対して属性ルールを一時的に無効にするには、属性ルール ビューを使用するか、属性ルールの無効化 および 属性ルールの有効化 ツールを使用します。 これにより、一括データ読み込みのパフォーマンスが向上するため、ルールの実行を一時停止する必要がある場合に便利です。

既存のデータセット間で属性ルールを転送する場合は、属性ルールのエクスポート および 属性ルールのインポート ツールを使用します。 属性ルールのエクスポート ツールでは、属性ルールの定義が .csv ファイルに格納されます。

属性ルールは、ジオデータベース内のフィーチャクラスまたはテーブルのプロパティとして作成されます。 属性ルールは、ジオデータベースのデータセットとともにデータ転送プロセスに含まれます。コピーおよび貼り付け操作を行うか、XML ワークスペース ドキュメントのエクスポート および XML ワークスペース ドキュメントのインポート ツールを使用します。 フィーチャクラス → フィーチャクラステーブル → テーブル などのデータ移行ツールでは、基になるデータセットを含む属性ルールが転送されません。 バッチ計算および検証ルールを含むデータセットの場合、作成される出力データセットで検証ステータス属性がリセットされます。

注意:

コピーおよび貼り付け操作および XML ワークスペース ドキュメントを使用してデータセットを属性ルールとともに転送するとき、属性ルールのスクリプト式で参照される順序が含まれます。

既存のルール プロパティの変更

属性ルールを作成したら、属性ルール ビューを使用して特定のプロパティを変更できます。 属性ルールを変更するには、基本データセットを排他ロックする必要があります。

既存の属性ルールを変更するには、次の手順を実行します。

  1. 属性ルール ビューを開きます。

  2. 属性ルール ビューで、変更するルールのルール タイプを選択します。

    • 計算

    • 制約

    • 検証

  3. 特定の行をクリックして、変更するルールを選択します。

    詳細ウィンドウにルール プロパティが表示されます。

  4. 詳細ウィンドウで、次のルール プロパティのいずれかを変更します。

    • 説明

    • サブタイプ

    • トリガー

    • トリガー フィールド

    • チェックボックスの無効化 (実行セクション)

    • アプリケーション評価から除外 (実行セクション)

    • エラー番号

    • エラー メッセージ

    • タグ

    注意:

    読み取り専用のルール プロパティは変更できません。 これらのプロパティを変更するには、ルールを削除してもう一度作成する必要があります。

  5. 計算ルールと制約ルールのみの場合、必要に応じて、評価順序を変更できます。 ビューの 計算 タブまたは 制約 タブをクリックします。 ビューのルール リスト セクションで、ルールが評価される順序を変更したいルールの 順序 列値を変更します。 評価順序の詳細については、計算ルール制約ルールをご参照ください。

  6. 属性ルール タブの 保存 ボタン をクリックします。

    属性ルールのプロパティが更新されます。

データセット間での属性ルールのコピー

データセットに属性ルールを作成したら、所有している他のデータセットでも有益な場合があります。 同じルール タイプの属性ルールをデータセット間でコピーするには、いくつかの方法があります。 次の操作が可能です。

  • コピー/貼り付け

  • 属性ルールのインポートとエクスポート

注意:

属性ルールへのサブタイプの適用は、属性ルールをデータセットにコピーまたはインポートした後で行う必要があります。

コピーと貼り付け

属性ルール ビューでのコピーと貼り付けは、キーボード ショートカット、ショートカット メニュー、クリップボードを使用してサポートされています。

データセット間で属性ルールをコピーするには、次の手順を実行します。

  1. 目的の属性ルールを含むコピー元のデータセットと、属性ルールを追加する先のデータセットで、属性ルール ビューを開きます。

    コピー元のデータセットとコピー先のデータセットの属性ルール ビューが開きます。

  2. 属性ルールを含むコピー元のデータセットから、ルール タイプをクリックし、コピー先のデータセットにコピーする属性ルールを 1 つ以上選択してコピーをクリックします。

    属性ルールがクリップボードに追加され、貼り付け用に参照できます。

  3. コピー先のデータセットで、コピー元のデータセットからコピーした属性ルールと一致するルール タイプをクリックし、貼り付けをクリックします。

    コピー先のデータセットに属性ルールが追加されます。

  4. 属性ルール タブの 保存 ボタン をクリックします。

    コピー先のデータセットに属性ルールが保存されます。

属性ルールのエクスポート

エクスポートとインポートは、属性ルールの共有やデータセットのルールのバックアップの作成に役立ちます。 データセットの属性ルールをエクスポートすると、エクスポート先のデータセットへのインポートに使用できるカンマ区切り値ファイル (.csv) が作成されます。 .csv ファイルには、属性ルールに関するメタデータ情報と Arcade スクリプトが含まれます。

属性ルール コンテキスト タブ上の 属性ルール グループにある ルールのエクスポート または属性ルールのエクスポート ジオプロセシング ツールを使用できます。 データセットの属性ルールをエクスポートするには、次の手順を実行します。

  1. 属性ルールのエクスポート元のデータセットで、属性ルール ビューを開きます。

    データセットの属性ルール ビューが開きます。

  2. 属性ルール コンテキスト タブで、ルールのエクスポート ボタンをクリックします。

    ルールのエクスポート ボタンは 属性ルール グループにあります。

    ルールのエクスポート ダイアログ ボックスが表示されます。

  3. .csv ファイルを保存するフォルダーを参照して、ファイルの名前を入力し、保存 をクリックします。

    指定した場所の .csv にデータセットの属性ルールが保存されます。

属性ルールのインポート

属性ルールをインポートするには、属性ルール コンテキスト タブ上の 属性ルール グループにある ルールのインポート または属性ルールのインポート ジオプロセシング ツールを使用するか、カタログ ウィンドウ、カタログ ビュー、ファイル エクスプローラーを使用して、エクスポートした属性ルールの .csv ファイルを属性ルール ビューにドラッグします。

データセットの属性ルールをインポートするには、次の手順を実行します。

  1. 属性ルールのインポート先のデータセットで、属性ルール ビューを開きます。

    データセットの属性ルール ビューが開きます。

  2. 属性ルール コンテキスト タブで、ルールのインポート ボタンをクリックします。

    ルールのインポート ボタンは 属性ルール グループにあります。

    ルールのインポート ダイアログ ボックスが表示されます。

  3. エクスポートした属性ルールの .csv ファイルがあるフォルダーを参照して、1 つまたは複数の .csv ファイルを選択し、OK をクリックします。

    属性ルール ビューにデータセットの属性ルールが追加されます。

  4. 属性ルール タブの 保存 ボタン をクリックします。

    インポート先のデータセットに属性ルールが保存されます。