フィーチャ サービスのオーサリング

フィーチャ サービスのオーサリング プロセスでは、マップ ドキュメントを設定して、サービスによって公開されるデータとシンボルを定義する必要があります。サービスで編集を許可する予定の場合は、編集環境の定義も行ってください。

データの定義

マップ ドキュメントに追加するレイヤとテーブルは、サービスによって表示されます。フィーチャ サービスのデータ要件は次のとおりです。

次のデータ タイプはフィーチャ サービスでサポートされていません。

フィーチャ アクセスが有効であるマップ サービスを公開するときに、これらのレイヤがマップ ドキュメントにあると、解析ツール エラーが発生します。

注意注意:

マップ サービスは、SDE ビューをサポートします。SDE ビューから取得したレイヤとテーブルでフィーチャレベルのクエリを実行する場合、マップ サービスを使用します。

ジオメトリック ネットワーク、トポロジ、ネットワーク データセットといった非シンプル タイプの一部であるレイヤはサポートされますが、タイプ自体はサービスによって返されません。たとえば、トポロジの一部であるレイヤを検索することはできますが、トポロジ自体は検索できません。

フィーチャ サービスによって、関連データでの検索も実行できます。たとえば、公開されたマップ ドキュメントに、ジオデータベース リレーションシップ クラスを介して関連付けられたレイヤとテーブルがある場合があります。この場合、フィーチャ サービスによってレイヤに対してクエリを行うことが可能で、実行すると関連レイヤまたはテーブルからオブジェクトが返されます。関連オブジェクトを返すクエリをサポートするには、リレーションシップ クラスに関係のあるテーブルとレイヤの両方が、公開されたマップ ドキュメントに含まれている必要がある点に注意してください。関連元/関連先のレイヤまたはテーブルのいずれかがマップ ドキュメントに含まれていない場合、フィーチャ サービスはそのリレーションシップを無視します。

編集にフィーチャ サービスを使用する予定の場合、編集するデータのみをマップ ドキュメントに追加することをお勧めします。ベースマップ レイヤなどの編集する必要のないデータは、異なるサービスで公開する必要があります。操作サービスとベースマップ サービスのプランニングについての詳細は、「マップ サービスの計画」をご参照ください。または、ベースマップとして使用できる ArcGIS Online サービスを利用することもできます。オンライン マップおよびサービスをオーバーレイするためのマップの設計に関する詳細は、「ArcGIS Online、Google マップ、および Bing Maps をオーバーレイするためのマップの設計」をご参照ください。

Z 値が存在するフィーチャを編集および削除できます。詳細については、「フィーチャ サービスの Z 値フィーチャの編集」をご参照ください。

M 値を持つデータがある場合、これらのフィーチャを削除、新しいフィーチャを挿入、既存フィーチャの属性を編集したりできますが、ジオメトリは編集できません。すべての新しいフィーチャは、REST および SOAP のエンドポイントで挿入されたときに、M 値が NaN に設定されます。ArcMap のフィーチャ サービスのローカル編集コマンドで M 値を持つフィーチャを編集する場合、すべての編集操作がサポートされます。

また、ArcMap でフィーチャ サービスを使用して編集する予定の場合(この後の説明をご参照ください)、マップ ドキュメントをオーサリングする際にはフィーチャクラスごとに 1 つのレイヤだけを含めるようにしてください。

注意注意:

ルート イベント、X、Y イベント、Cadastral Fabrics などの仮想レイヤは、フィーチャ サービスでは読み取り専用です。

マップ ドキュメントの設定

公開したいデータをマップ ドキュメントに追加したら、続いてレイヤとテーブルのプロパティを設定します。これらのプロパティは、データがどのように表示されるか、およびクライアントがデータを使って何を実行できるかを定義します。

シンボルの定義

フィーチャ サービスでは、フィーチャを検索する他に、フィーチャのシンボルを取得することもできます。クライアントはこの情報を使用して、サービスに定義されたシンボルを使ってフィーチャを描画することができます。

