3.4. Web Coverage Service (WCS)

QGIS Serverで実装されている 1.0.0 および 1.1.1 WCS標準は、QGISプロジェクトからの カバレッジ と呼ばれるラスターデータにアクセスするHTTPインターフェースを提供します。

仕様:

QGIS Serverが提供する標準リクエスト

リクエスト

説明

GetCapabilities

サーバーに関する情報を含むXMLメタデータを返します

DescribeCoverage

カバレッジに関する追加情報についての XML 文書を取得します

GetCoverage

カバレッジを取得します

3.4.1. GetCapabilities

OGC WCS 1.1.1 仕様に従った GetCapabilities リクエストの標準パラメータ:

パラメーター

必須

説明

SERVICE

はい

サービスの名称 (WCS)

REQUEST

はい

リクエストの名称 (GetCapabilities)

VERSION

いいえ

サービスのバージョン

標準のものに加えて、QGISサーバーでは以下の追加パラメータをサポートしています:

パラメーター

必須

説明

MAP

はい

QGISプロジェクトファイル

URLの例:

http://localhost/qgisserver?
SERVICE=WCS
&VERSION=1.1.1
&REQUEST=GetCapabilities

WCSサービスのQGISプロジェクトで、単独のラスタレイヤ(名前 T20QPD_20171123T144719_TCI )を公開した場合のXML文書の例:

<WCS_Capabilities xmlns="http://www.opengis.net/wcs" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:gml="http://www.opengis.net/gml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.0.0" updateSequence="0" xsi:schemaLocation="http://www.opengis.net/wcs http://schemas.opengis.net/wcs/1.0.0/wcsCapabilities.xsd">
  <Service>
    ...
  </Service>
  <Capability>
    ...
  </Capability>
  <ContentMetadata>
    <CoverageOfferingBrief>
      <name>T20QPD_20171123T144719_TCI</name>
      <label>T20QPD_20171123T144719_TCI</label>
      <lonLatEnvelope srsName="urn:ogc:def:crs:OGC:1.3:CRS84">
        <gml:pos>-61.585973 16.331189</gml:pos>
        <gml:pos>-61.52537 16.400376</gml:pos>
      </lonLatEnvelope>
    </CoverageOfferingBrief>
  </ContentMetadata>
</WCS_Capabilities>

VERSION

このパラメータは、使用するサービスのバージョンを指定することができます。現在、このバージョン値は内部的には使用されておらず、常に 1.1.1 にフォールバックします。

3.4.2. DescribeCoverage

このリクエストは、基礎となるデータソースのフォーマット、バンドの数など、カバレッジに関する追加情報を取得することができます。OGC WCS 1.1.1仕様に基づく DescribeCoverage リクエストの標準パラメータです:

パラメーター

必須

説明

SERVICE

はい

サービスの名称 (WCS)

REQUEST

はい

リクエストの名称 (DescribeCoverage)

VERSION

いいえ

サービスのバージョン

COVERAGE

いいえ

カバレッジレイヤを指定する (WCS 1.0.0)

IDENTIFIER

いいえ

カバレッジレイヤを指定します (WCS 1.1.1)

標準のものに加えて、QGISサーバーでは以下の追加パラメータをサポートしています:

パラメーター

必須

説明

MAP

はい

QGISプロジェクトファイル

3バンドのGeoTIFFラスタレイヤのXML文書は、次のようになります:

<CoverageDescription xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.opengis.net/wcs" xmlns:gml="http://www.opengis.net/gml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" updateSequence="0" version="1.0.0" xsi:schemaLocation="http://www.opengis.net/wcs http://schemas.opengis.net/wcs/1.0.0/describeCoverage.xsd">
  <CoverageOffering>
    <name>T20QPD_20171123T144719_TCI</name>
    <label>T20QPD_20171123T144719_TCI</label>
    <lonLatEnvelope srsName="urn:ogc:def:crs:OGC:1.3:CRS84">
      ...
    </lonLatEnvelope>
    <domainSet>
      ...
    </domainSet>
    <rangeSet>
      <RangeSet>
        <name>Bands</name>
        <label>Bands</label>
        <axisDescription>
          <AxisDescription>
            <name>bands</name>
            <label>bands</label>
            <values>
              <singleValue>1</singleValue>
              <singleValue>2</singleValue>
              <singleValue>3</singleValue>
            </values>
          </AxisDescription>
        </axisDescription>
      </RangeSet>
    </rangeSet>
    <supportedCRSs>
    ...
    </supportedCRSs>
    <supportedFormats nativeFormat="raw binary">
      <formats>GeoTIFF</formats>
    </supportedFormats>
  </CoverageOffering>
