Viktigt

Översättning är en gemenskapsinsats du kan gå med i. Den här sidan är för närvarande översatt till 74.92%.

19. Arbeta med OGC/ISO-protokoll

Open Geospatial Consortium (OGC) är en internationell organisation med mer än 300 medlemmar från kommersiella, statliga, ideella och forskningsorganisationer över hela världen. Dess medlemmar utvecklar och implementerar standarder för geospatialt innehåll och tjänster, GIS-databehandling och utbyte.

OGC beskriver en grundläggande datamodell för geografiska objekt och utvecklar ett ökande antal specifikationer för att tillgodose specifika behov av interoperabel plats- och geospatial teknik, inklusive GIS. Ytterligare information finns på https://www.ogc.org/.

Viktiga OGC-specifikationer som stöds av QGIS är:

OGC services are increasingly being used to exchange geospatial data between different GIS implementations and data stores. QGIS can deal with the above specifications as a client, being SFS (through support of the PostgreSQL data provider, see section PostgreSQL Database).

Du kan också dela dina kartor och data via protokollen WMS, WMTS, WFS, WFS-T och WCS med hjälp av en webbserver med QGIS Server, UMN MapServer eller GeoServer installerad.

19.1. WMS/WMTS-klient

19.1.1. Översikt över WMS-support

QGIS kan för närvarande fungera som en WMS-klient som förstår WMS 1.1-, 1.1.1- och 1.3-servrar. I synnerhet har det testats mot allmänt tillgängliga servrar som DEMIS.

En WMS-server agerar på förfrågningar från klienten (t.ex. QGIS) om en rasterkarta med en given utsträckning, uppsättning lager, symboliseringsstil och transparens. WMS-servern konsulterar sedan sina lokala datakällor, rastrerar kartan och skickar tillbaka den till klienten i ett rasterformat. För QGIS är detta format vanligtvis JPEG eller PNG.

WMS är generellt sett en REST-tjänst (Representational State Transfer) snarare än en fullfjädrad webbtjänst. Som sådan kan du faktiskt ta de webbadresser som genereras av QGIS och använda dem i en webbläsare för att hämta samma bilder som QGIS använder internt. Detta kan vara användbart vid felsökning, eftersom det finns flera olika WMS-servermärken på marknaden och de har alla sin egen tolkning av WMS-standarden.

WMS-lager kan läggas till ganska enkelt, så länge du känner till URL:en för att komma åt WMS-servern, du har en fungerande anslutning till den servern och servern förstår HTTP som datatransportmekanism.

Dessutom kommer QGIS att cacha dina WMS-svar (dvs. bilder) i 24 timmar så länge som GetCapabilities-begäran inte utlöses. GetCapabilities-begäran utlöses varje gång knappen Connect i dialogrutan WMS/WMTS används för att hämta WMS-serverns kapacitet. Detta är en automatisk funktion som är avsedd att optimera projektets laddningstid. Om ett projekt sparas med ett WMS-lager kommer motsvarande WMS-plattor att laddas från cacheminnet nästa gång projektet öppnas, så länge de inte är äldre än 24 timmar.

19.1.2. Översikt över WMTS-stöd

QGIS kan också fungera som en WMTS-klient. WMTS är en OGC-standard för distribution av kakeluppsättningar med geospatiala data. Det här är ett snabbare och effektivare sätt att distribuera data än WMS, eftersom WMTS innebär att kakeluppsättningarna är förgenererade och att klienten bara begär överföring av kakeluppsättningarna, inte produktion av dem. En WMS-begäran omfattar vanligtvis både generering och överföring av data. Ett välkänt exempel på en icke-OGC-standard för visning av kaklade geospatiala data är Google Maps.

För att kunna visa data i en mängd olika skalor som ligger nära vad användaren kan tänkas vilja ha, produceras WMTS-kakelsatserna i flera olika skalnivåer och görs tillgängliga för GIS-klienten som begär dem.

Detta diagram illustrerar konceptet med kakeluppsättningar:

../../../_images/concept_wmts.png

Fig. 19.1 Koncept för WMTS-kakeluppsättningar

De två typerna av WMTS-gränssnitt som QGIS stöder är via KVP (Key-Value-Pairs) och RESTful. Dessa två gränssnitt är olika och du måste ange dem på olika sätt för QGIS.

  1. För att komma åt en WMTS KVP-tjänst måste en QGIS-användare öppna WMS/WMTS-gränssnittet och lägga till följande sträng i URL:en för WMTS-kakeltjänsten:

    "?SERVICE=WMTS&REQUEST=GetCapabilities"
    

    Ett exempel på denna typ av adress är:

    https://opencache.statkart.no/gatekeeper/gk/gk.open_wmts?service=WMTS&request=GetCapabilities
    

    För testning fungerar topo2-lagret i denna WMTS bra. Om du lägger till denna sträng anger du att en WMTS-webbtjänst ska användas i stället för en WMS-tjänst.

  2. Tjänsten RESTful WMTS har en annan form, en enkel URL. Det format som rekommenderas av OGC är:

    {WMTSBaseURL}/1.0.0/WMTSCapabilities.xml
    

    Detta format hjälper dig att känna igen att det är en RESTful-adress. En RESTful WMTS nås i QGIS genom att helt enkelt lägga till dess adress i WMS-konfigurationen i URL-fältet i formuläret. Ett exempel på den här typen av adress för en österrikisk baskarta är:

    https://maps.wien.gv.at/basemap/1.0.0/WMTSCapabilities.xml
    

