Geonorge nedlasting – Oppdatere metadata med distribusjonsinformasjon
For Norge Digitalt parter som ønsker å tilby nedlastbare datasett gjennom bestillingsløsningen i geonorge så er det enkelte metadata som trenger å oppdateres. Her beskrives en måte å gjøre dette på med GeoNorgeAPI.
For å få data tilgjengelig i «handlekurv» løsning på geonorge.no som kommer i produksjon i versjon 4.0 så må en først tilby et grensesnitt med nedlasting API (http://download.dev.geonorge.no/Help – skal skrive mer om dette snart ) for disse data. Når det er klart så må noen metadata i kartkatalogen oppdateres. En trenger metadatauuid for å oppdatere dette. I geonorge distribusjonsløypene så er det stort sett FME som legger inn data til nedlasting. I disse løypene så kan det legges inn et steg som også oppdaterer metadata i kartkatalogen. GeonorgeAPI passer fint til nettopp dette.
Eksempel på oppdatering av metadata for distribusjon gjennom nedlastingsløsning
private void GetMetadataAndUpdateDistribution()
{
GeoNorgeAPI.GeoNorge api = new GeoNorgeAPI.GeoNorge("myusername","mypassword", "https://www.geonorge.no/geonetworkbeta/");
// uuid til datasettet: Administrative enheter
var metadata = api.GetRecordByUuid("041f1e6e-bdbc-4091-b48f-8a5990f3cc5b");
GeoNorgeAPI.SimpleMetadata simpleMetadata = new GeoNorgeAPI.SimpleMetadata(metadata);
SimpleDistributionDetails distributionDetails = simpleMetadata.DistributionDetails;
// Kodeverdi for protokoll hentes fra https://register.geonorge.no/subregister/metadata-kodelister/kartverket/distribusjonstyper
distributionDetails.Protocol = "GEONORGE:DOWNLOAD";
// URL til tjeneste som implementerer Geonorge Nedlasting API - http://download.dev.geonorge.no/Help
distributionDetails.URL = "http://download.dev.geonorge.no/api/capabilities/";
// oppdatering av XML-objektet som ligger i bakgrunn skjer ved "set"-metoden på SimpleMetadata-objektet
simpleMetadata.DistributionDetails = distributionDetails;
// oppdaterer dato for når datasettet sist er oppdatert
sm.DateUpdated = DateTime.Now;
api.MetadataUpdate(simpleMetadata.GetMetadata());
}
Kartkatalogen vil nå vise handlekurv symbolet for dette datasett og kalle nedlastingsAPI for bestillinger.
Tags: api Geonorge