3D-Win / Työkalut / Verkkopalvelut

Avainsanat: Rajapinta, GML-formaatti, Karttatasot

Artikkelin toiminnot 3D-Win 6.4.2 alkaen

Julkaistu 04.05.2018, Mikko Syrjä



WMS (Web Feature Service) on rajapintamäärittely vektorimuotoisten karttojen tarjoamiseen verkon yli. Hakupyyntö suoritetaan http-protokollalla ja se palauttaa aina yhden vektoritiedoston. Palvelu voi tarjota useita eri karttatasoja eri koordinaattijärjestelmissä ja tiedostoformaateissa.

Palvelun käyttö vaatii yhteystietojen määrittelyn palvelulistaan. Kun palvelun yhteystiedot on kerran määritetty, sitä voidaan sen jälkeen käyttää aktivoimalla se WFS-toiminnon listasta. Sama palvelu voidaan määritellä listaan useaan kertaan eri nimillä ja asetuksilla.


Yhteysmäärittely

Yhteyden määrittely aletaan käynnistämällä WFS haku -toiminto valikon kohdasta Työkalut / Verkkopalvelut ja painamalla Lisää-painiketta. Uudelle yhteydelle annetaan vapaavalintainen nimi ja Osoite-kohtaan palvelun URL-osoite. Mikäli palvelu tarvitsee käyttäjätunnuksen ja salasanan, ne kirjoitetaan omiin kenttiinsä. Lopuksi valitaan palvelun kanssa käytettävä WFS-protokollan versio. Jos tämä ei ole tiedossa, versio 1.1.0 yleensä toimii useimpien palvelujen kanssa.

Kun yhteystiedot on syötetty, painetaan Hae-painiketta. Se hakee palvelusta kuvaustiedoston, joka sisältää tiedot palvelun tarjoamista karttatasoista ja koordinaatistoista. Lyhyt OK-viesti vilahtaa ruudulla haun onnistumisen merkiksi. Jos tietojen haku ei onnistu, tarkista URL-osoite sekä mahdolliset käyttäjätunnus ja salasana. Erityisesti pitää olla tarkkana osoitteen protokollan (http vs. https) kanssa.

Seuraavassa on käytetty esimerkkinä Maanmittauslaitoksen kiinteistötietojen kyselypalvelua. Palvelu on maksullinen ja vaatii näin ollen käyttäjätunnuksen ja salasanan.

Haun jälkeen toiminnon listoihin on täytetty palvelun tukemat arvot, mutta mitään niistä ei ole oletuksena valittu. Seuraava vaihe on valita näistä halutut arvot.

Maksimikoko

Joissain palveluissa on rajoitus yksittäisen haun kohdemäärälle. Palvelusta riippuen tämän rajan ylittäminen joko palauttaa virheen tai yksinkertaisesti jättää osan kohteista palauttamatta. Maksimikoko-asetukseen voidaan antaa palvelun rajaa pienempi arvo, jolloin haku onnistuu aina.

Kohdetyyppi

Saatavilla olevat tasot löytyvät Kohdetyyppi-listalta. Koska formaatti- ja järjestelmäasetukset on määritelty tasoittain, on valittava jokin taso. Useimmissa tapauksissa kaikki palvelun tasot ovat saatavailla samoissa formaateissa ja koordinaattijärjestelmissä eli kohdetyypiksi voi valita minkä tahansa.

Formaatti

Teoriassa WFS-palvelu voisi tarjota aineistoa missä tahansa formaatissa, mutta käytännössä käytetään aina GML-formaattia. Oletuksena palvelusta luettu tiedosto saa päätteen .gml ja se luetaan normaalilla formaatinmuuntimen säännöllä eli tarkistetaan kaikki muunninmäärittelyt, joissa on pääte .gml ja käytetään sitä, jolla on lyhyin nimi.

Muunnin voidaan valita myös palvelukohtaisesti antamalla WFS-asetusten formaatin oikeanpuoliseen kenttään tiedostopääte, joka sitten lisätään luetun tiedoston nimeen. Kun sitten määritellään muunnin saman päätteen kanssa, kaikki palvelusta haetut tiedostot luetaan automaattisesti tällä muuntimella.