Observera

Du kan fortfarande hitta några gamla tjänster som kallas WMS-C. Dessa tjänster är ganska lika WMTS (dvs. samma syfte men fungerar lite annorlunda). Du kan hantera dem på samma sätt som du hanterar WMTS-tjänster. Lägg bara till ?tiled=true i slutet av webbadressen. Se https://wiki.osgeo.org/wiki/Tile_Map_Service_Specification för mer information om den här specifikationen.

När man läser WMTS kan man ofta tänka WMS-C också.

19.1.3. Välja WMS/WMTS-servrar

Första gången du använder WMS/WMTS-funktionen i QGIS finns det inga servrar definierade.

Du måste sedan skapa anslutningar till den server du riktar in dig på:

  1. Gå till fliken wms WMS/WMTS i dialogrutan Data Source Manager, antingen genom att:

    • klicka på knappen dataSourceManager Open Data Source Manager (eller tryck på Ctrl+L) och aktivera fliken

    • klicka på knappen addWmsLayer Lägg till WMS-lager i verktygsfältet Manage Layers (hantera lager)

    • eller genom att välja Lager ► Lägg till lager ► addWmsLayer Lägg till WMS/WMTS-lager…-menyn

  2. Tryck på New från fliken Layers. Dialogrutan Create a New WMS/WMTS Connection… visas.

    Tips

    Högerklicka på posten wms WMS/WMTS i Nätläsarpanelen och välj New Connection… öppnar också dialogrutan Create a New WMS/WMTS Connection….

  3. Ange sedan parametrarna för att ansluta till önskad WMS-server enligt listan nedan:

    ../../../_images/add_connection_wms.png

    Fig. 19.2 Skapa en anslutning till en WMS-server

    • Namn: Ett namn för anslutningen. Detta namn kommer att användas i rullgardinsmenyn Serveranslutningar så att du kan skilja den från andra WMS-servrar.

    • URL: URL till den server som tillhandahåller data. Detta måste vara ett upplösningsbart värdnamn - samma format som du skulle använda för att öppna en telnet-anslutning eller pinga en värd, dvs. endast bas-URL:en. Du bör t.ex. inte ha fragment som request=GetCapabilities eller version=1.0.0 i din URL.

    • Autentisering (valfritt): med hjälp av en lagrad konfiguration eller en grundläggande autentisering med Användarnamn och Lösenord.

      Varning

      Om du anger användarnamn och lösenord på fliken Autentication kommer oskyddade uppgifter att sparas i anslutningskonfigurationen. Dessa uppgifter kommer att vara synliga om du t.ex. delar projektfilen med någon. Därför är det lämpligt att spara dina autentiseringsuppgifter i en Autentication-konfiguration istället (fliken Configurations). Se System för autentisering för mer information.

    • HTTP Referer

    • WMS DPI-Mode: Tillgängliga alternativ är all, off, QGIS, UMN och GeoServer

    • WMTS pixelförhållande på serversidan: Vid rendering av WMTS-lager kan du skala upp eller ner brickorna baserat på enhetens skärm-DPI. Tillgängliga alternativ är Undefined (inte skalad), Standard (96 DPI) och High (192 DPI).

    • Maximalt antal GetFeatureInfo-resultat: anger ett standardvärde för det maximala antalet resultat som returneras per lager av en GetFeatureInfo-begäran som använder den här anslutningen (se FEATURE_COUNT parameter). Standardvärdet är 10. Ställ in till 0 för att använda serverns standardvärde (vanligtvis 1): ingen FEATURE_COUNT-parameter läggs till i begäran.

    • unchecked Ignorera GetMap/GetTile/GetLegendGraphic URI reported in capabilities: om markerat, använd angiven URI från fältet URL ovan.

    • unchecked Ignorera GetFeatureInfo URI reported in capabilities: om markerat, använd angiven URI från fältet URL ovan.

    • unchecked Ignore reported layer extents: eftersom den utsträckning som rapporteras av rasterlager kan vara mindre än det faktiska område som kan återges (särskilt för WMS-servrar med symbologi som tar mer plats än datautsträckningen), markera det här alternativet för att undvika beskärning av rasterlager till deras rapporterade utsträckning, vilket resulterar i avkortade symboler på gränserna för dessa lager.

    • unchecked Ignorera axelorientering (WMS 1.3/WMTS)

    • unchecked Invertera axelns orientering

    • unchecked Smooth pixmap transformation

  4. Tryck på OK

När den nya WMS/WMTS-serveranslutningen har skapats kommer den att bevaras för framtida QGIS-sessioner. Observera att det också är möjligt att Load anslutningsparametrarna från en .XML-fil eller Save dem till en .XML-fil.

Om du behöver ställa in en proxyserver för att kunna ta emot WMS-tjänster från Internet kan du lägga till din proxyserver i alternativen. Välj Inställningar ► Alternativ och klicka på fliken Nätverk. Där kan du lägga till dina proxyinställningar och aktivera dem genom att markera kryssrutan Use proxy for web access. Se till att du väljer rätt proxytyp från rullgardinsmenyn Proxytyp selectString.

19.1.4. Laddning av WMS/WMTS-lager

När du har fyllt i dina parametrar kan du använda knappen Connect för att hämta den valda serverns funktioner. Detta inkluderar bildkodning, lager, lagerstilar och projektioner. Eftersom detta är en nätverksoperation beror svarshastigheten på kvaliteten på din nätverksanslutning till WMS-servern. Under nedladdningen av data från WMS-servern visualiseras nedladdningsförloppet i det nedre vänstra hörnet av QGIS huvuddialogruta.

