ナレッジ グラフのエンティティーとリレーションシップを作成して、既存のテーブル データを表現できます。 テーブルのフィールドに含まれるデータは、エンティティーとリレーションシップのプロパティに変換できます。 フィーチャクラスのジオメトリーは、エンティティーの空間フィーチャに読み込むことができます。
テーブル データをナレッジ グラフ アイテムに変換する方法は、テーブルの読み込みウィザードを使用して定義します。 変換プロセスを定義する間、作業内容を保存できます。 データを変換する手順が、データ読み込み構成として、現在のプロジェクトの調査に保存されます。 既存のデータ読み込み構成は、類似したテーブルとフィーチャクラスに対応するように変更できます。
変換プロセスを実行すると、データが現在の調査のナレッジ グラフに読み込まれます。 新しいリンク チャートを作成することで、変換プロセスの結果を表示して、評価できます。
データ読み込み構成は、テーブルのデータを読み取って処理する方法を指定します。 テーブルの読み込みプロセスでは、ナレッジ グラフのエンティティーとリレーションシップを作成して、データを表現します。 来歴レコードを作成し、データの取得元のソース資料を指定することもできます。
テーブルの読み込みウィザードを開く
テーブルの読み込みウィザードを開いて、テーブル データを、調査のナレッジ グラフにインポートします。
- ArcGIS Pro で、調査を開きます。
- リボンの [調査] タブで、[データの読み込み] グループの [テーブルの読み込み]
をクリックします。
テーブルの読み込みウィザードが、調査と並んで、新しいビューに表示されます。
読み込むテーブルの識別
変換するデータを含むテーブルまたはフィーチャクラスを、ウィザードの [ようこそ] ページで指定します。 この操作の基準として使用できる既存のデータ読み込み構成がある場合は、その構成情報をウィザードにインポートできます。
データ読み込み構成は、現在の調査からのみ、ウィザードにインポートできます。 異なるプロジェクトを含め、別の調査からデータ読み込み構成をコピーして、その情報をインポートすることができます。
- [ソース テーブル] テキスト ボックスの横にある参照ボタン
をクリックします。 - 表示されるダイアログ ボックスで、調査のナレッジ グラフに読み込むデータを含むテーブルまたはフィーチャクラスを参照してクリックし、[OK] をクリックします。
- 必要に応じて、[データ読み込み構成] ドロップダウン矢印をクリックして、該当するデータ読み込み構成をクリックします。
[列のマッピング] テーブルが表示されます。
- 構成列にマッピングする空の [ソース列テーブル] フィールドをクリックします。 必要に応じて、自動的にマッピングされたソース テーブル フィールドをクリックして、フィールドの割り当てを変更します。
- ドロップダウン リストからソース テーブル列を選択します。
ステータスが「マッピングの変更を保留しています」に変わります。
- 上記の手順を繰り返して、すべてのソース テーブル列を構成列にマッピングします。
- [マッピングを適用] をクリックします。
ステータスが「列が正常にマッピングされました」に変わります。
- 必要に応じて、[リセット] をクリックして、すべての列のマッピングを元に戻します。
- [次へ] をクリックして、ウィザードの [エンティティー] ページに進みます。
ヒント:
ソース テーブルまたはフィーチャクラスおよび初期のデータ読み込み構成は、リボンの [テーブルの読み込み] タブにあるボタンを使用して、指定することもできます。 これらの設定は、任意の時点で変更できますが、以前にウィザードで定義した設定は、すべて失われます。
ナレッジ グラフに作成するエンティティーの定義
ソース テーブルまたはフィーチャクラスで、データが、ナレッジ グラフのエンティティーを表すフィールドを識別します。 ソース テーブルのフィールドは、[列名] リストに表示されます。 個別の [エンティティー] テーブルで、各フィールドのデータが、ナレッジ グラフのエンティティー タイプにどのように関連付けられるかを定義できます。
たとえば、ソース テーブルが会社の従業員を表している場合は、その情報をナレッジ グラフにインポートして、テーブルの行ごとに 1 つの Employee エンティティーを作成できます。 このエンティティーを表すために選択するフィールドは、Employee エンティティー タイプの一意の識別子 (従業員 ID 番号など) でなければなりません。 従業員のフル ネームといった他のプロパティは、一意であることが保証されません。
列名リストは、使用中フィールドと未使用フィールドに分かれています。 新しいデータ読み込み構成を開始した場合、すべてのフィールドは、未使用リスト内にあります。 テーブルの ID フィールドに従業員 ID 番号が含まれており、それをグラフのエンティティーの定義に使用すると、フィールドは使用中リストに移動します。 既存のデータ読み込み構成を開始した場合、テーブルのフィールドは、ウィザードのさまざまなページで使用されている可能性があります。いずれかのページで使用中のフィールドは、列名リストで使用中として表示されます。
複数のテーブルに、別々のオフィスの従業員情報が格納されている場合があります。 1 つのテーブルをインポートした後に、2 つ目のテーブルのインポートを準備するときは、地域担当営業マネージャーなど、複数のテーブルに表示される従業員を考慮に入れる必要があります。 エンティティーのマージ方法を指定せずに、両方のテーブルをインポートすると、結果として、同一の地域担当営業マネージャーの 2 つのエンティティーが、ナレッジ グラフ内に存在することになります。 テーブルのデータが、エンティティーを一意に識別するものであり、ナレッジ グラフの既存のエンティティーに同じ情報を含むプロパティが指定されていれば、重複の作成を避けることができます。
エンティティーは、図形プロパティなどのプロパティによってマージできます。 エンティティーをマージすることにした場合、データ読み込みプロセスでは、ナレッジ グラフの既存の Employee インスタンスごとに、テーブルのフィールドに格納された入力とエンティティー タイプの対応するプロパティが比較されます。 同じ識別子で、同じタイプのエンティティーが、ナレッジ グラフに存在する場合は、新しいインスタンスが作成される代わりに、テーブルのデータが、既存のナレッジ グラフ エンティティーに格納されるか、関連付けられます。 つまり、テーブル内のエンティティーとナレッジ グラフ内のエンティティーがマージされます。 入力データが既存のエンティティーに対応しない場合、そのエンティティー タイプの新しいインスタンスが、ナレッジ グラフに作成されます。
一般的に、可能であれば、データ読み込みプロセス中に、エンティティーをマージすることをおすすめします。 多くのエンティティーをマージできますが、テーブルまたはナレッジ グラフのエラーやギャップによって、一部のエンティティーが、マージできないことがあります。 このような場合、テーブルの読み込み設定を構成して欠落したデータを処理するか、テーブルの読み込みプロセスの完了後にエンティティーを手動でマージすることができます。
- ナレッジ グラフで、作成または更新される個々のエンティティーを識別するキーを指定します。
- [列名] リストで、データがエンティティーを一意に識別するフィールドをダブルクリックします。 フィールド名が Entity Key 列の [エンティティー] テーブルに追加されます。
- [エンティティー] テーブルの一番下にある空の行をクリックします。 Entity Key 列内をクリックし、識別子を入力します。
- [エンティティー] テーブルの Entity Type 列内をクリックし、エンティティー インスタンスが、作成または更新されるタイプを定義します。
- ナレッジ グラフで、すでに定義されているエンティティー タイプについては、ドロップダウン リストで、エンティティー タイプをクリックします。 テキスト ボックスの入力を開始すると、既存のエンティティー タイプの名前が自動入力されます。
- ナレッジ グラフの新しいエンティティー タイプを定義するには、新しいタイプの名前を入力します。 ウィザード全体を通じて、新しいタイプは、アスタリスクで識別されます。 可能であれば、既存のエンティティー タイプを使用します。
- ソース テーブルのフィールドが、作成するエンティティーのタイプを指定する場合は、ドロップダウン リストの一番下にある [列] オプションをクリックします。 リストが、ソース テーブル内のすべてのフィールドを表示するよう変更されます。 ナレッジ グラフに作成するエンティティーのタイプを指定するデータのフィールドをクリックします。
- 入力テーブルに存在しないエンティティー タイプを指定するには、リストから [複数のタイプのルックアップ] オプションをクリックします。
- ArcGIS Arcade 式を使用して、エンティティー タイプを指定するには、ドロップダウン リストの一番下の [式の設定] オプション
をクリックします。 [式の設定] ダイアログ ボックスを使用し、作成するエンティティーのタイプを示す Arcade 式を作成し、[OK] をクリックします。
エンティティーがテーブルのフィールドを使用して定義されている場合、フィールドは、[列名] リストの未使用セクションから、使用中セクションに移動します。
- 必要に応じて、 Merge 列をオンにして、可能であれば、エンティティーをマージします。
マージが有効になると、入力データは、ナレッジ グラフの既存のエンティティーと比較されます。 入力データが既存のエンティティーに対応しない場合、そのエンティティー タイプの新しいインスタンスが、ナレッジ グラフに作成されます。 ウィザードの [プロパティ] ページ、または図形プロパティでマージする場合は [空間] ページで追加のルールを指定して、エンティティーのマージに使用するエンティティー タイプ プロパティを定義する必要があります。
- 追加のエンティティーを定義するには、上記の手順を繰り返します。
ナレッジ グラフで、リレーションシップを定義するには、リレーションシップの起点エンティティー タイプと終点エンティティー タイプの両方を、[エンティティー] テーブルで指定する必要があります。 エンティティー タイプが入力テーブルに存在しない場合は、[複数のタイプのルックアップ] を実行してリレーションシップを定義できます。
- [次へ] をクリックして、ウィザードの [リレーションシップ] ページに進みます。
ヒント:
データ読み込み構成として定義したルールは、いつでも調査に保存できます。 リボンの [テーブルの読み込み] タブの [構成] グループで、[保存] ドロップダウン矢印をクリックし、[保存]
または [名前を付けて保存]
をクリックします。 既存のデータ読み込み構成を選択するか、名前を入力して、新しい構成を作成します。 調査とデータ読み込み構成は、プロジェクトに保存されるため、ユーザーがさらにプロジェクトを保存するまで、変更内容は完全には保存されません。
ナレッジ グラフに作成するリレーションシップの定義
ソース テーブルまたはフィーチャクラスのデータを使用して、エンティティー間のリレーションシップを確立できます。 データ読み込みプロセスの一部としてリレーションシップを作成するには、リレーションシップの関連元エンティティーと関連先エンティティーの両方をウィザードの [エンティティー] ページで定義する必要があります。 リレーションシップは、関連元エンティティーから関連先エンティティーへの一方向で記述されます。
たとえば、組織の従業員を表すテーブルのフィールドで、従業員のマネージャーを定義できます。 WorksFor リレーションシップ タイプを定義して、従業員とそのマネージャー間の関連を把握できます。 WorksFor リレーションシップでは、関連元エンティティーと関連先エンティティーの両方に、Employee エンティティー タイプを指定できます。 テーブルの各行が処理されるときに、現在の従業員が、リレーションシップの関連元エンティティーになり、そのマネージャーである従業員が、リレーションシップの関連先エンティティーになります。
エンティティーと同様に、テーブルに定義されたリレーションシップを、ナレッジ グラフの既存のリレーションシップとマージできます。 リレーションシップをマージする場合、データ読み込みプロセスでは、テーブルのエンティティーとナレッジ グラフの既存のエンティティーが比較され、関連元エンティティーと関連先エンティティーが、マージ可能かどうかが決定されます。 エンティティーをマージできる場合は、エンティティー間に同じタイプのリレーションシップがすでに存在しているかどうかを確認するために、ナレッジ グラフが調査されます。同じタイプのリレーションシップが存在している場合、リレーションシップも同様にマージされます。 たとえば、関連元エンティティーはマージできるが、関連先エンティティーはマージできない場合、既存の関連元エンティティーから新しい関連先エンティティーまでの新しいリレーションシップが作成されます。
一般的に、可能であれば、データの読み込みプロセス中に、リレーションシップをマージすることをおすすめします。 エンティティーと同様に、テーブルまたはナレッジ グラフのエラーやギャップによって、リレーションシップが、マージできないことがあります。 テーブルの読み込みプロセスの完了後に、手動でリレーションシップをマージできます。
- テーブルの一番下にある空の行をクリックして、新しいリレーションシップを定義します。
- Origin Entity 列内をクリックし、[エンティティー] ページで、リレーションシップの起点として定義されたエンティティー タイプをクリックします。
- Relationship Type 列内をクリックして、ナレッジ グラフの新しいインスタンスが作成されるリレーションシップ タイプを定義します。
- ナレッジ グラフで、すでに定義されているリレーションシップ タイプについては、ドロップダウン リストで、リレーションシップ タイプをクリックします。 テキスト ボックスの入力を開始すると、既存のリレーションシップ タイプの名前が自動入力されます。
- ナレッジ グラフの新しいリレーションシップ タイプを定義するには、新しいタイプの名前を入力します。 ウィザード全体を通じて、新しいタイプは、アスタリスクで識別されます。 可能であれば、既存のリレーションシップ タイプを使用します。
- ソース テーブルのフィールドが、作成するリレーションシップのタイプを指定する場合は、ドロップダウン リストの一番下にある [列] オプションをクリックします。 リストが、テーブル内のすべてのフィールドを表示するよう変更されます。 ナレッジ グラフに作成するリレーションシップのタイプを指定するデータのフィールドをクリックします。
- Arcade 式を使用して、リレーションシップ タイプを指定するには、ドロップダウン リストの一番下の [式の設定] オプション
をクリックします。 [式の設定] ダイアログ ボックスを使用し、作成するリレーションシップのタイプを示す Arcade 式を作成し、[OK] をクリックします。
- Destination Entity 列内をクリックし、[エンティティー] ページで、リレーションシップの終点として定義されたエンティティー タイプをクリックします。
- 必要に応じて、Merge 列をオンにして、可能であれば、リレーションシップをマージします。
マージが有効になると、入力データは、ナレッジ グラフの既存のエンティティーとリレーションシップと比較されます。 入力データが既存のリレーションシップに対応しない場合、リレーションシップの新しいインスタンスが、ナレッジ グラフに作成されます。 ウィザードの [プロパティ] ページで追加のルールを指定し、リレーションシップのマージに使用するリレーションシップ タイプ プロパティを定義する必要があります。
- [次へ] をクリックして、ウィザードの [プロパティ] ページに進みます。
複数のタイプのルックアップを使用したリレーションシップの定義
ソース テーブルにエンティティー タイプが含まれていない場合や、別々のテーブルでエンティティーとリレーションシップを操作している場合は、ソース テーブルまたはフィーチャクラスで、ナレッジ グラフの既存のエンティティーのプロパティとデータが一致するフィールドを識別して、リレーションシップを定義できます。 一致するものが見つからない場合は、指定したタイプのエンティティーを作成することもできます。
たとえば、従業員の部門の割り当てと直属のマネージャーを記述するリレーションシップ テーブルで、フィールドを使用して、従業員の ID 番号、従業員の部門またはマネージャー ID、および WorksIn または WorksFor リレーションシップ タイプを定義できます。 WorksIn リレーションシップ タイプを定義して、従業員とその部門 ID 間の関連を把握し、WorksFor リレーションシップ タイプを定義して、従業員とそのマネージャー ID 間の関連を把握することができます。 ソース テーブルに含まれているエンティティー タイプがなくても、WorksIn または WorksFor リレーションシップの関連先エンティティーを定義できます。 テーブルの各行が処理されるときに、現在の従業員が、リレーションシップの関連元エンティティーになり、従業員が働く部門または従業員の直属のマネージャーが、リレーションシップの関連先エンティティーになります。
- ナレッジ グラフで、作成または更新される個々のエンティティーを識別するキーを指定します。
- [列名] リストで、データがエンティティーを一意に識別するフィールドをダブルクリックします。 フィールド名が Entity Key 列の [エンティティー] テーブルに追加されます。
- [エンティティー] テーブルの一番下にある空の行をクリックします。 Entity Key 列内をクリックし、識別子を入力します。
- Entity Type 列内をクリックし、[複数のタイプのルックアップ] をクリックします。
[複数のタイプのルックアップ] ダイアログ ボックスが表示されます。
- [エンティティー タイプ] リストで、ソース テーブルまたはフィーチャクラスと一致するプロパティを含む可能性があるエンティティー タイプをクリックします。 必要に応じて、Ctrl を押しながらクリックして、複数のエンティティー タイプを選択します。
- [プロパティ] テーブルの Property Name 列内をクリックして、ソース テーブルまたはフィーチャクラス内で一致する可能性があるプロパティを選択します。
[サマリー] リストが、各エンティティー タイプに対して選択されたプロパティで更新されます。
- Property Value 列内をクリックして、ソース テーブルのデータと一致する可能性があるプロパティを定義します。
- ナレッジ グラフのエンティティー タイプ プロパティと一致する可能性のある値を持つソース テーブルのフィールドをクリックします。 可能な限り、ソース テーブルまたはフィーチャクラスのフィールドを使用します。
- プロパティ値を指定するには、ドロップダウン リストの下部にある [値] オプションをクリックします。 テキスト ボックスに値を入力します。 値はプロパティ名のデータ タイプと一致する必要があります。
- Arcade 式を使用して、値を指定するには、ドロップダウン リストの一番下の [式の設定] オプション
をクリックします。 [式の設定] ダイアログ ボックスを使用し、プロパティに格納される値を返す Arcade 式を作成し、[OK] をクリックします。
- 必要に応じて、ダイアログ ボックスの下部にある [デフォルト エンティティー タイプ] チェックボックスをクリックします。
[デフォルト エンティティー タイプ] ドロップダウン メニューが赤色でハイライト表示されます。
- [デフォルト エンティティー タイプ] ドロップダウン メニューで、ルックアップ中に一致するものが見つからなかった場合にグラフに作成されるエンティティー タイプを選択します。
- ナレッジ グラフで、すでに定義されているエンティティー タイプについては、ドロップダウン リストで、エンティティー タイプをクリックします。
- ナレッジ グラフの新しいエンティティー タイプを定義するには、新しいタイプの名前を入力します。 新しいタイプはアスタリスクで区別できます。 可能であれば、既存のエンティティー タイプを使用します。
- [OK] をクリックします。
[複数のタイプのルックアップ] ダイアログ ボックスが閉じます。
- 追加のエンティティーを定義するには、上記の手順を繰り返します。
ナレッジ グラフで、リレーションシップを定義するには、リレーションシップの起点エンティティー タイプと終点エンティティー タイプの両方を、[エンティティー] テーブルで指定する必要があります。
- [次へ] をクリックして、ウィザードの [リレーションシップ] ページに進みます。
- テーブルの一番下にある空の行をクリックして、新しいリレーションシップを定義します。
- Origin Entity 列内をクリックし、[エンティティー] ページで、リレーションシップの起点として定義された [複数のタイプのルックアップ] のエンティティー キーをクリックします。
- Relationship Type 列内をクリックして、ナレッジ グラフの新しいリレーションシップが作成されるリレーションシップ タイプを定義します。
- Destination Entity 列内をクリックし、[エンティティー] ページで、リレーションシップの起点として定義された [複数のタイプのルックアップ] のエンティティー キーをクリックします。
- 必要に応じて、[マージ] 列をオンにして、可能であれば、リレーションシップをマージします。
- [次へ] をクリックして、ウィザードの [プロパティ] ページに進みます。
ナレッジ グラフに作成するプロパティの定義
ソース テーブルのデータを、ナレッジ グラフのエンティティーとリレーションシップのプロパティに格納できます。 これを実行するために、操作に使用できる複数の情報のリストが提供されます。 ソース テーブルまたはフィーチャクラスのすべてのフィールドのリスト、ウィザードの [エンティティー] ページで定義されたエンティティーのリスト、およびウィザードの [リレーションシップ] ページで定義されたすべてのリレーションシップのリストが用意されています。
- [列名] リストは、未使用フィールドと使用中フィールドの 2 つに分かれています。 エンティティーが [エンティティー] ページで定義済みと確認されたフィールドは使用中です。 テーブルの他のフィールドは、未使用リストに表示されます。
- [エンティティー] リストでは、エンティティー タイプが括弧で囲まれ、続いてフィールド名が表示されます。 たとえば、テーブルの ID フィールドに Employee エンティティーを一意に識別する従業員番号が格納されている場合、リストには (Employee) ID と表示されます。
- [リレーションシップ] リストでは、リレーションシップの関連元エンティティー、リレーションシップ タイプ、関連先エンティティーが、各エントリーに表示されます。 たとえば、関連元と関連先が Employee エンティティーで、リレーションシップ タイプが WorksFor の場合、リストには (Employee) ID WorksFor (Employee) ID と表示されます。
上記の 3 つのリストを使用して、ソース テーブルのデータを、エンティティーとリレーションシップのプロパティに変換するためのルールを定義します。 エンティティーまたはリレーションシップを選択すると、[プロパティ] テーブルに、定義済みのルールが表示されます。
各エンティティー タイプおよびリレーションシップ タイプについて、ソース テーブルまたはフィーチャクラスのデータを、エンティティー タイプまたはリレーションシップ タイプのプロパティに読み込む方法を定義するルールを追加します。 また、作成または更新されるエンティティーまたはリレーションシップのすべてのインスタンスに対し、プロパティに格納されるテキストを指定することもできます。
テーブルで定義されたエンティティーとリレーションシップを、ナレッジ グラフの既存のエンティティーとリレーションシップとマージするには、インスタンスを一意に識別するために使用する、すべてのプロパティ ルールを確認します。 たとえば、ソース テーブルの ID フィールドが Employee エンティティーを一意に識別するには、[マージに使用] をオンにし、新しい Employee エンティティーを作成するか、必要に応じて、既存の Employee エンティティーを更新します。 Person エンティティーが、人名と生年月日の組み合わせで一意に識別される場合、ソース テーブルの適切なフィールドを Person エンティティーの fullName プロパティおよび birthDate プロパティに関連付けるルールを定義し、両方のルールに対して、[マージに使用] をオンにします。
- [エンティティー] リストの最初のエンティティーがデフォルトで選択され、このエンティティーを定義するルールが、[プロパティ] テーブルに表示されます。 このエンティティーを使用して続行するか、別のグラフ アイテムを選択します。
- [プロパティ] テーブルの一番下にある空の行をクリックします。
- Property Name 列内をクリックし、選択したグラフ アイテムのプロパティを定義します。
- ナレッジ グラフで、すでに定義されているプロパティについては、ドロップダウン リストで、プロパティをクリックします。 テキスト ボックスの入力を開始すると、既存のプロパティ名が自動入力されます。
- ナレッジ グラフの新しいプロパティを定義するには、テキスト ボックス内をクリックして、新しいプロパティの名前を入力します。 ウィザード全体を通じて、新しいプロパティは、アスタリスクで識別されます。 可能な限り、既存のプロパティを使用します。
- 新しいプロパティを定義する場合、Data Type 列内をクリックし、該当するデータ タイプをクリックします。
既存のプロパティの場合は、データ タイプは、Data Type 列に自動的に表示され、タイプを変更することはできません。
- Property Value 列内をクリックし、グラフ アイテムのプロパティにデータを格納するためのルールを定義します。
- データが、エンティティーまたはリレーションシップのプロパティに格納されるテーブルのフィールドをクリックします。 このフィールドが、[列名] リスト内で、未使用から使用中に移動されます。
- テーブルに定義されたすべてのグラフ アイテムについて、このプロパティに保存される値をテキスト ボックスに入力します。 この値は、プロパティのデータ タイプに対して検証されます。つまり、整数プロパティにテキストが指定されている場合、値は格納されません。
- Arcade 式を使用して、値を指定するには、ドロップダウン リストの一番下の [式の設定] オプション
をクリックします。 [式の設定] ダイアログ ボックスを使用し、プロパティに格納される値を返す Arcade 式を作成し、[OK] をクリックします。
- テーブルのデータとナレッジ グラフの既存のアイテムを比較して、それらのアイテムがマージ可能かどうかを決定するときに、Use For Merge 列をオンにして、このプロパティを含めます。
ソース テーブルの各行のフィールド値は、ナレッジ グラフ内のエンティティーまたはリレーションシップの関連プロパティと比較されます。 すべてのフィールド値が、すべてのアイテム プロパティと一致する場合、テーブルによって記述されるアイテムは、ナレッジ グラフの既存のエンティティーまたはリレーションシップにマージできます。 既存のグラフ アイテムが、ソース テーブルで指定された追加情報で更新されます。
すべてのフィールド値が、すべてのアイテム プロパティと一致しない場合、テーブルによって記述されるアイテムは、ナレッジ グラフの既存のグラフ アイテムとマージできません。 ソース テーブルのデータを使用し、ナレッジ グラフに新しいエンティティーまたはリレーションシップが作成されます。
- 選択したエンティティーまたはリレーションシップの追加プロパティにデータを読み込むためのルールを定義します。
- [エンティティー] または [リレーションシップ] リストで別のグラフ アイテムを選択し、ソース テーブルのデータを、ナレッジ グラフのグラフ アイテム プロパティに変換する追加のルールを定義します。
- [次へ] をクリックして、ウィザードの [空間] ページに進みます。
注意:
[列名] リストから [プロパティ] テーブルに、フィールドをドラッグできます。 このフィールドは自動的に、Property Value 列に表示されます。 フィールド名とプロパティ名が一致する場合は、プロパティ名が自動的に、Property Name 列に表示されます。 フィールド名とプロパティ名が一致しない場合は、フィールドの名前が、グラフ アイテムとして作成される新しいプロパティの名前として、Property Name 列に表示されます。
エンティティーの空間フィーチャの定義
ソース テーブルまたはフィーチャクラスで、ナレッジ グラフのエンティティーを表す空間データを含むフィールドを識別します。 ウィザードの [エンティティー] ページで定義されたエンティティーが、テーブルの [エンティティー] 列に表示されます。
ナレッジ グラフでは、WGS84 座標系のみサポートされています。 すべてのフィーチャと座標で、この座標系が使用されるとみなされます。
ソース データがフィーチャクラスである場合、属性テーブルのジオメトリー フィールドを特定します。 ソース データがテーブルである場合、エンティティーのジオメトリーを定義する座標を含む 1 つ以上のフィールドを特定します。 座標は、LocateXT と同じ方法で評価されます。 たとえば、座標が UTM 形式で指定されている場合、座標は、ポイント ジオメトリーに変換され、ナレッジ グラフのエンティティーに関連付けられます。
座標が度 (10 進) 形式で指定されている場合、ほとんどの場合は最初に、緯度値、次に経度値を提供することで指定されます。 しかし、座標がより数学的な x,y 形式で指定されている場合は、有効なジオメトリーを生成するために、座標を経度、緯度として処理するオプションをオンにする必要があります。
テーブルで定義されたエンティティーを、図形プロパティに基づいてナレッジ グラフの既存のエンティティーとマージするには、インスタンスを一意に識別するために使用する、空間プロパティ ルールを作成します。 たとえば、ソース テーブルの位置フィールドが Building エンティティーを一意に識別するには、[マージに使用] をオンにし、新しい Building エンティティーを作成するか、必要に応じて、既存の Employee エンティティーを更新します。 空間プロパティを使用してエンティティーをマージするときに、ジオメトリーをディゾルブすることもできます。
注意:
[テーブルの読み込み] ウィザードを使用してジオメトリーをディゾルブする場合、[ディゾルブ] 関数が使用されます。 [ディゾルブ] ツールの詳細
- テーブルのデータを使用して、空間フィーチャを定義できる場合、各エンティティーの Create Spatial 列をオンにします。
既存のエンティティーの場合、データ タイプが、Geometry Type 列に表示されます。
- 新しくオンにしたエンティティー (エンティティー名の横にアスタリスクが示されている) の場合、ドロップダウン矢印をクリックし、該当するジオメトリー タイプをクリックします。
空間フィーチャが、Spatial Property Name 列に示されたエンティティーのプロパティに格納されます。 このプロパティ名は、変更できません。
- テーブル内のデータを比較して、エンティティーをマージできるかどうかを判定するときに、[マージに使用] チェックボックスをオンにして、図形プロパティを含めます。
ソース テーブルの各行のフィールド値は、ナレッジ グラフ内のエンティティーの関連する図形プロパティと比較されます。 すべてのフィールド値が、すべての図形プロパティと一致する場合、テーブルによって記述されるアイテムは、ナレッジ グラフの既存のエンティティーとマージできます。 既存のエンティティーが、ソース テーブルで指定された空間情報で更新されます。
図形プロパティの値が一致しない場合、テーブルによって記述されるアイテムは、ナレッジ グラフの既存のエンティティーとマージできません。 ソース テーブルのデータを使用して、ナレッジ グラフに新しいエンティティーが作成されます。
- 必要に応じて、Spatial Relationship 列内をクリックして、ジオメトリーをマージするためのルールを定義します。
- [交差する] - オーバーラップしているフィーチャがある図形プロパティを持つエンティティーがマージされます。
- [一定距離内にある] - 指定された距離内にある図形プロパティを持つエンティティーがマージされます。 この空間リレーションシップを使用して、検索距離と単位を定義できます。
- [一定距離内にある (測地線)] - 指定された距離内にある図形プロパティを持つエンティティーがマージされます。 これは、「一定距離内にある」と同じですが、フィーチャ間の距離は平面距離ではなく測地線の式を使用して計算されます。 この空間リレーションシップを使用して、検索距離と単位を定義できます。
- 必要に応じて、Search Distance 列内をクリックして、検索する距離の数値を入力します。
- 必要に応じて、Units 列内をクリックして、[検索] 距離の計測単位を選択します。
- オンにしたエンティティーごとに、その空間フィーチャが作成される方法を定義します。 テーブル内のエンティティーをクリックします。 テーブルの下に、[入力空間形式] ドロップダウン リストが表示されます。 ドロップダウン リストをクリックし、ソース テーブルまたはフィーチャクラスに格納されている空間データに該当するオプションをクリックします。
- [ジオメトリー] - ソース フィーチャクラスのジオメトリー フィールドに格納されている形状が、ナレッジ グラフのエンティティーに保存されます。 ジオメトリー フィールドを識別するために表示される [入力ジオメトリー フィールド] ドロップダウン リストを使用します。 ArcGIS ジオメトリー形式で定義されている形状が格納されるフィールドのみを、ナレッジ グラフに格納できます。
- [座標] - エンティティーの空間フィーチャが、テーブルのデータから構築されます。 フィーチャの座標を含むフィールドを指定します。 ソース テーブルのフィールドが、[利用可能なフィールド] リストに表示されます。 空間座標が格納されるフィールドごとに、フィールドをクリックして、[追加] をクリックします。フィールドが、[選択フィールド] リストに追加されます。 テーブルに格納されているデータに対して適切であれば、[経度、緯度として解釈] オプションをオンにします。
- [次へ] をクリックして、次のページに進みます。
ナレッジ グラフで、来歴が有効化されている場合、ウィザードは、[来歴] ページに進みます。 有効化されていない場合、[確認と実行] ページに進みます。
プロパティ値の来歴レコードの定義
来歴レコードを作成して、ナレッジ グラフのデータの取得元を確立できます (ナレッジ グラフでこの機能が有効化されている場合)。
ウィザードの [エンティティー] ページと [リレーションシップ] ページで定義されたエンティティーとリレーションシップのプロパティはすべて、[来歴] ページの上部に表示されます。 来歴レコードを作成し、これらのプロパティに格納されている値のソースを定義できます。
来歴レコードは、使用しているテーブル内のフィールドに格納されているソース情報に、プロパティ値を関連付けることができます。 URL、ファイル パス、または一連のプロパティ値のソース資料を説明するテキストも入力できます。 たとえば、特定のプロパティ値がすべて同じ Web サイトから取得された場合、その Web サイトの URL を参照する値ごとに、来歴レコードを作成できます。 新しいドキュメント エンティティーの作成にテーブル内の情報を使用している場合は、それらのドキュメントを参照する来歴レコードを作成することもできます。
ナレッジ グラフにすでに来歴レコードがある場合は、その来歴レコードを新しい来歴レコードのテンプレートとして使用できます。 たとえば、以前にナレッジ グラフに読み込まれた他のデータが同じ Web サイトから取得されている可能性があります。 既存の来歴レコードをテンプレートとして使用することで、スペル エラーを避けて、異なる時期に作成された来歴レコードとの間で、一貫性を確保できます。
[エンティティー/リレーションシップ プロパティ] テーブルから、1 つまたは複数のプロパティを選択します。 次の [来歴] テーブルに、選択した各プロパティ内の値ごとに、来歴レコードを作成する方法を定義します。
- [エンティティー/リレーションシップ プロパティ] テーブルから、プロパティを選択します。
エンティティー タイプとリレーションシップ タイプは Entity/Relationship 列に表示され、プロパティは Property 列に表示されます。
- 行をクリックして、記述されているプロパティを選択します。
- テーブル内の隣接する行で記述されている複数のプロパティを選択するには、Shift を押しながら、リスト内の別の行をクリックします。
- テーブル内で互いに隣接していない特定のプロパティを複数選択するには、Ctrl を押しながら、リスト内の追加する行をクリックします。
- ページの下部にある [来歴] テーブルで空白の行をクリックして、新しい来歴レコードを定義します。
- sourceType 列内をクリックして、表示されたコントロール内に、ソース情報のタイプを定義します。
3 つのソース タイプが、サポートされています。 来歴レコードのソースには、ナレッジ グラフ内のドキュメント、URL またはファイル パスで特定される Web サイトまたはファイル、ソース資料またはそのソース資料へのアクセス方法を定義するテキストを使用できます。
- コントロールの下部にある [値] オプションは、デフォルトで選択されています。 [Document]、[URL]、または [String] をクリックします。 各来歴レコードのタイプは、そのソース タイプ プロパティで同じになります。
- ソース タイプがテーブルのフィールドで定義されている場合、コントロールの下部にある [列] オプションをクリックします。 コントロールが、テーブル内のすべてのフィールドを表示するように変更されます。 来歴レコードのソース タイプを指定するデータのフィールドをクリックします。 各来歴レコードのソース タイプは、テーブルの該当する行の選択したフィールドにあります。
- Arcade 式を使用して、ソース タイプを指定するには、ドロップダウン リストの一番下の [式の設定] オプション
をクリックします。 [式の設定] ダイアログ ボックスを使用し、来歴レコードのソース タイプを示す Arcade 式を作成し、[OK] をクリックします。
- source 列内をクリックして、表示されたコントロール内に、来歴レコードのソースを定義します。
- コントロールの下部にある [値] オプションは、デフォルトで選択されています。 ソースが、ナレッジ グラフ内の他の来歴レコードで使用している URL またはテキストの場合、値の一部を入力します。 ナレッジ グラフ内にある既存の来歴レコードが検索され、一致するすべてのソースが表示されます。 検索結果リスト内の値にポインターを置き、既存の来歴レコードのプロパティを確認します。 リスト内の該当する値をクリックします。 既存の来歴レコードが、テンプレートとして使用されます。この来歴レコードに対して、来歴テーブル内のソースおよびその他すべての列が、自動的に設定されます。 各来歴レコードのテキストは、そのソース プロパティで同じになります。
- ソースが、他の来歴レコードで使用していない URL またはテキストの場合、新しい値を入力します。 既存の来歴レコードが検索されますが、一致する値は見つかりません。 コントロールの下部にある [新しい来歴] ボタンをクリックします。 各来歴レコードのテキストは、そのソースで同じになります。
- ソースが、テーブルのフィールドで定義されている場合、コントロールの下部にある [列] オプションをクリックします。 コントロールが、テーブル内のすべてのフィールドを表示するように変更されます。 来歴レコードのソースを指定するデータのフィールドをクリックします。 各来歴レコードのソースは、テーブルの該当する行の選択したフィールドにあります。
- 新しいドキュメント エンティティーが、[エンティティー] ページで定義され、ソースが、これらのドキュメントのうちの 1 つである場合、コントロールの下部にある [エンティティー] オプションをクリックします。 [エンティティー/リレーションシップ プロパティ] テーブルに定義されている新しいドキュメント エンティティーをすべて表示するように、コントロールが変更されます。 来歴レコードのソースである、ドキュメント エンティティーをクリックします。 各来歴レコードは、該当するドキュメント エンティティーをそのソースとして参照します。
- Arcade 式を使用して、ソースを指定するには、ドロップダウン リストの一番下の [式の設定] オプション
をクリックします。 [式の設定] ダイアログ ボックスを使用し、来歴レコードのソース値を示す Arcade 式を作成し、[OK] をクリックします。
- 必要に応じて、sourceName 列内をクリックして、表示されたコントロール内に、ソースのタイトルを定義します。
- コントロールの下部にある [値] オプションは、デフォルトで選択されています。 テンプレート値が指定され、その値を使用する場合、この手順をスキップします。 それ以外の場合は、新しいタイトルを入力します。 各来歴レコードのテキストは、そのソース名プロパティで同じになります。
- タイトルが、テーブルのフィールドで定義されている場合、コントロールの下部にある [列] オプションをクリックします。 コントロールが、テーブル内のすべてのフィールドを表示するように変更されます。 タイトルを指定するデータのフィールドをクリックします。 各来歴レコードのソース名は、テーブルの該当する行の選択したフィールドにあります。
- Arcade 式を使用して、タイトルを指定するには、ドロップダウン リストの一番下の [式の設定] オプション
をクリックします。 [式の設定] ダイアログ ボックスを使用し、来歴レコードのソース名プロパティに格納されるタイトルを返す Arcade 式を作成し、[OK] をクリックします。
- 必要に応じて、comment 列内をクリックして、表示されたコントロール内に、ソース資料の追加情報を定義します。
sourceName フィールドで使用した手順と同じ手順に従います。
- 必要に応じて、[スキーマの変更]
をクリックし、ナレッジ グラフ内にある来歴レコードのカスタム プロパティを追加します。- 表示されたフィールド ビューで、テーブルの下部にある空の行内をクリックします。
- 新しいプロパティの名前を入力して、そのデータ タイプを定義します。
- リボンの [フィールド] タブにある [編集の管理] グループで、[保存] をクリックします。
- フィールド ビューを閉じます。
新しい来歴レコード プロパティが、[来歴] テーブルに表示されます。
- [来歴] テーブルに表示されている追加の来歴レコード プロパティに、適切な値を入力します。
sourceName フィールドで使用した手順と同じ手順に従います。
- [次へ] をクリックして、ウィザードの [確認と実行] ページに進みます。
構成の確認とデータの読み込み
ウィザードの [確認と実行] ページには、ナレッジ グラフに作成されるエンティティー、リレーションシップ、プロパティのサマリーが表示されます。 ウィザードで特定されたすべての問題が修正されるまで、[実行] ボタンは利用できません。
- ソース テーブルまたはフィーチャクラスから、ナレッジ グラフのエンティティー、リレーションシップ、プロパティ、空間フィーチャに、データを読み込むためのすべてのルールを確認します。
- 将来使用するために、ルールの最終セットを保存するには、[構成の保存] をオンにします。 表示されるリストのドロップダウン矢印をクリックし、既存のデータ読み込み構成の名前をクリックして、その構成を上書きします。 または、名前を入力して、新しいデータ読み込み構成に、ルールを格納します。
- [完成後に新しいリンク チャートに結果を表示] をオンにすると、データ変換プロセスで作成されたエンティティーとリレーションシップを、新しいリンク チャートに追加して、確認できます。
- [実行]
をクリックします。データ読み込みプロセス中にエラーが検出された場合は、ページの下部に、警告が表示されます。 警告の [詳細の表示] リンクをクリックして、ダイアログ ボックスに、エラーのリストを表示します。 たとえば、テーブルやプロパティの NULL 値、またはデータ タイプの不一致により、2 つのエンティティーがマージされず、エラーが発生します。
このリストを保持し、後で変換プロセスの結果を評価するときに確認するには、[コピー] ボタン
をクリックします。 テキスト エディターを開き、コピーしたメッセージを貼り付けてから、テキスト ファイルに保存します。 - テーブルの読み込みビューを閉じます。
データ読み込み操作が完了したら、開いている調査、マップ、リンク チャートを更新して、ナレッジ グラフの現在のエンティティーとリレーションシップ、およびプロパティを確認します。 ナレッジ グラフのグラフ アイテムを確認および編集し、必要に応じて、分離されていてはならないエンティティーとリレーションシップのマージ、誤って作成されたエンティティーとリレーションシップの削除、またはプロパティの変更を行います。
データ読み込み構成を調査に保存する場合、別のプロジェクトで使用できるようデータ読み込み構成ファイルにエクスポートして、ソース テーブルまたはフィーチャクラスと共にアーカイブします。 プロジェクトを保存し、現在の調査の一部として、データ読み込み構成を保存します。
テーブルの読み込み設定の構成
データに基づいて特定のシナリオを処理するように、テーブルの読み込みウィザードの設定を構成できます。 設定は、読み込みプロセスの任意のステップ中に構成できます。
欠損値の設定
データ内の欠損値または NULL 値を処理するための設定を構成できます。 [欠損値] の設定を使用すると、表形式データを読み込むときにエラーを回避できます。 たとえば、テーブルからナレッジ グラフに NULL 値を読み込む必要がある場合があります。 この場合、テーブルに NULL 値を含めるように設定を構成できます。 [欠損値] の設定は互いに競合することはなく、複数の組み合わせで使用できます。
- ウィザードの [設定] タブをクリックします。
- [欠損値] の下で、次の表に示す 1 つ以上のオプションをオンにします:
すべてのプロパティが欠落している場合に、エンティティーとリレーションシップを作成
[オフ] - すべてのマージ プロパティが欠落しているレコードを読み込むと、読み込みエラーが発生します。
[オン] - 新しいエンティティーまたはリレーションシップが作成されます。 欠損値があるプロパティは、新しいエンティティーまたはリレーションシップで NULL になります。
マージするときに NULL 値で上書き
[オフ] - マージするときに、マージ以外のプロパティは NULL 値を無視します。
[オン] - マージするときに、マージ以外のプロパティが NULL 値で上書きされる可能性があります。
欠落したマージ プロパティを使用してエンティティーを作成
[オフ] - 欠落したマージ プロパティを使用してエンティティーまたはリレーションシップをマージすると、読み込みエラーが発生します。
[オン] - 少なくとも 1 つのマージ プロパティが欠落している場合、新しいエンティティーまたはリレーションシップが作成されます。 欠損値があるマージ プロパティは、新しいエンティティーまたはリレーションシップで NULL になります。
エンティティーとリレーションシップのマージ
[オフ] - 少なくとも 1 つのマージ プロパティが欠落している場合、新しいエンティティーまたはリレーションシップが作成されます。 欠損値があるマージ プロパティは、新しいエンティティーまたはリレーションシップで NULL になります。
[オン] - 少なくとも 1 つの欠落したマージ プロパティがあるエンティティーまたはリレーションシップがマージされます。 マージ プロパティは、マージされるエンティティーまたはリレーションシップで NULL になります。 このオプションは、[欠落したマージ プロパティを使用してエンティティーを作成] がオンになっている場合にのみ使用できます。
- 戻るボタンをクリックして、ウィザードの最後のアクティブなページに戻ります。