3.4. Web Coverage Service (WCS)
QGIS Serverで実装されている 1.0.0 および 1.1.1 WCS標準は、QGISプロジェクトからの カバレッジ と呼ばれるラスターデータにアクセスするHTTPインターフェースを提供します。
仕様:
QGIS Serverが提供する標準リクエスト
リクエスト |
説明 |
---|---|
サーバーに関する情報を含むXMLメタデータを返します |
|
カバレッジに関する追加情報についての XML 文書を取得します |
|
カバレッジを取得します |
3.4.1. GetCapabilities
OGC WCS 1.1.1 仕様に従った GetCapabilities リクエストの標準パラメータ:
パラメーター |
必須 |
説明 |
---|---|---|
はい |
サービスの名称 (WCS) |
|
はい |
リクエストの名称 (GetCapabilities) |
|
いいえ |
サービスのバージョン |
標準のものに加えて、QGISサーバーでは以下の追加パラメータをサポートしています:
パラメーター |
必須 |
説明 |
---|---|---|
はい |
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 リクエストの標準パラメータです:
パラメーター |
必須 |
説明 |
---|---|---|
はい |
サービスの名称 (WCS) |
|
はい |
リクエストの名称 (DescribeCoverage) |
|
いいえ |
サービスのバージョン |
|
いいえ |
カバレッジレイヤを指定する (WCS 1.0.0) |
|
いいえ |
カバレッジレイヤを指定します (WCS 1.1.1) |
標準のものに加えて、QGISサーバーでは以下の追加パラメータをサポートしています:
パラメーター |
必須 |
説明 |
---|---|---|
はい |
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.1
の COVERAGE パラメータを置き換えるものです。しかし、QGIS Serverは VERSION
パラメータによるフィルタリングを行わないため、 IDENTIFIER
と COVERAGE
は同じ効果を持ちます。
注釈
COVERAGE
が設定されていない場合、IDENTIFIER
は必須です。IDENTIFIER
と COVERAGE
の両方のパラメータが定義されている場合、常に COVERAGE
が優先的に使用されます。
3.4.3. GetCoverage
このリクエストによって、範囲やCRSのような特定の制約に従って、カバレッジを取得することができます。OGC WCS 1.1.1仕様に基づく DescribeCoverage リクエストの標準パラメータです:
パラメーター |
必須 |
説明 |
---|---|---|
はい |
サービスの名称 (WCS) |
|
はい |
リクエストの名称 (GetCoverage) |
|
いいえ |
サービスのバージョン |
|
いいえ |
カバレッジレイヤを指定する (WCS 1.0.0) |
|
いいえ |
カバレッジレイヤを指定します (WCS 1.1.1) |
|
はい |
ピクセルによるレスポンスの幅 |
|
はい |
ピクセルによるレスポンスの高さ |
|
はい |
CRS単位によるマップの範囲 |
|
はい |
範囲の座標参照系 |
|
いいえ |
レスポンスの座標参照系 |
標準のものに加えて、QGISサーバーでは以下の追加パラメータをサポートしています:
パラメーター |
必須 |
説明 |
---|---|---|
はい |
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
このパラメータでは、出力画像の高さをピクセル単位で指定することができます。レスポンス画像の解像度は、この値に依存します。