WFS サービスでの外部ケーパビリティ ファイルの使用
各 WFS サービスは、ケーパビリティ ファイルを通じてサービス レベルのメタデータを公開します。ケーパビリティ ファイルは、クライアントがサービスにおいて GetCapabilities リクエストを実行したときに返される XML レスポンスです。外部ケーパビリティ ファイルを設定すると、次のことが行えます。
- サービス レベルのメタデータ情報を WFS ケーパビリティ ファイルに追加します。
- フィーチャ レベルのメタデータ情報を WFS ケーパビリティ ファイルに追加する
- ArcGIS Server に定義されている投影法のリストから空間参照系を追加する
- WFS サービスに接続するとき(特に、サービスに多数のタイプ名があるとき)にパフォーマンスが向上します。
WFS サービスで外部ケーパビリティ ファイルを使用するには、ファイルを作成した後、そのファイルを WFS サービスで使用できるように設定する必要があります。この処理については、下記のセクションで説明しています。
WFS サービスに外部ケーパビリティ ファイルを使用する場合は、OGC の DTD または XML スキーマに対してケーパビリティ ファイルを整合チェックする必要があります。また、ケーパビリティ ファイルと公開されている WFS サービスのソース マップ ドキュメントやジオデータベースを同期させる必要もあります。
外部ケーパビリティ ファイルの作成
外部ケーパビリティ ファイルを使用するように WFS サービスを設定するには、2 つの WFS ケーパビリティ ファイル(バージョン 1.0.0 とバージョン 1.1.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
- WFS サービスの 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 用のケーパビリティ ファイルを作成します。
- 各ケーパビリティ ファイルで WFS レイヤのメタデータ情報を設定してカスタマイズします。
- HTTP 経由でアクセスできる共通フォルダにケーパビリティ ファイルをすべて移します。通常、この場所は組織の Web サーバ上にある仮想ディレクトリになります。
外部ケーパビリティ ファイルを使用するための WFS サービスの構成
外部ケーパビリティ ファイルを使用するように WFS サービスを設定するには、ケーパビリティ ファイルの URL を参照するように WFS サービスを更新する必要があります。この処理は、ArcGIS Server Manager または ArcGIS for Desktop で実行できます。
ArcGIS Server Manager での操作:
- 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」と指定します。
- [保存して再起動] をクリックします。
ArcGIS for Desktop での操作:
- ArcCatalog または ArcGIS for Desktop のカタログ ウィンドウで、[GIS サーバ] ノードを展開し、ArcGIS Server への接続を [GIS サーバを管理する] の接続タイプで確立します。すでに [GIS サーバを管理する] 接続を設定している場合は、この手順を省略できます。接続方法については、「ArcGIS for Desktop での ArcGIS Server への管理者接続の作成」をご参照ください。
- 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>