サービスによって返されるシンボルは、ArcMap ドキュメントのレイヤのシンボルに基づいています。レイヤごとの各シンボルは、タイプと呼ばれます。たとえば、シンプル レンダラ(1 つのシンボル)を使ってシンボル表示されるレイヤには、1 つのタイプがあります。個別値レンダラが使用されている場合、レンダラの個別値ごとに 1 つのタイプが返されます。

フィーチャ サービスは、シンプル レンダラ、個別値レンダラ、クラス閾値レンダラ、およびカートグラフィック リプレゼンテーション レンダラをサポートします。サポートされていないレンダラが使用されている場合、サービスは開始できません。この場合は、サーバ ログを使用して、どのレイヤにサポートされていないレンダラがあるのかを特定できます。

注意注意:

比例シンボルや複数のフィールドに基づく個別値レンダラは、フィーチャ サービスによってサポートされません。

フィーチャ サービスでは多くのシンボル タイプを使用できますが、シンボルがダウングレードされる場合もあります。

ライン レイヤの場合、シンプル ライン シンボルがサポートされています。他のシンボルが使用されている場合、フィーチャ サービスはそのシンボルを元のシンボルに最も近いシンプルなライン シンボルに変換します。たとえば、マップ ドキュメントにカートグラフィック ライン シンボルを使用した場合、フィーチャ サービス クライアントではシンプル ソリッド ラインとして描画されます。ライン シンボルが複雑な場合や、ライン シンボルに複数のレイヤが存在している場合、フィーチャ サービスはそのラインを元のライン シンボルに最も近くなるようにダウングレードします。

ポリゴン レイヤの場合、シンプル塗りつぶしシンボルとピクチャ塗りつぶしシンボルだけがサポートされます。その他のシンボルが使用されている場合、フィーチャ サービスはそれをシンプル塗りつぶしシンボルにダウングレードします。マルチレイヤ塗りつぶしシンボルの場合、フィーチャ サービスは最上位レイヤだけを考慮します。また、塗りつぶしシンボルのアウトライン シンボルは、上記のライン レイヤの説明と同じレベルでサポートされます。

ポイント レイヤの場合、シンプル マーカー シンボルとピクチャ マーカー シンボルがサポートされます。その他のシンボルが使用されている場合、フィーチャ サービスはそれをピクチャ マーカー シンボルにダウングレードします。マルチレイヤ マーカー シンボルの場合も、レイヤが単一レイヤにマージされるピクチャ マーカー シンボルにダウングレードされます。ハローをマーカー シンボルに設定できるマスク プロパティはサポートされません。

フィーチャ アクセスのあるマップ サービスを開始すると、シンボルが確認されて、必要に応じてダウングレードされます。ダウングレードが必要な場合、どのシンボルがダウングレードされたかを示す警告がサーバ ログに追加されます。

マップ ドキュメントにカートグラフィック リプレゼンテーション レンダラを使用するレイヤが含まれている場合に、クライアントが REST を利用してサービスにアクセスすると、レンダラは個別値レンダラとして報告されることにも注意することが重要です。

注意注意:

シンボルには RGB カラーを使用することをお勧めします。RGB カラーを使用しないと、RGB カラー形式に変換した場合に色が少し変わる可能性があります。

サブタイプと属性ドメインの定義

フィーチャ サービスの操作性を向上させ、データ入力エラーを防ぐために、必要に応じてサブタイプ属性ドメインを使用するようにデータセットを構成してください。これにより、データの分類が可能となり、データの編集時に適切な値が入力されるようになります。フィーチャ サービスは、サブタイプとドメインを検出して使用できます。たとえば、消火栓の色を、赤、黄、青のいずれかに制限するドメインがある場合、Web アプリケーションに表示されるドロップダウン リストでは、これら 3 色のいずれかしか選択できません。

フィーチャ テンプレートの定義

フィーチャ サービスを介した新しいフィーチャの挿入には、マップ ドキュメントのフィーチャ テンプレートを使用します。テンプレートを使うと、新しいフィーチャをデジタイズして、属性のデフォルト値を設定することができます。フィーチャ サービスでは、各フィーチャ タイプにテンプレートが存在する必要があります。編集セッションを開始するかまたはサービスを公開すると、各タイプにデフォルトのテンプレートが作成されます。

