Rajapinnan tarjoamat tiedot ja niiden rajaus
Sinulla ei ole oikeutta muokata tätä sivua seuraavista syistä:
Voit katsoa ja kopioida tämän sivun lähdetekstiä.
Palaa sivulle Viestiketju:Keskustelu Järviwikistä:Avoin data ja rajapinnat/Rajapinnan tarjoamat tiedot ja niiden rajaus/vastaus.
Moi. Lähes kaikki Järviwikin sisältämistä tiedoista on määritelty semanttisiksi ominaisuuksiksi, joita voi hakea, listata jne. julkaisujärjestelmään (Mediawiki, Semantic Mediawiki) koodatuilla tavoilla. Ainoa ongelma on, etten ole ehtinyt millään tavalla dokumentoimaan Järviwikin ontologiaa eli esimerkiksi semanttisten ominaisuuksien nimiä.
Jos haluat saada csv:n, jossa on kaikki Suomen järvet pinta-aloineen ja koordinaatteineen, onnistuu se helpoiten täällä: Toiminnot:Kysy
Syötä Kysely-kenttään hakuehdot. Ne annetaan esimerkiksi näin [[Luokka:Järvi]], joka tuo kaikki järvet-luokkaan kuuluvat sivut. Jos haluat rajata tuloksia jonkun ominaisuuden mukaan, voit lisätä toisen hakuehdon, kuten [[Pinta-ala::>100 ha]], joka rajaa haun koskemaan vain vähintään 100 hehtaarin kokoisia järviä.
Valinnaiset näytettävät tiedot -kenttään lisätään halutut ominaisuudet, jotka sivuista näytetään. Järville mahdollisia ominaisuuksia ovat ainakin Pinta-ala, Syvyys, Keskisyvyys, Korkeustaso, Koordinaatit, KoordPohj, KoordIta, Kunta, Maakunta, Päävesistö ja Vesistöalue. Syvyys-, keskisyvyys- ja korkeustaso-ominaisuutta ei ole kaikilla järvillä.
Valitse Muotoilu-kohtaan haluttu muotoilu, esimerkiksi siis "CSV-vienti". CSV:ssä oletusvälimerkki on muistaakseni ",", mikä ei ainakaan excelissä toimi ihan suoraan avattaessa. Välimerkin voi vaihtaa puolipisteeksi Muut valinnat -osion sep -kentässä.
Haku palauttaa oletuksena vain osan hakutuloksista. Jos haluat kaikki järvet samaan listaukseen, täytyy Limit-kohtaan laittaa vähintään 56000. Limit ja offset-kohtien avulla tulokset voi myös hakea useassa osassa, jos yksi haku on liian iso (palvelin ei ehdi palauttaa sitä ennen time-out-virhettä).
Paina "Hae tuloksia".
Onnistuuko?
Muuten hyvä mutta en sa sitä palauttamaan kuin 100 kerrallaan, limit-asetuksesta huolimatta. Pienemmät limit-arvot (siis alle 100) toimivat kyllä odotetusti.
No nyt!? Kyselyille oli näköjään asetuksissa maksimi, ja jos sen ylitti, niin kysely palautti vain 100. Nostin nyt maksimin 60 000:een, mutta ihan noin isoa kyselyä en saanut kerralla tehtyä. Suosittelen, että haet tuloksesi vaikka kolmessa erässä: laitat limit-arvoksi 20000 ja teet sitten haut offset arvoilla 0, 20000 ja 40000.
OK?
Jees, nyt onnistui (kolmessa palassa siis) - kiitos!
Hidas se kyllä on, ja jos tuon semantic mediawikin dokuista jotain ymmärsin, saattaisi kuitenkin kannattaa tehdä siihen sql-rajapinta: siinähän on alla kuitenkin mysql (ellei peräti postgresql, toivottavasti ei sentään sqlite) ja rajapinnan tekoon ei tarvitsisi juuri muuta kuin määritellä oikeudet sopivasti. Käyttömukavuudeltaan paremman rajapinnan voisi sitten tehdä rinnalle jos ja kun ehtii.