GeonorgeAPI: Hvordan søke etter tjenester i Geonorge?

For å finne frem til de geografiske tjenestene som er registrert i kartkatalogen til Geonorge så finnes det flere alternativer.

  1. Bruk kartkatalogen sitt api for å få ut data i JSON-format.
  2. Bruk GeonorgeAPI for å hente tjenester vha c# gjennom CSW-tjenesten til Geonorge.

Her skal jeg vise hvordan GeonorgeAPI kan benyttes for å søke opp tjenester.

Det er laget en demo som ligger på Github.

For å søke kun etter tjenester må du benytte søkefiltre. Bruk metoden SearchWithFilters i apiet.

Her er et eksempel på et søkefilter. Det består av selve filteret, pluss en array som inneholder navn på filteroperasjonen som skal benyttes som skal brukes. Dette er litt tungvindt, men dette er en konsekvens av den underliggende strukturen i CSW-standarden.

Alle de ulike søkefiltrene er definert i en enum, www.opengis.net.ItemsChoiceType23:

Ønsker du å slå sammen flere filtre, kan du benytte de logiske operasjonene And, Not og Or.

Eksempel på filter for søk på tjenester fra Kartverket:

Merk at vi bruker BineryLogicOpType på toppen og deretter bruker to stk. PropertIsLikeType. Disse slår vi så sammen med en And-operasjon. Se hvordan den underliggende CSW-requesten blir nedenfor. Mer informasjon om OGC Filter standarden finner du her.

Dette genererer en CSW-request som ser slik ut:

Resultatet av kjøringen ser slik ut:

O-kartregisteret WFS [Kartverket]
         uuid=8d1550dd-34d8-4171-8a1e-544af46a8093
         uri=http://gis.umb.no/nof/o_kart_wfs?service=wfs&request=getcapabilities
         protocol=OGC:WFS
         type=service

O-kartregisteret WMS [Kartverket]
         uuid=b9c31c0a-b2b4-4c35-b94c-0db14bab5fec
         uri=http://gis.umb.no/nof/o_kart_wms
         protocol=OGC:WMS
         type=service

O-kartregisteret aktuelle kart WMS [Kartverket]
         uuid=5569f537-5f60-46a1-a501-ef2459269e4c
         uri=http://gis.umb.no/nof/o_kart_akt_wms
         protocol=OGC:WMS
         type=service

Norge i bilder WMS [Kartverket]
         uuid=50eaadfc-1f54-4a90-abca-8f3df239a4b7
         uri=http://wms.geonorge.no/skwms1/wms.norgeibilder?
         protocol=OGC:WMS
         type=service

Kartverkets Elevation WPS [Kartverket]
         uuid=92299496-8836-4fc1-b685-6d14bd0eb749
         uri=http://wms.geonorge.no/skwms1/wps.elevation?
         protocol=WWW:LINK-1.0-http--link
         type=service

Salten wms [Agdenes kommune]
         uuid=692ef5ce-8c03-42ee-af03-e4b71db9a91a
         uri=http://cluster.gisline.no/wms-salten
         protocol=OGC:WMS
         type=service

Testbilder [Kartverket]
         uuid=d22c8a93-35d1-4c09-909d-6aac7243c3bb
         uri=
         protocol=
         type=service

N5Raster2 WMS [Kartverket]
         uuid=79ea9761-1ac9-4780-a065-e4738835643e
         uri=http://wms.geonorge.no/skwms1/wms.n5raster2?
         protocol=OGC:WMS-1.3.0-http-get-map
         type=service

Tilgjengelighet2 WMS [Kartverket]
         uuid=b139a2c3-bdc3-4420-9def-4ce1080fcf0c
         uri=http://openwms.statkart.no/skwms1/wms.tilgjengelighet2?
         protocol=OGC:WMS
         type=service

Adresse, hurtigsøk - REST service [Kartverket]
         uuid=77e0e5b2-77d8-486f-b540-a41156b91b4e
         uri=http://ws.geonorge.no/AdresseWS/application.wadl
         protocol=W3C:REST
         type=service

Matrikkelen Web Services (SOAP) [Kartverket]
         uuid=56ec841f-fc71-4d0c-b4d4-5dec833dd01e
         uri=https://www.test.matrikkel.no/innsynapi_v3/docs/index.html
         protocol=W3C:WS
         type=service

Matrikkelens GeointegrasjonsAPI [Kartverket]
         uuid=fd905fcc-f5c3-450a-83d9-f35880aae1d7
         uri=https://www.test.matrikkel.no/geointegrasjonsapi_v1/docs/index.html
         protocol=W3C:WS
         type=service

Fjellskygge WMS [Kartverket]
         uuid=57bcf66a-1333-498f-a1f1-13f27a9cee1f
         uri=http://openwms.statkart.no/skwms1/wms.fjellskygge?
         protocol=OGC:WMS
         type=service

Toporaster 3 [Kartverket]
         uuid=13e15833-8d94-4b89-a53d-eb8da289677b
         uri=http://openwms.statkart.no/skwms1/wms.toporaster3?
         protocol=OGC:WMS
         type=service

Matrikkelens OppdateringsAPI [Kartverket]
         uuid=232eee00-951b-4ed8-8d0d-81fbb6f3a160
         uri=https://www.test.matrikkel.no/oppdateringapi_v3/docs/index.html
         protocol=WWW:LINK-1.0-http--link
         type=service

Adresse, Web Services (SOAP) [Kartverket]
         uuid=2fe0ca91-512b-4894-8afd-ebe8bfaf8cc9
         uri=
         protocol=
         type=service

Helse WMS [Kartverket]
         uuid=1a19e1e0-f97d-4ce8-84af-ec40f4809ad2
         uri=http://wms.geonorge.no/skwms1/wms.helse?
         protocol=OGC:WMS-1.1.1-http-get-map
         type=service

Transformasjon- Web Service [Kartverket]
         uuid=b0a3c1e7-36a8-4329-9c78-e8722145fb40
         uri=https://ws.geonorge.no/SKWS2/services/Tran?wsdl
         protocol=
         type=service

Dekning sjømåling WMS [Kartverket]
         uuid=80206d7b-b5a5-4936-ad4c-a0267e471c8b
         uri=http://wms.geonorge.no/skwms1/wms.sjomaaling?
         protocol=OGC:WMS-1.1.1-http-get-map
         type=service

Hydrography : Physical Waters [Kartverket]
         uuid=19893797-14c2-47fd-8b42-06b5e425c504
         uri=http://wms.geonorge.no/skwmstest/wms.hy_physical?
         protocol=OGC:WMS
         type=service
Tags:

Henning Jensen

Skrevet av

Systemutvikler

Adresse

Arkitektum AS
Postadresse:
Postboks 4
3833 Bø i Telemark

Besøksadresse:
Hellandtunet
Kyrkjevegen 6
3800 Bø i Telemark

Kontakt

Tlf: 35 59 59 00
Epost: post@arkitektum.no
Orgnr: 914 994 780 MVA