各 WFS サービスは、ケーパビリティ ファイルを通じてサービス レベルのメタデータを公開します。ケーパビリティ ファイルは、クライアントがサービスにおいて GetCapabilities リクエストを実行したときに返される XML レスポンスです。外部ケーパビリティ ファイルを設定すると、次のことが行えます。
- サービス レベルのメタデータ情報を WFS ケーパビリティ ファイルに追加する。
- フィーチャ レベルのメタデータ情報を WFS ケーパビリティ ファイルに追加する。
- ArcGIS Server に定義されている投影法のリストから空間参照系を追加する。
- WFS サービスに接続するとき (特に、サービスに多数のタイプ名があるとき) にパフォーマンスが向上します。
WFS サービスで外部ケーパビリティ ファイルを使用するには、ファイルを作成し、そのファイルを WFS サービスで使用できるように設定します。この処理については、下記のセクションで説明しています。
注意:
WFS サービスに外部ケーパビリティ ファイルを使用する場合は、OGC の DTD または XML スキーマに対してケーパビリティ ファイルを整合チェックする必要があります。また、ケーパビリティ ファイルと公開されている WFS サービスのソース マップ ドキュメントやジオデータベースを同期させる必要もあります。
外部ケーパビリティ ファイルの作成
外部ケーパビリティ ファイルを使用するように WFS サービスを設定するには、3 つの WFS ケーパビリティ ファイル (バージョン 1.0.0、バージョン 1.1.0、およびバージョン 2.0 用に 1 つずつ) を準備します。新規にファイルを作成することも可能ですが、多くの場合、システム生成によるケーパビリティ ファイルをテンプレートとして使用した方が簡単です。
デフォルトでは、WFS GetCapabilities リクエストをサービスに送信するたびに、システムによって生成されるケーパビリティ ファイルが自動的に作成されます。システムで生成されるケーパビリティ ファイルをテンプレートとして使用するには、GetCapabilities リクエストを手動で送信し、そのレスポンスを XML として保存します。
WFS サービス用の外部ケーパビリティ ファイルを作成するには、次の手順を実行します。
- まだ実行していない場合は、マップまたはジオデータ サービスを公開して WFS ケーパビリティを有効にします。詳細については「WFS サービス」をご参照ください。
- Web ブラウザーに WFS サービスの URL を入力します。URL の形式は次のとおりです。
http://gisserver.domain.com:6080/arcgis/services/folder/service/service type(can be MapServer or GeoDataServer)/WFSServer
- WMS サービスの URL の末尾に ?request=GetCapabilities&version=1.0.0 を付加して、Enter キーを押します。ブラウザーに表示される XML は、現在のサービス用の WFS バージョン 1.0.0 ケーパビリティになります。
- 結果を XML ファイルとして保存します。<接頭辞><WFS バージョン>.xml という形式に従ってファイル名を指定する必要があります。たとえば、WFS バージョン 1.0.0 GetCapabilities リクエストから作成された XML を保存する場合は、ファイル名として共通の接頭辞 (Roads など) の後に 3 桁の WFS バージョン番号 (100) を指定します。結果として「Roads100.xml」というファイル名になります。
- ステップ 3 とステップ 4 を繰り返して、WFS バージョン 1.1.0 および 2.0 用のケーパビリティ ファイルを作成します。
- 各ケーパビリティ ファイルで WFS レイヤーのメタデータ情報を設定してカスタマイズします。
- HTTP 経由でアクセスできる共通フォルダーにケーパビリティ ファイルをすべて移します。通常、この場所は組織の Web サーバー上にある仮想ディレクトリになります。
外部ケーパビリティ ファイルを使用するための WFS サービスの構成
外部ケーパビリティ ファイルを使用するように WFS サービスを設定するには、ケーパビリティ ファイルの URL を参照するように WFS サービスを更新します。この操作は、ArcGIS Server Manager または ArcMap で実行できます。
ArcGIS Server Manager での構成:
- ArcGIS Server Manager を起動し、ログインします。
- [サービス] > [サービスの管理] の順にクリックします。
- [サービスの管理] モジュールで、サービスを検索して [編集] をクリックします。サービスがリストに表示されていない場合は、[サイト (ルート)] フォルダー以下のサブフォルダーにあります。
- [編集] モジュールで、[ケーパビリティ] をクリックします。
- ケーパビリティ リストで [WFS] をクリックします。
- [WFS の構成] リストで、[外部のケーパビリティ ファイルを使用] を選択します。
- [場所と接頭辞を指定] ボックスに、ケーパビリティ ファイルを配置しているフォルダーの URL とケーパビリティ ファイルに使用している共通の接頭辞を指定します。たとえば、ケーパビリティ ファイルを配置しているフォルダーの URL が「http://webserver.domain.com/arcgis/WFS/services」であり、ケーパビリティ ファイルに使用している共通の接頭辞が「Roads」の場合は、[場所と接頭辞を指定] ボックスに「http://webserver.domain.com/arcgis/WFS/services/Roads」と指定します。
- [保存して再起動] をクリックします。
ArcMap での構成
- ArcCatalog または ArcMap の [カタログ] ウィンドウで、[GIS サーバー] ノードを展開し、ArcGIS Server サイトへの接続を [GIS サーバーを管理する] の接続タイプで確立します。
すでに [GIS サーバーを管理する] 接続を設定している場合は、この手順を省略できます。接続方法については、「ArcGIS Server での ArcMap への管理者接続の作成」をご参照ください。
- ArcGIS Server への接続内で、該当するサービスを右クリックして [サービス プロパティ] を選択します。
- [サービス エディター] で、[ケーパビリティ] タブをクリックします。
- [WFS] タブをクリックし、[外部のケーパビリティ ファイルを使用] を選択します。
- [場所と接頭辞を指定] ボックスに、ケーパビリティ ファイルを配置しているフォルダーの URL とケーパビリティ ファイルに使用している共通の接頭辞を指定します。たとえば、ケーパビリティ ファイルを配置しているフォルダーの URL が「http://webserver.domain.com/arcgis/WFS/services」であり、ケーパビリティ ファイルに使用している共通の接頭辞が「Roads」の場合は、[場所と接頭辞を指定] ボックスに「http://webserver.domain.com/arcgis/WFS/services/Roads」と指定します。
- [OK] をクリックします。
サービスから返されるフィーチャの数の制御
サービスから返されるフィーチャの最大数を制御するには、DefaultMaxFeatures プロパティを設定します。DefaultMaxFeatures プロパティは WFS 1.1.0 でしかサポートされていないので、外部ケーパビリティ ファイルを使用している場合は、1.1.0 プロパティを参照しているファイル内にこのプロパティを設定するだけでかまいません。
外部ケーパビリティ ファイルでは、DefaultMaxFeatures プロパティは WFSServer 1.1.0 ファイルのメタデータ セクションで次のように定義されています。
<ows:Constraint name="DefaultMaxFeatures">
<ows:Value>200</ows:Value>
</ows:Constraint>