ArcMap 内で、フィーチャ サービスを介して新しいテンプレートを作成したり、既存のテンプレートを変更して編集内容をカスタマイズしたりすることもできます。これには、そのタイプのフィーチャを作成するのに使用される、デフォルトの作成ツールの設定が含まれます。特定のフィーチャ タイプのテンプレートを削除すると、公開時にデフォルトのテンプレートが作成されます。

テンプレートが作成するフィーチャのタイプに応じた、さまざまなタイプの作成ツールが用意されています。たとえば、ライン テンプレートがある場合は、ライン フィーチャの作成に使用できるツールを選択できます。テンプレートに保存されている作成ツールは、フィーチャ サービスを介して使用できます。例外は「ラインの終点」と呼ばれるポイント ツールで、これはフィーチャ サービスによってサポートされません。テンプレートの詳細については、「フィーチャ テンプレートのプロパティの設定」をご参照ください。

マップ ドキュメントが保存されると、テンプレートはマップのレイヤとともに保存されます。マップ ドキュメントが公開されると、フィーチャ サービス クライアントでこれらのテンプレートを利用できます。レイヤ、タイプ、およびテンプレートをマップ ドキュメントに定義したら、サービスを公開できます。「フィーチャ サービスの公開」セクションでは、フィーチャ サービスの公開方法について説明しています。

フィールド プロパティ

ArcMap で設定されるフィールド プロパティは、フィーチャ サービスを介して提供されます。これには、フィールド エイリアス、フィールド表示設定、およびフィールドの読み取り専用プロパティがあります。読み取り専用フィールドには、ObjectID や GlobalID などのシステムで管理されるフィールド、編集情報を記録するフィールド、およびマップ ドキュメントに読み取り専用として設定されるフィールドが含まれます。

更新を適用すると、読み取り専用フィールドに値が設定されていても、フィーチャ サービスはその値を無視します。挿入を適用すると、読み取り専用フィールドと非表示フィールドにはデフォルト値が適用されますデフォルト値が定義されていない場合は、NULL が適用されます。

レイヤ説明と著作権情報

マップ ドキュメントに指定されたレイヤ説明とクレジット(著作権)は、それぞれフィーチャ サービスの各レイヤにレイヤ説明と著作権情報として提供されます。

アタッチメント

フィーチャ サービスによって、アタッチメントの検索と編集を実行できます。アタッチメントとは、フィーチャまたはオブジェクトに関連付けられるメディア ファイルです。たとえば、アタッチメントを使うと、野鳥観察に写真やビデオを追加して、観測点をクリックすると表示できるようになります。この機能を使用するには、最初にジオデータベース内のデータセットを、アタッチメントをサポートするように設定する必要があります。これらのデータセットがマップ ドキュメントに追加され、公開されると、クライアントはフィーチャ サービスを介してアタッチメントを検索、挿入、および削除することができます。

フィーチャ サービスにアタッチできるサイズとファイル タイプには制限があります。これらの制限とアタッチメント設定の変更方法の詳細については、ArcGIS REST API ヘルプのトピック「アップロード」をご参照ください。

アタッチメントをサポートするようにデータセットを設定する方法の詳細については、「フィーチャクラスでのアタッチメントの有効化」をご参照ください。

HTML ポップアップ

フィーチャ サービスは ArcMap で構成された HTML ポップアップをサポートします。HTML ポップアップは、フィーチャに関する HTML 形式の情報を共有するための簡単な方法です。カスタマイズされた HTML を使用して情報を表示できることを除けば、これらは [個別属性] ツールとほぼ同じように動作します。ArcMap での HTML ポップアップの設定方法については、「フィーチャ レイヤに関する HTML ポップアップ プロパティの設定」をご参照ください。

フィーチャ サービスを Web で使用しているときにポップアップを利用できるようにする場合は、これらを ArcGIS.com マップ ビューア で定義することを検討してください。または、ArcGIS API for JavaScript などのクライアント API 自体を使用して、開発者がポップアップ スタイルを定義することもできます。

時間のサポート