</CoverageDescription>

COVERAGE

このパラメータはWCS 1.0.0 で定義されており、追加情報を照会するレイヤーを指定することができます。名前はカンマで区切る必要があります。

また、QGIS Serverでは、レイヤをその短い名前で選択するオプションが導入されました。レイヤの短い名前は、レイヤメニューの プロパティ ► メタデータ で設定することができます。短い名前が定義されている場合、それがレイヤ名の代わりにデフォルトで使用されます:

http://localhost/qgisserver?
SERVICE=WCS
&REQUEST=DescribeCoverage
&COVERAGE=mylayer1name,mylayer2shortname

注釈

IDENTIFIER が設定されていない場合、COVERAGE は必須です。

IDENTIFIER

このパラメータは、WCS 1.1.1COVERAGE パラメータを置き換えるものです。しかし、QGIS Serverは VERSION パラメータによるフィルタリングを行わないため、 IDENTIFIERCOVERAGE は同じ効果を持ちます。

注釈

COVERAGE が設定されていない場合、IDENTIFIER は必須です。IDENTIFIERCOVERAGE の両方のパラメータが定義されている場合、常に COVERAGE が優先的に使用されます。

3.4.3. GetCoverage

このリクエストによって、範囲やCRSのような特定の制約に従って、カバレッジを取得することができます。OGC WCS 1.1.1仕様に基づく DescribeCoverage リクエストの標準パラメータです:

パラメーター

必須

説明

SERVICE

はい

サービスの名称 (WCS)

REQUEST

はい

リクエストの名称 (GetCoverage)

VERSION

いいえ

サービスのバージョン

COVERAGE

いいえ

カバレッジレイヤを指定する (WCS 1.0.0)

IDENTIFIER

いいえ

カバレッジレイヤを指定します (WCS 1.1.1)

WIDTH

はい

ピクセルによるレスポンスの幅

HEIGHT

はい

ピクセルによるレスポンスの高さ

BBOX

はい

CRS単位によるマップの範囲

CRS

はい

範囲の座標参照系

RESPONSE_CRS

いいえ

レスポンスの座標参照系

標準のものに加えて、QGISサーバーでは以下の追加パラメータをサポートしています:

パラメーター

必須

説明

MAP

はい

QGISプロジェクトファイル

BBOX

このパラメータは、現在のCRSの単位でマップの範囲を指定することができます。座標はカンマで区切らなければなりません。BBOX パラメータは minx,miny,maxx,maxy のような形になります。

URLの例:

http://localhost/qgisserver?
SERVICE=WCS
&REQUEST=GetCoverage
&IDENTIFIER=T20QPD_20171123T144719_TCI
&BBOX=647533,1805950,660987,1813940
&CRS=EPSG:32620

CRS

このパラメータは BBOX パラメータの空間参照系を示すことができ、EPSG:XXXX のような形式をとる必要があります。

RESPONSE_CRS

このパラメータは、出力するレスポンスの空間参照系を示すことができ、``EPSG:XXXX``のような形式をとる必要があります。デフォルトでは、対応するカバレッジレイヤのCRSが使用されます。

WIDTH

このパラメータでは、出力画像の幅をピクセル単位で指定することができます。レスポンス画像の解像度は、この値に依存します。

HEIGHT

このパラメータでは、出力画像の高さをピクセル単位で指定することができます。レスポンス画像の解像度は、この値に依存します。

../../../_images/server_wcs_getcoverage_width_height.png

図 3.22 左から、WIDTH=20&HEIGHT=20WIDTH=50&HEIGHT=50WIDTH=100&HEIGHT=100