KML (以前はキーホール マークアップ言語として知られていました) は、地理コンテキストで情報を表示するための XML ベースのファイル形式です。KML 情報は、ArcGIS Earth および ArcGIS Pro をはじめとする、地球をベースにした多くのブラウザーで描画することができます。KML バージョン 2.2 が、OGC (Open Geospatial Consortium) 標準として採用されています。完全な KML 仕様は、https://www.opengeospatial.org/standards/kml/ で参照できます。
KML 情報は、その他のデータを追加するときと同じように、マップやシーンに追加することができます。KML ファイルは、マップまたはシーンにおけるレイヤーのソースです。.kml または .kmz (圧縮された) ファイル、または KML ファイルを示す URL を使用することができます。
1 つの KML ファイルには、さまざまなタイプのジオメトリのフィーチャを格納することができ、ベクター データおよびラスター データも格納することができます。ArcGIS Pro は、このすべてのコンテンツを単一のレイヤーとして描画します。ソース ファイルで定義された KML 設定が適用されます。KML 情報を操作、探索したり、レイヤーの表示をいくつかの点で変更したりすることができますが、KML 自体を変更することはできません。
シェープファイルやジオデータベース フィーチャクラスなど、フィーチャベースのデータを処理する大半のジオプロセシング ツールへの入力として、KML を直接使用することができます。 次の 2 つの方法のいずれかを使用します。
- マップに KML レイヤーを追加し、マップ レイヤーのリストの中から入力レイヤーを選択する。
- KML ファイルへのパスを使用し、フィーチャ タイプを付加する。
レイヤー リストからの KML レイヤーの選択
マップに KML レイヤーを追加した場合は、フィーチャ レイヤーに対応しているほとんどのジオプロセシング ツールでは、KML レイヤーを入力として使用できます。 KML レイヤーを使用するには、レイヤーのドロップダウン リストから、入力パラメーターとして KML レイヤーの名前を選択します。
KML レイヤー名には、1 つ以上のフィーチャ タイプが付加しています。 たとえば、KML レイヤー [Wild Fire] は、レイヤーのリストでは [Wild Fire\Points] と表示されます。 KML レイヤーには複数のジオメトリ タイプを含めることができますが、ジオプロセシング ツールは同種のジオメトリのクラスでしか操作できないため、KML レイヤーで処理するフィーチャを指定する必要があります。 フィーチャ タイプは以下のとおりです。
- ポイント
- ポリライン
- ポリゴン
- マルチパッチ
処理対象の KML レイヤーを選択すると、入力パラメーターの値は、処理対象のフィーチャ タイプが付加された KML ファイルへのパスに変換されます。
KML ファイル パス
フィーチャベースのジオプロセシング ツールへの入力として、フィーチャ タイプが付加された KML ファイル パスを直接使用することができます。 これは、Python からジオプロセシング ツールを実行する際に特に便利な機能です。 入力パラメーターの値は、C:\data\KML\Wildfires.kmz\Points のように指定される必要があります。
例外
入力データを変更、または編集するジオプロセシング ツールでは、KML を入力として使用できません。 その例として、[フィールドの追加 (Add Field)] や [フィールド演算 (Calculate Field)] など属性フィールドを追加したり、属性値を計算するツール、そして [頂点の挿入 (Densify)] や [属性の割り当て (Transfer Attributes)] など入力ジオメトリを変更するツールが挙げられます。
さらに、[フィーチャ レイヤーの作成 (Make Feature Layer)]、[属性検索 (Select Layer By Attribute)]、[空間検索 (Select Layer By Location)] ツールでも、KML レイヤーやパスを入力として使用できません。 KML に含まれるフィーチャを、属性や空間で選択できるようにするには、[KML → レイヤー (KML To Layer)] ツールを使用して KML をジオデータベース フィーチャに変換する必要があります。