Yllä olevassa esimerkissä määriteltiin WFS-asetuksiin pääte ktj eli haetut tiedostot saavat automaattisesti päätteen .gml.ktj. Vastaavasti lisätään uusi GML-formaatinmuunnin ja laitetaan sen tiedostopäätteeksi *.gml.ktj. Tämän muuntimen asetuksiin voidaan sitten laittaa palvelukohtaisia määrittelyjä kuten esimerkiksi koodimuunnoksia.

Järjestelmä

Järjestelmälistalta valitaan koordinaattijärjestelmä, jossa aineisto palautetaan.

Käännä haku, Käännä tulos, Hakualue ilman systeemiä  ja Siirto -asetuksia ei yleensä normaalitapauksessa tarvita. Ne on tarkoitettu epästandardeille palveluille tai käytettäessä katkaistuja koordinaatteja.

Jos palvelu ei suoraan tarjoa aineistoa halutussa koordinaattijärjestelmässä, voidaan se valita kohtaan Paikallinen. Tällöin toiminto muuntaa haussa pyydetyn koordinaattialueen paikallisesta järjestelmästä palvelun järjestelmään ja muuntaa sitten palautetun kuvan takaisin paikalliseen järjestelmään.

Paikallisjärjestelmäksi voidaan valita myös Auto, jolloin paikallinen koordinaatisto päätellään automaattisesti ruudun zoomauksen mukaan. Esimerkiksi jos näytöllä on vektoriaineisto järjestelmässä GK27, palvelusta haettu tiedosto muunnetaan automaattisesti tähän järjestelmään.


WFS Haku

Ylimpänä oleva lista sisältää määriteltyjen WFS-yhteyksien nimet. Kun haluttu yhteysmäärittely valitaan listasta, sen kuvaustiedosto ladataan automaattisesti palvelusta ja käytettävissä olevat karttatasot näytetään alemmassa listassa. Toiminto muistaa viimeksi käytetyn määrittelyn ja aktivoi sen automaattisesti toiminnon käynnistyksessä.

Hakualue näytetään ruudulla violetilla suorakaiteella ja sen nurkkapisteiden koordinaatit toiminnon X- ja Y-kentissä. Toiminnon oikean alanurkan tilaruutu on alussa oletuksena Alue-tilassa, jolloin näytöltä osoitetut koordinaatit muuttavat vuorotellen kumpaakin hakualueen nurkkapistettä. Sammuttamalla tila Alue- tai X-painikkeilla toiminto lakkaa ottamasta vastaan hiirikoordinaatteja. Hakualuetta ei tällöin näytetä, mutta se säilyy muistissa. Tila voidaan aktivoida uudestaan Alue-painikkeella.

Kohdetyyppilistasta valitaan haluttu taso ja Suorita-painike tekee sitten hakupyynnön palvelimelle käyttäen osoitettua aluetta. Palvelimen palauttama tiedosto luetaan sen tiedostopäätteen mukaisella formaatinmuuntimella. Elementtilistassa tiedoston nimessä näkyy haun kellonaika ja tason nimi (esim. wfs_165639_PalstanTietoja.gml.ktj).

Lisää-painikkeella luodaan uusi yhteysmäärittely, Editoi-painikkella editoidaan aktiivista määrittelyä ja Poista-painikkeella poistetaan aktiivinen määrittely.

Kohdetyyppilistan karttatasot näytetään oletuksena palvelun kuvaustiedoston määräämässä järjestyksessä. Järjestä-asetuksella ne voidaan näyttää aakkosjärjestyksessä. Jotkin palvelut tukevat myös useamman tason hakua kerralla, jolloin listalta voidaan valita monta riviä. Jos palvelu ei tue usean tason hakua, se yleensä palauttaa vain ensimmäisen tai viimeisen pyydetyn tason. Tämä selviää testaamalla.

Jos palvelulla on maksimimäärä haettaville kohteille, se saattaa jättää osan kohteista palauttamatta. Tästä on yleensä aika vaikea oila täysin varma eli kannattaa pitää hakualueet kohtuullisen kokoisina.


Toiminnon ohjesivu: WFS haku

Asetusten ohjesivu: WFS asetukset

Keskustelu aiheesta: 3D-Forum/WFS-palvelut

Lue lisää: GML-tiedostojen luku