Din skärm bör nu se ut ungefär som Fig. 19.3, som visar svaret från en WMS-server.

../../../_images/connection_wms.png

Fig. 19.3 Dialog för att lägga till en WMS-server, med filter på tillgängliga lager

Den övre delen av fliken Layers i dialogrutan visar en trädstruktur som kan innehålla lagergrupper som bäddar in lager med tillhörande bildstil(ar) som serveras av servern. Varje objekt kan identifieras genom:

  • en ID

  • a Namn

  • a Title

  • och en Abstract.

Listan kan filtreras med hjälp av widgeten search i det övre högra hörnet.

Bildkodning

Avsnittet Bildkodning innehåller en lista över de format som stöds av både klienten och servern. Välj ett beroende på dina krav på bildnoggrannhet.

Tips

Bildkodning

Du kommer vanligtvis att upptäcka att en WMS-server erbjuder dig valet av JPEG- eller PNG-bildkodning. JPEG är ett komprimeringsformat med förlust, medan PNG troget återger de råa rasterdata.

Använd JPEG om du förväntar dig att WMS-data ska vara av fotografisk karaktär och/eller om du inte har något emot en viss förlust i bildkvalitet. Denna kompromiss minskar vanligtvis dataöverföringsbehovet med fem gånger jämfört med PNG.

Använd PNG om du vill ha exakta representationer av originaldata och du inte har något emot de ökade kraven på dataöverföring.

Alternativ

I dialogrutans område Options kan du konfigurera WMS-begärandena. Du kan definiera:

  • Tile size om du vill ställa in kakelstorlekar (t.ex. 256x256) för att dela upp WMS-begäran i flera begäranden.

  • Request step size: om du vill minska effekten av klippta etiketter vid kakelplattornas kanter, skapar en ökning av stegstorleken större förfrågningar, färre plattor och färre kanter. Standardvärdet är 2000.

  • Maximalt antal GetFeatureInfo-resultat: anger det maximala antalet resultat som returneras av en GetFeatureInfo-begäran för det eller de lager som laddas. Gör det möjligt att åsidosätta anslutningens standardvärde för specifika lager.

  • Varje WMS-lager kan presenteras i flera CRS:er, beroende på WMS-serverns kapacitet. Om du väljer ett WMS i listan visas ett fält med den standardprojektion som tillhandahålls av webbservern. Tryck på widgeten setProjection :sup:Select CRS för att ersätta standardprojektionen för WMS med en annan CRS som stöds av WMS-servern.

    En dialog som liknar den som visas i Fig. 6.4 kommer att visas. Den största skillnaden med WMS-versionen av dialogrutan är att endast de CRS som stöds av WMS-servern kommer att visas.

  • Slutligen kan du aktivera checkbox Use contextual WMS Legend om WMS-servern stöder den här funktionen. Då visas endast den relevanta förklaringen för den aktuella kartvyns omfattning och inkluderar således inte legendobjekt för objekt som du inte kan se på den aktuella kartan.

You can select several layers at once, but only one image style per layer. When several layers are selected, they will be combined at the WMS server and transmitted to QGIS in one go, as a single layer. The default name is a slash (/) separated list of their original title. You can however opt to checkbox Load as separate layers, in which case each layer is added to the map canvas using its default name from the queried service.

Lagerordning

Fliken Layer Order listar de valda lager som är tillgängliga från den aktuella anslutna WMS-servern.

WMS-lager som återges av en server överlagras i den ordning som anges på fliken Layers, från toppen till botten av listan. Om du vill ändra överläggningsordningen kan du använda knapparna Up och Down på fliken Layer Order.

Öppenhet

Inställningen Global transparency från Lageregenskaper är hårdkodad till att alltid vara på, om den finns tillgänglig.

19.1.5. Mosaiker

När du använder WMTS (Cached WMS) tjänster kan du bläddra igenom fliken Tilesets som ges av servern. Ytterligare information som kakelstorlek, format och stödda CRS listas i denna tabell.

# example of WMTS service

https://opencache.statkart.no/gatekeeper/gk/gk.open_wmts?service=WMTS&request=GetCapabilities

När du väljer ett lager att ladda är det också möjligt att tillämpa en Tolkningsmetod, som omvandlar det till ett rasterlager av typen single band float, redo för styling med QGIS vanliga rasterrenderare.

I kombination med den här funktionen kan du använda skjutreglaget för kakelskalan genom att välja Visa ► Paneler (eller kde Inställningar ► Paneler) och sedan välja Tile Scale Panel. Detta ger dig de tillgängliga skalorna från kakel-servern med ett snyggt reglage dockat i.

19.1.6. Använda identifieringsverktyget

När du har lagt till en WMS-server, och om något lager från en WMS-server är sökbart, kan du använda verktyget identify Identify för att välja en pixel på kartbilden. En fråga ställs till WMS-servern för varje val som görs. Resultatet av förfrågan returneras i klartext. Formateringen av denna text är beroende av vilken WMS-server som används.

Val av format

Om flera utdataformat stöds av servern läggs en kombinationsruta med format som stöds automatiskt till i dialogrutan för identifieringsresultat och det valda formatet kan lagras i projektet för lagret.

Stöd för GML-format