時系列データ(ある時点における状態を表すデータ)がサポートされ、フィーチャ サービスを使用してこれらを視覚化できます。時間の情報は 1 つまたは複数の属性フィールドに格納され、特定の時間や時間間隔のデータを視覚化するために使用できます。時系列データは、[レイヤ プロパティ] ダイアログ ボックスの [時間] タブで時間を有効にすることで、フィーチャ サービスを通して利用することができます。データセットの時間を有効にする方法については、「データの時間対応化」をご参照ください。

座標系

フィーチャ サービスは、マップ ドキュメントのレイヤの座標系が異なる場合にも対応できます。フィーチャ サービスの使用時に、必要に応じて座標系の変換が行われます。たとえば、クライアントがレイヤの座標系とは異なる座標系を使ってフィーチャ サービスを介してフィーチャを挿入する場合、格納される前にレイヤの座標系に変換されます。ジオメトリに関する空間検索でも、正しい結果を返すために、適用される前にレイヤの座標系に変換されます。

必要に応じて、地理(測地)座標変換も使用されます。たとえば、レイヤが NAD27 に格納されて、WGS 1984 の座標系を持つサービスを介してフィーチャが挿入される場合、フィーチャが格納される前に WGS 1984 から NAD27 への測地座標変換が実行されます。公開前にマップ ドキュメントのデータ フレーム プロパティで変換を設定することにより、変換方法を制御できます。変換方法がマップに定義されていない場合は、デフォルトの変換が実行されます。

ワークフローの例: 野鳥観察フィーチャ サービス

次のセクションでは、マップ ドキュメントの設定、データの定義、および野鳥観察フィーチャ サービスを介して提供されるシンボルの定義を行う方法の例を示します。このフィーチャ サービスでは、野鳥観察コミュニティが野鳥観察の結果をマップ上に直接ポストし、写真、音声ファイル、ビデオ ファイルなどのメディア ファイルを特定の観測点に追加することができます。

データの定義

フィーチャ サービスのオーサリングの最初のステップは、サービスを介して使用可能なデータの定義です。この例では、ArcSDE ジオデータベースの Bird_Sightings という名前のフィーチャクラスから始めます。このフィーチャクラスにアタッチメントを関連付けるには、アタッチメントを ArcCatalog に追加する必要があります。これには、ArcSDE に接続し、フィーチャクラスを右クリックして [アタッチメント][アタッチメントを作成] の順に選択します。これによって、アタッチメントと、フィーチャクラスをアタッチメント テーブルに関連付けるリレーションシップ クラスを格納するテーブルが作成されます。アタッチメントをフィーチャクラスに追加する方法の詳細については、「フィーチャクラスでのアタッチメントの有効化」をご参照ください。

Bird_Sightings フィーチャクラス

注意注意:

一部のデータ タイプでは、ジオデータベースでの編集にバージョニングが必要です。フィーチャ サービスの編集にも同じ要件が適用されます。詳細については、「バージョニングのクイック ツアー」をご参照ください。

シンボルの定義

ArcSDE ジオデータベースでデータを設定したら、次のステップはデータの ArcMap への追加とシンボルの定義です。フィーチャ サービスが返すシンボルは、ArcMap ドキュメントのレイヤのシンボルに基づきます。レイヤごとの各シンボルは、タイプと呼ばれます。この例では、Bird_Sightings レイヤはデフォルトでシンプル レンダラ(1 つのシンボル)でシンボル表示されています。

ここでは、観察のタイプに基づいて野鳥観察レイヤをシンボル表示することにします。これには、個別値レンダラを使用できます。レイヤをレンダリングする方法を変更するには、レイヤを右クリックして [プロパティ] を選択します。[プロパティ] ダイアログ ボックスで [シンボル] タブをクリックし、[カテゴリ][個別値] を選択します。次に、レイヤのシンボル表示に使用したいフィールドを選択します。この場合、観察に関する 3 つの固有のタイプ(野鳥観察、巣の観察、希少な鳥の観察)があるため、3 つのタイプ(観察タイプごとに 1 つ)がサービスによって返されます。

