3.4. خدمة التغطيات على الويب Web Coverage Service (WCS)

يوفر معيارا WCS 1.0.0 و 1.1.1 المطبَّقان في QGIS Server واجهة HTTP للوصول إلى البيانات الشبكية (رستر)، والتي يُشار إليها بـ التغطية (coverage)، القادمة من مشروع QGIS.

المواصفات:

الطلبات القياسية التي يوفرها QGIS Server:

الطلب

وصف

GetCapabilities

يُرجع بيانات وصفية بصيغة XML تتضمن معلومات عن الخادم

DescribeCoverage

يسترجع مستند XML يتضمن معلومات إضافية عن التغطيات

GetCoverage

يسترجع التغطية

3.4.1. GetCapabilities

المعاملات القياسية للطلب GetCapabilities وفق مواصفات OGC WCS 1.1.1:

المعامل

إلزامي

وصف

SERVICE

نعم

اسم الخدمة (WCS)

REQUEST

نعم

اسم الطلب (GetCapabilities)

VERSION

لا

إصدار الخدمة

إضافة إلى المعاملات القياسية، يدعم QGIS Server المعاملات الإضافية التالية:

المعامل

إلزامي

وصف

MAP

نعم

ملف مشروع QGIS

مثال على عنوان URL:

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

مثال على مستند XML عند نشر طبقة شبكية واحدة (باسم T20QPD_20171123T144719_TCI) في مشروع QGIS لخدمة WCS:

<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

يتيح هذا الطلب استرجاع معلومات إضافية عن التغطيات مثل صيغة مصدر البيانات الأساسي وعدد النطاقات وغير ذلك. المعاملات القياسية للطلب DescribeCoverage وفق مواصفات OGC WCS 1.1.1:

المعامل

إلزامي

وصف

SERVICE

نعم

اسم الخدمة (WCS)

REQUEST

نعم

اسم الطلب (DescribeCoverage)

VERSION

لا

إصدار الخدمة

COVERAGE

لا

تحديد طبقات التغطية (WCS 1.0.0)

IDENTIFIER

لا

تحديد طبقات التغطية (WCS 1.1.1)

إضافة إلى المعاملات القياسية، يدعم QGIS Server المعاملات الإضافية التالية:

المعامل

إلزامي

وصف

MAP

نعم

ملف مشروع QGIS

يبدو مستند XML لطبقة شبكية GeoTIFF من 3 نطاقات كما يلي:

<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 خيارًا لتحديد الطبقات باسمها المختصر. يمكن ضبط الاسم المختصر للطبقة عبر Properties ► Metadata في قائمة الطبقة. وإذا كان الاسم المختصر معرَّفًا، فإنه يُستخدم افتراضيًا بدلًا من اسم الطبقة:

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

ملاحظة

المعامل COVERAGE إلزامي إذا لم يُضبط IDENTIFIER.

IDENTIFIER

يحل هذا المعامل محل المعامل COVERAGE في WCS 1.1.1. لكن QGIS Server لا يرشّح وفق المعامل VERSION، لذا فإن IDENTIFIER و COVERAGE لهما التأثير نفسه.

ملاحظة

المعامل IDENTIFIER إلزامي إذا لم يُضبط COVERAGE. وإذا عُرِّف المعاملان IDENTIFIER و COVERAGE كلاهما، فإن COVERAGE يُستخدم دائمًا بالأولوية.

3.4.3. GetCoverage

يتيح هذا الطلب استرجاع التغطية وفق قيود محددة مثل الامتداد أو نظام الإحداثيات المرجعي. المعاملات القياسية للطلب DescribeCoverage وفق مواصفات OGC WCS 1.1.1:

المعامل

إلزامي

وصف

SERVICE

نعم

اسم الخدمة (WCS)

REQUEST

نعم

اسم الطلب (GetCoverage)

VERSION

لا

إصدار الخدمة

COVERAGE

لا

تحديد طبقات التغطية (WCS 1.0.0)

IDENTIFIER

لا

تحديد طبقات التغطية (WCS 1.1.1)

WIDTH

نعم

عرض الاستجابة بالبكسل

HEIGHT

نعم

ارتفاع الاستجابة بالبكسل

BBOX

نعم

امتداد الخريطة بوحدات نظام الإحداثيات المرجعي

CRS

نعم

نظام الإحداثيات المرجعي للامتداد

RESPONSE_CRS

لا

نظام الإحداثيات المرجعي للاستجابة

إضافة إلى المعاملات القياسية، يدعم QGIS Server المعاملات الإضافية التالية:

المعامل

إلزامي

وصف

MAP

نعم

ملف مشروع QGIS

BBOX

يتيح هذا المعامل تحديد امتداد الخريطة بوحدات نظام الإحداثيات المرجعي الحالي. يجب فصل الإحداثيات بفاصلة. ويُكتب المعامل 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. ويُستخدم افتراضيًا نظام الإحداثيات المرجعي لطبقة التغطية المعنية.

WIDTH

يتيح هذا المعامل تحديد عرض صورة المخرجات بالبكسل. وتعتمد دقة صورة الاستجابة على هذه القيمة.

HEIGHT

يتيح هذا المعامل تحديد ارتفاع صورة المخرجات بالبكسل. وتعتمد دقة صورة الاستجابة على هذه القيمة.

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

شكل 3.24 من اليسار إلى اليمين: WIDTH=20&HEIGHT=20، WIDTH=50&HEIGHT=50، WIDTH=100&HEIGHT=100