Verktyget identify Identifiera stöder WMS-serverns svar (GetFeatureInfo) i GML-format (det kallas Funktion i QGIS grafiska gränssnitt i det här sammanhanget). Om ”Funktion”-formatet stöds av servern och väljs, är resultaten från Identifiera-verktyget vektorfunktioner, som från ett vanligt vektorlager. När en enskild funktion väljs i trädet markeras den på kartan och den kan kopieras till urklippet och klistras in i ett annat vektorlager. Se exemplet på konfiguration av UMN Mapserver nedan för att stödja GetFeatureInfo i GML-format.

# in layer METADATA add which fields should be included and define geometry (example):

"gml_include_items"   "all"
"ows_geometries"      "mygeom"
"ows_mygeom_type"     "polygon"

# Then there are two possibilities/formats available, see a) and b):

# a) basic (output is generated by Mapserver and does not contain XSD)
# in WEB METADATA define formats (example):
"wms_getfeatureinfo_formatlist" "application/vnd.ogc.gml,text/html"

# b) using OGR (output is generated by OGR, it is sent as multipart and contains XSD)
# in MAP define OUTPUTFORMAT (example):
OUTPUTFORMAT
    NAME "OGRGML"
    MIMETYPE "ogr/gml"
    DRIVER "OGR/GML"
    FORMATOPTION "FORM=multipart"
END

# in WEB METADATA define formats (example):
"wms_getfeatureinfo_formatlist" "OGRGML,text/html"

19.1.7. Visning av egenskaper

När du har lagt till en WMS-server kan du visa dess egenskaper genom att högerklicka på den i teckenförklaringen och välja Properties. WMS/WMTS-lagrets egenskaper liknar rasterlagrets egenskaper, så du hittar en detaljerad beskrivning i Dialog för egenskaper för raster. Det finns dock vissa skillnader, som förklaras nedan.

19.1.7.1. Informationsegenskaper

Fliken Metadata

Fliken Metadata visar en mängd information om WMS-servern, i allmänhet hämtad från den capabilities statement som returneras från den servern. Många definitioner kan hämtas genom att läsa WMS-standarderna (se OPEN-GEOSPATIAL-CONSORTIUM i Litteratur- och webbreferenser), men här är några praktiska definitioner:

  • Egenskaper för server

    • WMS Version — Den WMS-version som stöds av servern.

    • Image Formats — Listan över MIME-typer som servern kan svara med när kartan ritas. QGIS stöder alla format som de underliggande Qt-biblioteken byggdes med, vilket vanligtvis är åtminstone image/png och image/jpeg.

    • Identity Formats — Listan över MIME-typer som servern kan svara med när du använder Identify-verktyget. För närvarande stöder QGIS typen text-plain.

  • Lagrets egenskaper

    • Vald — Huruvida detta lager var valt eller inte när dess server lades till i detta projekt.

    • Visible — Huruvida detta lager är markerat som synligt i förklaringen (används ännu inte i den här versionen av QGIS).

    • Can Identify — Huruvida detta lager kommer att ge några resultat när Identify-verktyget används på det eller inte.

    • Can be Transparent — Huruvida detta lager kan återges med transparens eller inte. Denna version av QGIS kommer alltid att använda transparens om detta är Yes och bildkodningen stöder transparens.

    • Can Zoom In — Om detta lager kan zoomas in av servern eller inte. Denna version av QGIS förutsätter att alla WMS-lager har detta inställt på Yes. Lager som inte har det kan återges på ett konstigt sätt.

    • Cascade Count — WMS-servrar kan fungera som en proxy till andra WMS-servrar för att hämta rasterdata för ett lager. Denna post visar hur många gånger begäran för detta lager vidarebefordras till andra WMS-servrar för att få ett resultat.

    • Fixed Width, Fixed Height — Om detta lager har fasta pixeldimensioner för källan eller inte. Denna version av QGIS antar att alla WMS-lager har detta inställt till ingenting. Lager som inte har det kan återges på ett konstigt sätt.

    • WGS 84 Bounding Box — Lagrets avgränsande box, i WGS 84-koordinater. Vissa WMS-servrar ställer inte in detta korrekt (t.ex. används UTM-koordinater i stället). Om detta är fallet kan den första vyn av detta lager återges med ett mycket ”utzoomat” utseende av QGIS. WMS webmaster bör informeras om detta fel, som de kanske känner till som WMS XML-elementen LatLonBoundingBox, EX_GeographicBoundingBox eller CRS:84 BoundingBox.

    • Tillgänglig i CRS — De projektioner som detta lager kan återges i av WMS-servern. Dessa listas i det WMS-nativa formatet.

    • Available in style — De bildstilar som detta lager kan återges i av WMS-servern.

19.1.7.2. Temporala egenskaper

Raster temporala egenskaper (nämligen Dynamic Temporal Control) kan ställas in för WMS- och WMTS-lager. När ett WMS- eller WMTS-lager med tidsdimension läggs till i projektet visas det som standard i panelen Layers med ikonen indicatorTemporal Temporal Layer bredvid. Dess Temporal-egenskaper är som standard inställda på Automatic temporalt läge, vilket innebär att lagret som standard följer den temporala styrenhetens aktuella tidsintervall.

Du kan sedan välja att visa ett specifikt statiskt tidsvärde för lagret genom att avmarkera Dynamic Temporal Control och välja ett alternativ under Static WMS-T Temporal Range:

  • Serverstandard

  • Predefined date med en server som exponerar data för icke sammanhängande tidsintervall eller Predefined range med en server som exponerar ett intervall av tillgängliga datum. En Start date och End date är nödvändiga i det senare fallet. Deras förväntade formatering kan härledas från alternativet referenstid (se nedan). beroende på om leverantören har data för en sammanhängande period eller inte

  • Följ projektets tidsintervall enligt definitionen i projektets egenskapsdialog

