Samenvatting
In Onemap kan , vanuit de featureinfo, additionele informatie worden opgehaald en getoond vanuit relevante REST API endpoints.
Het uitgangspunt hierbij is dat een laag in Onemap attributen bevat die gevoed kunnen worden aan het gekoppelde endpoint. bv:
Een laag met percelen (vanuit PDOK) bevat de attributen (perceel identificatie) om bij de haalcentraal-BRK endpoints extra informatie op te halen die niet als attribuut in de laag aanwezig is (bv: zakelijke rechten of eigenaren van een perceel)
De Rest interface bevat doorgaans meerdere endpoints die aan elkaar zijn gerelateerd. Op die manier kan worden doorgevraagd over meerdere Rest-endpoints. Om dit in Onemap te kunnen koppelen is het zaak om 1 start endpoint te configureren , en zelf de relevante gegevens hiervoor te verzamelen en terug te geven.
FME (desktop/server) is een generieke tool waarmee dit zou kunnen worden ingericht.
In deze workshop gaan we dit uitvoeren voor de Basis Registratie Ondergrond (BRO).
De beschikbare BRO Rest-endpoints zijn beschreven in BRO publieke Rest services
In PDOK zijn een aantal BRO lagen beschikbaar (sonderingen, booronderzoeken, grondwater meetpunten..).
Deze lagen bevatten de BRO identificatie attributen waarmee De BRO publieke Rest services kunnen worden bevraagd. Deze services bevatten o.a. endpoints om bijbehorende metingen en gegevens grafisch te presenteren (bv de bodem profielen).
In deze workshop gaan we deze grafische presentaties ophalen en toevoegen aan de Onemap feature informatie.
De algemene werkwijze hiervoor is als volgt:
Maak een FME script ( met FME desktop) dat gevoed wordt met attributen ( en waardes) die nodig zijn om de REST services te bevragen.
Verzamel de gewenste gegevens door ( vanuit het script) een aantal Rest endpoints sequentieel te bevragen. Lever de verzamelde gegevens aan in json formaat.
Upload het script naar FME Server, en maak hiervoor een ‘WebHook' aan. De 'WebHook’ kan vervolgens als API-endpoint worden gekoppeld in Onemap.
Richt het API basis endpoint in bij de Onemap workspace systeem instellingen.
Koppel dit basis endpoint aan de featureinfo van de bijbehorende laag.
Maak het FME Desktop script
Het benodigde FME script bevat doorgaans de volgende onderdelen:
De parameters die voor de Rest-services nodig zijn, en die als attribuut in de Onemap laag beschikbaar zijn.
Een 'creator' transformer om het proces te starten
Een ( of meerdere ) 'http_caller' transformers om de relevante Rest-endpoints te bevragen
Een JSON writer
De precieze invulling van het script is verder afhankelijk van hoe de Rest services zijn ingericht en communiceren.
Richt een FME server WebHook in
Upload FME script naar FME server
Registreer dit als een 'Data Streaming' service
Publiceer het script als een FME WebHook