Spring til login

Digitaliser.dk

Sektioner

Aktuel side

Gruppens profilbillede

OIOREST

170 medlemmer | Medlemsskab via fri tilmelding (Bliv medlem - kræver login )
Profilens billede

Stoppesteder og rejseplanen - En case story

Christian Melchior - 21.05.2009

I forbindelse med et Universitetsprojekt har jeg arbejdet med at integrere stoppestedsdata fra OIORest og afgangstavler fra Rejseplanen (det forløbige resultat kan ses her: http://busplaner.ilios.dk/).


Da Rejseplanens data er uden for OIORest-regi vil jeg ikke kommentere på disse men nøjes med at kommenterer på data fra DanmarkServicen:



  1. Mulighed for callback (JSONP): Især i browserbaserede applikationer, ville det være rart med mulighed for at specificere en callback-function når man modtager data som JSON. Det vil gøre det muligt at fjerne et unødvendigt serverkald.

  2. Proximity-søgning: Pt. for stoppesteder benyttes Geohash som basis for "nær"-søgninger. Geohash er en lækker algoritme til at beskrive lokationer, men medføre et temlig stort overhead på klientsiden hvis man vil finde alle stoppesteder i en bestemt radius. Det ville derfor være rart hvis man også var i stand til at specificere en kasse (vha. af to hjørner) eller, mere beregningskrævende, en placing og en radius.

  3. Rejsplanen ID: Dette er en biting, og måske svært at gøre i praksis, men når DanmarkServicen alligevel leverer et pregenereret link til Rejseplanen, ville det være rart hvis Rejseplanens stoppestedsID også fulgte med. Dette er nødvendigt da flere stoppesteder ikke er unikt bestemt med navnet alene.


Ellers virker OIORest som en rigtigt spændende service med mange gode idéer, og jeg ser frem til at disse data på et tidspunkt rent faktisk vedligeholdes og opdateres.


mvh.


Christian Melchior


 


 


 


 


 


 


 


 


 


 


 

Kommentarer (6)

Profilens billede 1
Daniel Ord Rasmussen - 22.05.2009

Spændende projekt, tak for indblikket. Det lader til at fungere ganske glimrende, uden at jeg dog har ret megen ide om hvordan teknikker bag fungerer.

Profilens billede 2
Finn Jordal - 25.05.2009

Hej Christian

Tak for dit indlæg, linket til dit elegante website samt feedback på Danmark servicen. Dine kommentarer til Danmark servicen, som jeg synes er yderst relevante, vil jeg gennemgå i det følgende.

JSONP er, som du skriver, en performanceforbedrende løsning, hvor man undgår, at browseren skal kommunikere via sit eget site, når eksterne services skal anvendes. Umiddelbart synes jeg ikke, at en mekanisme, der så tæt knyttet et enkelt udviklingsmiljø, nemlig JavaScript, skal med i Danmark servicen. Danmark servicen skal være et eksempel på hvordan offentlige data kan udstilles, så det er muligt at tilgå dem fra mange forskellige platforme og udviklingsmiljøer. På den anden side, hvis JSONP mekanismen er udbredt sammenholdt med den voksende udbredelse af rige browserklienter(RIA), kunne det være, at den skulle være med. Ved du (eller andre), hvor udbredt JSONP er?

Dine betragtninger omkring geohash er jeg helt enig i, og synes at det er en god ide at give mulighed for at udpege stoppestederne (og måske andre geokodede elementer i Danmark servicen) med et rektangel angivet vha. af to hjørner.

Problemet omkring stoppestedsnavne var jeg ikke opmærksom på, så selvfølgelig bør det være  stoppesteds-ID’et der anvendes.

Dine to sidste forslag til ændringer til Danmarksservicen vil blive taget med i næste release.

Mvh.

Finn

Profilens billede 3
Finn Jordal - 10.06.2009 modereret af Finn Jordal (10.06.2009)

Danmarkservicen er nu opdateret mht. at adressere Christians sidste to kommentarer.

  • Rejseplans ID'et er nu anvendt i linket til Rejseplanen.
  • Mulighed for at udpege stoppesteder og adresser vha. et rektangel angivet ved den sydvestlige koordinat og den nordøstlig koordinat (ETRS89). 
<div>
</div> <div>Eksempel:</div> <div>Stoppesteder og adresser i rektangelet angivet af koordinaterne: (716379.0, 6187580.0)</div> <div>og (718126.0, 6189302.0) kan udtrykkes som henholdsvis</div> <div>http://oiorest.dk/danmark/stoppesteder/716379.0,6187580.0;718126.0,6189302.0</div> <div>og http://oiorest.dk/danmark/adresser/716379.0,6187580.0;718126.0,6189302.0 </div> <div>API beskrivelse: Stoppesteder og adresser</div> <div>Eksempler: Stoppesteder og adresser</div>

Jeg ville også gerne give mulighed for at angive koordinaterne i den mere Google Map API-venlige koordinattype WGS84, men kunne ikke lige finde en WGS84 -> ETRS89 konverteringsfunktion. Hvis der er nogen, som har kendskab til, hvor jeg kan finde en sådan, vil jeg meget gerne vide det.

Profilens billede 4
Christian Melchior - 12.06.2009

Denne side her kan lave 2-vejskonvertering mellem WGS84 og UTM Zone 32 koordinater: http://home.hiwaay.net/~taylorc/toolbox/geography/geoutm.html

Den er godt nok i JavaScript, så jeg konverterede den vigtigste kode til PHP i forbindelse med mit projekt. Den kan downloades her: geoconverter.class.php

Profilens billede 5
Christian Melchior - 12.06.2009

Hmm, det er åbenbart ikke muligt at rette sine egne kommentarer. En brugbar fil skulle være vedhæftet her.

Vedhæftede filer
Profilens billede 6
Finn Jordal - 15.06.2009

Tak for linkene til konverteringskoden, men Danmarkservicen foretrækker kode i C#, C eller C++ ;-).

Indtil jeg finder den kode, kan dit link til JavaScriptkoden, anvendes til udvikling af JavaScript baserede browserklienter, der ønsker at udpege stoppesteder eller adresser vha. et rektangel, til at konveretere fra WGS84 til de krævede ETRS89-koordinater.

Tilføj fil(er)

En ny fil vil overskrive en eksisterende fil, hvis begge filer har samme navn og samme ekstension.

Luk

Fjern fremhævning

IT- og Telestyrelsen