../../../_images/temporal_properties.png

Fig. 19.4 Temporala egenskaper hos ett WMTS-lager

Oavsett vilken kontroll av tidsdata som används finns det några WMS-T Inställningar som hjälper till att visa rätt tidsdata:

  • Time slice mode vilket kan vara:

    • Utnyttja hela tidsintervallet

    • Matcha med början av intervallet

    • Matchning till slutet av intervallet

    • Närmaste matchning till början av intervallet

    • Närmaste matchning till slutet av intervallet

  • Ignorera tidskomponenter (använd endast datum): Om detta markeras kommer tidskomponenten i temporala frågor att ignoreras och endast datumkomponenten kommer att användas i serverförfrågningar.

Du kan också checkbox Use Specific WMS-T Reference Time plocka från tider som rapporteras i lagrets funktioner. Praktiskt för servrar som exponerar en icke sammanhängande uppsättning av datumtidsinstanser (istället för ett intervall av datum).

19.1.7.3. Egenskaper för QGIS Server

Förutom rasterlagrets properties visas följande alternativ när du publicerar ett WMS/WMTS-lager med QGIS Server:

  • WMS-utskriftslager: Gör det möjligt att ange ett alternativt WMS-lager som ska användas för utskrift (i svaret GetProjectSettings). Lämpligt för WMTS-lager som i allmänhet inte är lämpliga för utskrift.

  • checkbox Publicera WMS/WMTS datakälla uri: Tillåter en webbklient att hämta WMS/WMTS-data direkt

  • checkbox Annonser som bakgrundslager

../../../_images/server_properties.png

Fig. 19.5 QGIS Server-egenskaper för ett WMS/WMTS-lager

19.1.8. Visa WMS legendgrafik i innehållsförteckningen och i layouten

QGIS WMS-dataleverantören kan visa en grafisk förklaring i innehållsförteckningens lagerlista och i utskriftslayouten. WMS-förklaringen visas endast om WMS-servern har GetLegendGraphic-kapacitet och lagret har getCapability url specificerad, så du måste dessutom välja en styling för lagret.

Om en legendGraphic är tillgänglig visas den under lagret. Den är liten och du måste klicka på den för att öppna den i verklig storlek (på grund av QgsLegendInterface arkitektoniska begränsning). Om du klickar på lagrets förklaring öppnas en ram med förklaringen i full upplösning.

I utskriftslayouten kommer teckenförklaringen att integreras i sin ursprungliga (nedladdade) dimension. Upplösningen på legendgrafiken kan ställas in i artikelegenskaperna under Legend ► WMS LegendGraphic för att matcha dina utskriftskrav.

Legenden kommer att visa kontextuell information baserat på din aktuella skala. WMS-förklaringen visas endast om WMS-servern har GetLegendGraphic-kapacitet och lagret har getCapability url specificerad, så du måste välja en styling.

19.2. WCS-klient

wcs En Web Coverage Service (WCS) ger tillgång till rasterdata i former som är användbara för rendering på klientsidan, som indata i vetenskapliga modeller och för andra klienter. WCS kan jämföras med WFS och WMS. I likhet med WMS- och WFS-tjänstinstanser gör en WCS det möjligt för klienter att välja delar av en servers informationsinnehav baserat på spatiala begränsningar och andra frågekriterier.

QGIS har en inbyggd WCS-leverantör och stöder både version 1.0 och 1.1 (som skiljer sig avsevärt), men för närvarande föredrar den 1.0, eftersom 1.1 har många problem (dvs. varje server implementerar den på olika sätt med olika särdrag).

Den inbyggda WCS-providern hanterar alla nätverksförfrågningar och använder alla standardinställningar för QGIS-nätverk (särskilt proxy). Det är också möjligt att välja cache-läge (”always cache”, ”prefer cache”, ”prefer network”, ”always network”), och leverantören stöder också val av tidsposition, om tidsdomän erbjuds av servern.

Loading a WCS Layer

To be able to load a WCS Layer, first create a connection to the WCS server:

  1. Öppna dialogrutan Data Source Manager genom att trycka på knappen dataSourceManager Open Data Source Manager

  2. Enable the addWcsLayer WCS tab

  3. Click on New… to open the Create a New WCS Connection dialog

    ../../../_images/add_connection_wcs.png

    Fig. 19.6 Creating a connection to a WCS server

    • Name: A name for the connection. This name will be used in the Server Connections drop-down box so that you can distinguish it from other WCS servers.

    • URL: URL till den server som tillhandahåller data. Detta måste vara ett upplösningsbart värdnamn - samma format som du skulle använda för att öppna en telnet-anslutning eller pinga en värd, dvs. endast bas-URL:en. Du bör t.ex. inte ha fragment som request=GetCapabilities eller version=1.0.0 i din URL.

    • Autentisering (valfritt): med hjälp av en lagrad konfiguration eller en grundläggande autentisering med Användarnamn och Lösenord.

      Varning

      Om du anger användarnamn och lösenord på fliken Autentication kommer oskyddade uppgifter att sparas i anslutningskonfigurationen. Dessa uppgifter kommer att vara synliga om du t.ex. delar projektfilen med någon. Därför är det lämpligt att spara dina autentiseringsuppgifter i en Autentication-konfiguration istället (fliken Configurations). Se System för autentisering för mer information.

    • HTTP Referer

    • unchecked Ignore GetCoverage URI reported in capabilities: if checked, use given URI from the URL field above.

    • unchecked Ignore reported layer extents: because the extent reported by raster layers may be smaller than the actual area which can be rendered (notably for WCS servers with symbology which takes more space than the data extent), check this option to avoid cropping raster layers to their reported extents, resulting in truncated symbols on the borders of these layers.

    • unchecked Ignore axis orientation

    • unchecked Invertera axelns orientering

    • unchecked Smooth pixmap transformation

  4. Tryck på OK för att skapa anslutningen.

