マップ フィーチャの検索は、[個別属性] ツールでマップ上のフィーチャをクリックして属性リストを取得することから、ジオプロセシングを使用して高度な解析モデルを実行することまで、さまざまです。使用しているサーバーのタイプとサービスのタイプによって実行可能な検索タスクは異なります。たとえば、ArcIMS フィーチャ サービスは ArcMap にフィーチャ データをストリーミングするため、ArcGIS Desktop で利用可能なほとんどの検索機能を使用することができます。これに対し、他のサービスは画像を送信するため、これらのサービスに対する検索機能はより制限されます。
検索の制限は、各 ArcIMS サービス レイヤーの [データ ソース] テキスト ボックスに表示されます。
ArcIMS は、フィーチャ サービス、イメージ サービス、ArcMap サーバー サービスに対して、すべてのポイント フィーチャをマルチポイント ジオメトリ タイプとして示します。マルチポイントではうまくいかないタスクを実行しようとする場合、ArcIMS サービスでそのタスクを実行することはできません。
フィーチャ サービス
ArcIMS フィーチャ サービスは、ArcMap にベクター フィーチャをストリーミングします。ArcMap は、フィーチャ ジオメトリとフィーチャ ID をメモリ内に保持しますが、メモリ使用を最小限に抑えるためにフィーチャ属性は保持しません。ArcIMS フィーチャ サービスに対して、シェープファイルまたはジオデータベース フィーチャクラスに対して行うのと同じ検索操作の多くを、実行することができます。たとえば、以下のことを行うことができます。
- フィーチャの個別属性表示
- フィーチャの検索
- フィーチャの選択(対話形式、属性検索、空間検索)
- フィーチャ サービスを、ジオプロセシング ツールへの入力として使用
パフォーマンスを向上させるために、ArcIMS フィーチャ サービスを操作する際には、フィーチャ キャッシュを使用することをお勧めします。
イメージ サービスと ArcMap サーバー サービス
ArcIMS イメージ サービスまたは ArcMap サービスに対して検索を実行すると、サーバーから ArcMap にバイナリ形式の情報が送信されます。この情報には、検索対象のフィーチャの属性データに加えて、フィーチャ ジオメトリが含まれる場合があります。ただし、多くの場合は、サーバー管理者がフィーチャ ジオメトリを送信しないことにし、検索結果に含めない可能性があります。この場合は、[レイヤー プロパティ] ダイアログ ボックスの [ソース] タブに [検索結果: ジオメトリを含まない] というメッセージが表示されます。
フィーチャ ジオメトリが提供されない場合、ArcMap でイメージ サービスまたは ArcMap サーバー サービスを使用すると、一部の機能が無効になります。
検索結果にジオメトリが含まれない場合にサポートされるタスク
- [個別属性] ツールの使用
- [属性検索] の使用
- [検索] ダイアログ ボックスの使用
- 選択セットの描画*
- 選択色の変更*
検索結果にジオメトリが含まれない場合にサポートされないタスク
- ジオプロセシング タスクの実行
- [バッファー処理ウィザード] を使用したバッファー作成
- 個別属性表示または検索の結果に基づくフィーチャのフラッシュ
- 個別属性表示または検索の結果に基づくブックマークの作成
- 空間検索によるフィーチャの選択
- 選択レイヤーの作成
- 選択シンボルの変更
- 選択または検索の結果に基づくフィーチャへのズーム
- 選択または検索の結果に基づくフィーチャへの画面移動
*サービス レイヤーにフィーチャ ジオメトリが含まれていない場合、ArcMap での選択フィーチャの描画はサーバー側に依存します。そのためには、サーバーに画像リクエストを 2 つ送信する必要があります。1 つは、現在表示されているサービスのすべてのフィーチャを描画するためのリクエストであり、もう 1 つは、選択フィーチャのみを描画するためのリクエストです。選択フィーチャを非選択フィーチャの上に描画するには、サーバーから返される画像タイプが透過表示をサポートしている必要があります。そうでない場合は、選択フィーチャに対して返された画像によって、他のサービス フィーチャがすべて隠されてしまいます。サーバーが透過表示をサポートする出力タイプ(GIF、PNG、PNG8)をすべて無効にしている場合、ArcMap は選択フィーチャをレンダリングしません。ただし、サブレイヤーの属性テーブルではフィーチャの選択と選択セットの表示が可能です。単に、マップ上に選択セットが描画されないだけです。
アクセス制限と禁止リクエスト
一部のサービスでは、検索操作が制限されます。この制限を、[プロパティ] ダイアログ ボックスの [ソース] タブに表示することができます。
サーバーのタイムアウト
ArcIMS サーバーを効果的かつ効率的に運用するために、サーバー管理者はサーバーにタイムアウトを有効にすることができます。タイムアウトとは、サーバーが特定のリクエストに応答するために与えられた最大時間です。タイムアウト値を超えた時点で、ArcIMS サーバーはリクエストの処理を中止します。
ArcIMS サーバーの大半は、サーバーがほとんどのリクエストに対応するのに十分なタイムアウト値を設定しています。リクエストがタイムアウトした場合は、エラー メッセージが表示されます。その場合には、サーバーが処理できるようにリクエストを再送する必要があります。
フィーチャ制限
ArcIMS サーバー管理者は、クライアントに送信するフィーチャの数を制限することができます。フィーチャの数の制限は、個々の ArcIMS サービスに設定することができます。フィーチャ制限は、[個別属性] ツール、[検索] ツール、ジオプロセシングを含む、ArcGIS のすべての検索機能に反映されます。ArcIMS サービスを使用していて完全な結果が返されない場合は、サービスの管理者にフィーチャ制限が設定されているかどうか問い合わせてください。
イメージ サービス、ArcMap サービス、フィーチャ制限
ArcIMS イメージ サービスと ArcMap サービスは、フィーチャ制限に関して少し異なっています。ArcMap はベクター データではなく画像を受信するので、フィーチャ制限にかかわらず、すべてのマップ フィーチャが表示されます。
フィーチャ制限は、属性テーブルに返されるレコードの数、および検索によって返されるフィーチャの数に反映されます。これにより、予想外の結果になる可能性があります。たとえば、フィーチャ制限が 10 の場合、フィーチャはすべてマップに表示されますが、さらに多くのフィーチャが検索条件に一致するにもかかわらず、最大で 10 レコードが各検索によって返されます。たとえば、人口が 1,000,000 人よりも多い州は 42 ありますが、フィーチャ制限のために 10 のみが返されます。