Bird_Sightings レイヤのシンボル設定
Bird_Sightings レイヤの 1 つのタイプのシンプル レンダリング結果
Bird_Sightings レイヤのシンボル設定
Bird_Sightings レイヤの 3 つのタイプの個別値レンダリング結果

レンダラが選択されたので、次のステップでは各観察タイプを表すシンボルを選択します。この例では、鳥のシンボルは Esri のシンボル選択から選択されています。前景および背景には観察のタイプごとに異なる色が設定され、フィーチャ サービス内で簡単に区別できるようになっています。マップ ドキュメントを公開すると、シンボルは PNG グラフィックスに変換され、クライアントに返されます。

野鳥観察の各タイプをシンボル表示するために使用される絵文字マーカー シンボル
野鳥観察の各タイプをシンボル表示するために使用される絵文字マーカー シンボル

シンボルを設定したら、次のステップはフィーチャ サービスを介して利用できる編集環境の定義です。

編集環境の定義

このフィーチャ サービスの目的は、野鳥愛好家が野鳥観察とそのすべての関連情報をマップに入力できるようにすることです。フィーチャ サービスを介した編集には、マップ ドキュメントのフィーチャ テンプレートを使用します。テンプレートを作成しない場合には、サービスの公開時にデフォルトのテンプレートがタイプごとに作成されます。ただし、新しいテンプレートを作成したり、既存のテンプレートを変更して編集内容をカスタマイズすることもできます。

この例では、このフィーチャ サービスのテンプレートを作成します。フィーチャクラスを右クリックし、[フィーチャの編集][フィーチャ テンプレートの整理] の順に選択します。[レイヤ] でレイヤを選択して、[新規テンプレート] をクリックします。表示されるテンプレート ウィザードで、テンプレートを作成できます。野鳥観察のすべてのタイプのテンプレートを作成するように選択します。テンプレートを作成したら、追加のテンプレートを作成するためにテンプレートをコピーすることができます。

このフィーチャ サービスに、希少な鳥の観察タイプのテンプレートをもう 1 つ追加したいとします。希少な鳥の観察とは、季節外れの鳥や、絶滅寸前の鳥の観察です。テンプレートのコピーを作成するには、コピー元のテンプレートを選択して [コピー] をクリックします。この例では、希少な鳥の観察テンプレートのコピーを作成し、2 つのタイプの希少な鳥の観察を表すように各テンプレートをカスタマイズします。テンプレートをカスタマイズするには、[フィーチャ テンプレートの整理] ウィンドウでそのテンプレートをダブルクリックします。テンプレート プロパティが表示され、テンプレートの名前とデフォルトのフィールド値を編集できます。

2 つのタイプの野鳥観察用の [テンプレート プロパティ] ダイアログ ボックス
追跡調査が必要な絶滅寸前の鳥の観察用テンプレート プロパティと、追跡調査が不要な季節外れの鳥の観察用テンプレート プロパティ

絶滅寸前の希少な鳥の観察用テンプレートでは、観察タイプが [希少種観察] に、説明が [絶滅寸前] に設定されています。季節外れの希少な鳥の観察用テンプレートでは、観察タイプが [希少種観察] に、説明が [季節外れ] に設定されています。

残りの属性も、各テンプレート内で適切なデフォルト値に設定できます。この例では、絶滅寸前の希少な鳥の観察には追跡調査が必要であるため、[追跡調査] 属性のデフォルトを [はい] に設定できます。季節外れの希少な鳥の観察には追跡調査は不要であるため、[追跡調査] 属性は [いいえ] に設定できます。

テンプレートの一部の属性をデフォルト値に設定すると、エンド ユーザはフィーチャのタイプを選択してデジタイズするだけで済むため、編集作業が単純化されます。レイヤ、タイプ、およびテンプレートをマップ ドキュメントに定義したら、サービスを公開できます。サービスが公開されると、エンド ユーザは Web クライアントまたは ArcGIS for Desktop を介してサービスにアクセスし、検索や編集を行うことができます。

フィーチャ サービスの公開についての詳細は、「フィーチャ サービスの公開」をご参照ください。

9/15/2013