Observera att eventuella proxyinställningar som du kan ha angett i dina inställningar också beaktas. Observera också att det är möjligt att Load anslutningsparametrarna från en .XML-fil eller Save dem till en .XML-fil.

Now we are ready to load WCS layers from the above connection.

19.3. WFS och WFS-T Klient

I QGIS beter sig ett WFS-lager ungefär som vilket annat vektorlager som helst. Du kan identifiera och välja funktioner och visa attributtabellen. QGIS stöder WFS 1.0.0, 1.1.0, 2.0 och OGC API - Features (OAPIF), inklusive redigering (genom WFS-T). QGIS stöder också nedladdning i bakgrunden och progressiv rendering, cachelagring på disk av nedladdade funktioner och automatisk versionsdetektering.

Lager av servrar som implementerar OGC API - Funktioner - Del 4: Skapa, ersätta, uppdatera och ta bort kan omvandlas till redigeringsläge för att göra det möjligt att skapa, ändra och ta bort funktioner. Observera att varje skapad/ändrad/raderad funktion kräver en dedikerad nätverksbegäran, så prestandan kan bli lidande vid samtidig ändring av hundratals eller fler funktioner åt gången.

Att lägga till ett WFS-lager är i allmänhet mycket likt det förfarande som används med WMS. Det finns inga standardservrar definierade, så du måste lägga till dina egna. Du kan hitta WFS-servrar genom att använda MetaSearch plugin eller din favoritsökmotor på webben. Det finns ett antal listor med offentliga webbadresser, vissa av dem underhålls och andra inte.

Laddning av en WFS Layer

Som ett exempel använder vi Gateway Geomatics WFS-server och visar ett lager.

https://demo.gatewaygeomatics.com/cgi-bin/wfs_gateway?REQUEST=GetCapabilities&VERSION=1.0.0&SERVICE=WFS

För att kunna ladda ett WFS-lager måste du först skapa en anslutning till WFS-servern:

  1. Öppna dialogrutan Data Source Manager genom att trycka på knappen dataSourceManager Open Data Source Manager

  2. Aktivera fliken addWfsLayer WFS / OGC API - Funktioner

  3. Klicka på New… för att öppna dialogrutan Create a New WFS Connection

  4. In the Connection Details group, enter Gateway Geomatics as name

  5. Ange webbadressen (se ovan)

  6. Optionally, enter the Authentication settings

    ../../../_images/add_connection_wfs.png

    Fig. 19.7 Skapa en anslutning till en WFS-server

    Observera

    In case of an OGC API - Features (OAPIF), the URL to provide should be the landing page, i.e., the main page from which it is possible to navigate to all the available service endpoints.

  7. In the WFS Options group, you can:

    • Anger serverns WFS-version. Om den är okänd, tryck på knappen Detect för att automatiskt hämta den.

    • Select the Preferred HTTP method to use for requests. The default is GET, but you can also select POST.

    • Define the Maximum number of features retrieved in a single GetFetFeature request. If empty, no limit is set.

    • Feature mode (simple vs complex): helps determine how to handle servers serving data with simple or complex GML schemas. Available options are:

      • Default: if the server supports editing capabilities, this is the same as using Simple Features. If not, it fallbacks to using Complex Features mode.

      • Simple Features: returns data as simple features only

      • Complex Features: uses the OGR GMLAS <https://gdal.org/en/stable/drivers/vector/gmlas.html>, potentially returning complex features, depending on the data schema, where nested data structures are exposed by QGIS as JSON.

    • Depending on the WFS version, indicate whether to:

      • Enable Feature paging and specify the maximum number of features to retrieve with Page size. If no limit is defined, then the server default is applied.

      • Tvinga till Ignore axis orientation (WFS 1.1/WFS 2.0)

      • Inverterad axelorientering.

      • Använd GML2-kodning för transaktioner.

    Varning

    Om du anger användarnamn och lösenord på fliken Autentication kommer oskyddade uppgifter att sparas i anslutningskonfigurationen. Dessa uppgifter kommer att vara synliga om du t.ex. delar projektfilen med någon. Därför är det lämpligt att spara dina autentiseringsuppgifter i en Autentication-konfiguration istället (fliken Configurations). Se System för autentisering för mer information.

  8. Tryck på OK för att skapa anslutningen.

Observera att eventuella proxyinställningar som du kan ha angett i dina inställningar också beaktas. Observera också att det är möjligt att Load anslutningsparametrarna från en .XML-fil eller Save dem till en .XML-fil.

