blog

Boomregister editor

Online interactief wijzigen en terugmelden
Voor grote geografische datasets

Terugmeldingen bij grote datasets

Grotere datasets zoals het bomenregister worden meestal samengesteld volgens verschillende procedures en uit verschillende bronnen. Hierbij kunnen foutjes optreden of er kunnen zich mettertijd veranderingen voordoen. Gebruikers willen zulke foutjes en veranderingen kunnen terugmelden. De gebruiker kan een mail sturen dat de boom voor zijn deur nu 2 keer zo hoog geworden is of is omgehakt. Zulke terugmeldingen zijn zeer arbeidsintensief en foutgevoelig. Het zou handiger zijn als de gebruiker de wijzigingen zelf interactief kan doorvoeren en als terugmelding doorgeven.

Bewerken van geografische data

Geografische data wordt vaak bewerkt met specialistische software en vereist vaak speciale hardware en heel wat opslagruimte. Die software en hardware hebben de meeste gebruikers niet bij de hand. Bijna iedereen heeft wel toegang tot een webbrowser, maar het editen van grote geografische datasets met de browser komt niet veel voor. Een voorbeeld van zo'n editor vind je wel in het open data project Openstreetmap. Openstreetmap is een gedetailleerde wereldkaart die door miljoenen gebruikers gezamenlijk wordt onderhouden. Die editor werkt door een kleine uitsnede in de vorm van vector-data te downloaden uit een speciaal daarvoor gemaakte service. Je moet wel wat geduld hebben voordat de vector-data is gedownload en zeker voor beginners is de editor niet heel eenvoudig. Verder zit je direct op de data te werken waarbij wijzigingen - net zoals in een wiki - pas achteraf beoordeeld kunnen worden door medegebruikers.

Bewerken van Vector Tiles?

Tot 2015 was het eigenlijk niet goed mogelijk om grote vector datasets direct in een browser te bekijken, wel indirect via bijvoorbeeld een Web Mapping Server (WMS) die de vector data uit een shapefile of database op de server naar een afbeelding tekent en naar de browser verstuurt. Sinds 2015 kun je met de de facto standaard van MapBox vector tiles (mvt) wel direct met vector data in de browser werken, maar zulke data is read-only en vaak ook nog gecached als static file op een server en kan dus niet worden aangepast.

Om toch de ervaring van het bewerken van data op te wekken kunnen we gebruik maken van het feit dat de vector-data door de script engine in de browser wordt getekend.

De scripts kunnen worden aangepast. Als een object ("vector 3481" in bovenstaande tekening) eenmaal door de gebruiker is geselecteerd om te 'editen', kan er een bewerkbare kopie van de data in de browser worden gegenereerd. Het origineel - afkomstig uit de vector tile - wordt dan weggefilterd en vervangen door de bewerkbare kopie.

'Voordeel van deze methode is dat de gebruiker objecten kan bewerken binnen de context van de grote dataset, maar de editor (en het filter) alleen de bewerkte objecten hoeft bij te houden'

Voordeel van deze methode is dat de gebruiker objecten kan bewerken binnen de context van de grote dataset, maar de editor (en het filter) alleen de bewerkte objecten hoeft bij te houden. De bewerkingen van de meeste (menselijke) gebruikers passen gemakkelijk volledig in het permanente geheugen van de browser (localstorage). De bewerkingen blijven dus ook beschikbaar als de gebruiker de pagina verlaat en zelfs als de browser wordt afgesloten en herstart.

Demo boomregister editor

Geodan Research heeft (een oude versie van) het bomenregister in een database (90 Gbyte aan data) die informatie voor zo'n 52 miljoen bomen bevat. Voor elke boom is de contour van de boomkroon, de boomhoogte en andere gegevens vastgelegd. Deze gegevens kunnen op de kaart worden bekeken met de boomregister-editor:

https://saturnus.geodan.nl/mapbox-viewer/boomregister.html

Om te bewerken klik je op een boom en pas je linksonder de gegevens bij de boom aan. Je kunt een boom ook in zijn geheel verwijderen door bij de geselecteerde boom op de 'Delete' knop te drukken. De bewerkingen zijn permanent, dat wil zeggen dat de bewerkingen bewaard blijven zelfs als je de pagina verlaat of de browser herstart.  Linksbovenin de viewer is een 'reset' knop toegevoegd om alle bewerkingen ongedaan te maken. Bij gebruik als een terugmeldapplicatie kunnen de bewerkingen in de toekomst als 1 geheel worden aangeboden aan de datasetbeheerder via de 'upload' knop.