Nu är vi redo att ladda WFS-lager från ovanstående anslutning.

  1. Välj ”Gateway Geomatics” i rullgardinsmenyn Server Connections.

  2. Klicka på Connect

  3. Välj lagret Parks i listan

  4. Du kan också välja om du vill:

    • checkbox Begära endast funktioner som överlappar vyns omfattning

    • Ändra… lagrets CRS till något annat som stöds av tjänsten

    • eller skapa en fråga för att ange särskilda funktioner som ska hämtas från tjänsten: dubbelklicka på lagrets rad för att öppna dialogrutan SQL Query Composer. I den dialogen finns widgetar för att skriva en avancerad SQL-fråga som bygger på tillgängliga tabeller och kolumner i tjänsten, med sortering och filtrering och en mängd SQL-funktioner, spatiala predikat och operatorer.

      Den fråga du bygger kommer att visas efter validering i kolumnen SQL i tabellen WFS / OGC API - Features, och det filtrerade lagret kommer att visa ikonen indicatorFilter bredvid det i panelen Layers. Det är således möjligt att justera frågan när som helst.

  5. Click Add to add the layer to the map, using its default name from the queried service.

../../../_images/connection_wfs.png

Fig. 19.8 Lägga till ett WFS-lager

Du kommer att märka att nedladdningsförloppet visualiseras längst ner till vänster i QGIS huvudfönster. När lagret har laddats kan du identifiera och välja ett par funktioner och visa attributtabellen.

19.4. SensorThings

QGIS supports connections to OGC SensorThings API, a standard providing an open and unified framework to interconnect IoT sensing devices, data, and applications over the Web. It is an open standard addressing the syntactic and semantic interoperability of the Internet of Things. It is based on the Observations and Measurements data model, a standardized model for observations, and for features involved in sampling when making observations.

19.4.1. Inställning av anslutning

Lägg till SensorThings data i QGIS genom att använda fliken addSensorThingsLayer SensorThings i dialogrutan Data Source Manager.

För att upprätta en ny anslutning trycker du på Ny (eller Ny SensorThings-anslutning från bläddrarpanelen) och anger Namn och URL. Avancerade alternativ, t.ex. authentication och en Referer, kan också konfigureras.

Tryck på OK för att upprätta anslutningen. Sedan kommer du att kunna:

  • Ändra inställningarna för SensorThings-anslutningen

  • Avlägsna SensorThings-anslutningen

../../../_images/sensorThings_connection.png

Fig. 19.9 SensorThings Anslutningsdialog

Konfigurationer kan sparas till en .XML-fil (Save) via SensorThings-posten i Data Source Manager-dialogrutan eller dess kontextuella meny i Browser-panelen (Save Connections). På samma sätt kan konfigurationer läggas till från en fil (Load).

19.4.2. Ladda SensorThings data

Relationer mellan lager (s.k. entiteter) som lagras i en SensorThings-datauppsättning uttrycks i diagrammet nedan.

../../../_images/sta_uml_diagram.png

Fig. 19.10 Datamodell Observationer och mätningar (Källa: Sensor Web Tutorial by SIST network)

Alla typer av entiteter kan läsas in i QGIS, men alla är inte spatiala data. För att ladda en entitet finns det Lagerinställningar som kan konfigureras:

  • Entity Type: den entitet som ska laddas från datamodellen som lager i QGIS

  • Geometry Type: geometritypen för den valda entiteten som ska laddas. Tryck på refresh Check available types för att begränsa listan till de geometrityper som faktiskt stöds.

  • Sidstorlek

  • Feature Limit anger ett maximalt antal funktioner som ska begäras från tjänsten

  • Extent Limit anger en maximal omfattning för lagret, så att endast funktioner inom omfattningen begärs

  • Expansioner: Datamodellen för SensorThings tillhandahåller en mekanism för utvidgning av resultaten till relaterade enheter, på samma sätt som tabeller sammanfogas i en relationsdatabas. Med hjälp av detta tillvägagångssätt kan du expandera det valda lagret till att omfatta data från andra objekt. Detta gör relationen plattare och skapar lika många överordnade funktioner som underordnade, och ytterligare egenskaper läggs till som kolumner i attributtabellen.

Använd Filter för att skapa en fråga för att filtrera data med hjälp av SensorThings filtersyntax.

Observera

Ovanstående inställningar och filtreringsalternativ är också tillgängliga för uppdatering i dialogrutan för lagrets egenskaper, fliken Source, när lagret har laddats i QGIS.

Tryck på Add för att ladda den valda enhetstypen som lager i QGIS.

19.4.3. Arbeta med ett vektorlager från SensorThings

Ett SensorThings-lager laddas i QGIS som ett vektorlager. Som sådant visar det samma flikar i lagrets egenskaper och tillåter samma funktionsinteraktioner med hjälp av urvals- eller identifieringsverktygen. Det finns dock några specifika egenskaper som du bör tänka på när du arbetar med SensorThings-data.

På grund av datamodellen är resultategenskapen för en SensorThings Observation ett strängfält. Om du vill använda dess numeriska representation, t.ex. i en graderad stil, använder du ett uttryck för att konvertera värdet till verkligt och try() om detta misslyckas (t.ex. try( to_real("Observation_result"), Null)).

Om du vill skapa ett diagram över observationerna på en eller flera platser kan du installera QGIS-tillägget Data Plotly.

  1. Välj nu observationerna på en punkt i kartvyn.

  2. Öppna plotly-panelen och aktivera kryssrutan Use only selected features.

  3. Välj i x-kolumnen en egenskap för datum och tid och i y-kolumnen Observation_result. Detta kommer att rita upp observationerna på den platsen över tiden.

  4. Verifiera för att filtrera efter en enda observerad egenskap.

  5. Lägg märke till att diagrammet ändras så snart du väljer andra platser på kartan.

    ../../../_images/sensorthings-plotly-airquality.png

    Fig. 19.11 Använd Data plotly för att plotta luftkvalitetsobservationerna på en plats

19.5. STAC (SpatioTemporal Asset Catalogs)

STAC (SpatioTemporal Asset Catalog) is a specification for describing geospatial data in a consistent and accessible way. It defines a standard structure for organizing and indexing spatial-temporal assets such as satellite imagery, drone photos, or sensor data so that you can search, preview, and use these datasets across different platforms and tools.

STAC enables QGIS users to connect to and browse geospatial datasets, either from static catalogs or dynamic APIs, and download or stream assets such as imagery or other spatial data.

More information at https://stacspec.org/en.

Key components of STAC in QGIS include:

  • STAC Items: The basic unit of a STAC catalog. Each item represents one geospatial asset or a group of related assets (e.g. image bands) at a specific time and location. It includes metadata such as geometry, datetime, links to assets (e.g., TIFFs, JSON, COG), and properties.

  • STAC Collections: A grouping of items that share common characteristics and metadata (e.g. satellite mission). Collections may define spatial and temporal extents, licensing, and keywords.

  • STAC Catalogs: A hierarchical container that organizes items and/or collections. Catalogs allow navigation of STAC datasets but do not necessarily include search capabilities.

  • STAC API: An implementation of the STAC specification that allows querying and filtering of STAC items using spatial and temporal based filters, as well as searching within specific collections. STAC APIs follow the OGC API - Features pattern and support dynamic access to datasets.

There is an important distinction between static STAC catalogs and STAC API endpoints:

  • Static STAC Catalogs: are collections of JSON files without search capabilities. They can be browsed via the Browser panel.

  • STAC API: provide search capabilities and can be accessed in QGIS through both the Browser panel and the Data Source Manager.

19.5.1. Inställning av anslutning

STAC connections can be added in QGIS using either the Browser panel or the Data Source Manager:

  • Browser Panel: In the Browser panel, right-click on the stac STAC entry and select New STAC Connection…. In the dialog that appears, enter a Name for the connection, the URL of the STAC catalog and optionally fill in Authentication credentials and a Referer. Then click OK.

    Use this method for browsing static STAC catalogs that do not support search or filtering.

  • Data Source Manager: For STAC APIs you can use dataSourceManager Data Source Manager dialog.

    Open the dataSourceManager Data Source Manager, choose the stac STAC tab and click the New button. Fill in the Name and URL fields, and (optional) the Authentication credentials and a Referer. Press OK and then Connect to establish the connection, after that you will be able to:

    • Edit the STAC connection settings

    • Remove the STAC connection

    ../../../_images/STAC_connection.png

    Fig. 19.12 Creating a connection to a STAC server

19.5.2. Browsing STAC Catalogs

Static STAC catalogs are displayed as hierarchical structures within the Browser panel. Once connected, the STAC catalog appears under stacSTAC in the Browser panel. You can expand the catalog node to see its Collections. Expanding a collection reveals the individual Items it contains.

../../../_images/stac_browser.png

Fig. 19.13 STAC connection expanded in the Browser, showing Collections and Items

Right-click any STAC Item and choose Details… to view its metadata. The details panel shows the item’s JSON content and a map of its coverage. If an item’s asset is a cloud-optimized format (e.g. a .COG), you can add it directly to the map canvas. Otherwise, Download Assets… to save it locally before use.

19.5.3. Filtering and Searching STAC Items

For STAC API endpoints, QGIS supports spatial and temporal filtering, as well as limiting searches to specific collections.

To search for items:

  1. Open Data Source Manager and go to the STAC

  2. Select the STAC connection you created earlier and click Filters…

    ../../../_images/stac_filters.png

    Fig. 19.14 Define spatial and temporal filters for a STAC catalog search

  3. In the filter dialog, you can:

    • Enable checkbox Spatial Extent to restrict results to a bounding box or drawn area.

    • Enable checkbox Temporal Extent and define a date or range.

    • Limit to specific collections using checkbox Only search within specific collections

  4. After applying filters, results will be listed in the main Data Source Manager panel.

  5. Optionally check checkboxShow Footprints to display the footprints of the results on the map.

Right-click a result item to access actions:

  • Zoom to Item

  • Pan to Item

  • Download Assets

  • Details…

If the item’s asset requires download, use the Download Assets option.

../../../_images/stac_download.png

Fig. 19.15 Download STAC item assets

Downloaded assets include the main dataset and any auxiliary files such as thumbnails or style files. After download, use standard QGIS tools (e.g., rasterAdd Raster Layer…) to load and display the data.

19.6. ArcGIS REST Server

An ArcGIS REST Server can host many different types of web services (feature service, map service, image service, …). Read Använda ArcGIS REST-servrar for instructions to connect to an ArcGIS REST server.

When loading layers from an ArcGIS Feature Service, symbols are automatically converted to QGIS-native symbology, allowing QGIS to visually reproduce the same appearance as ArcGIS web maps.

Layers from an ArcGIS Feature Service can be editable in QGIS if:

  1. The ArcGIS service has editing enabled

  2. Your credentials grant write access

  3. And the remote layer supports editing operations (Create, Update, or Delete capabilities). If these options are disabled on the server, the layer will be read-only in QGIS.

Editing these layers follow the same procedure as for other vector layers. To update your map with the latest changes, use View ► Refresh or press F5. If multiple users edit the same layer concurrently, it is recommended to refresh your data before performing edits to avoid conflicts.