Met Onemap kunnen invoer formulieren worden geconfigureerd waarmee de te vullen attributen voor bewerkbare lagen worden vastgelegd.
Om de invoer mogelijkheden ( en beperkingen) van een formulier uit te breiden kan voor de optie 'geavanceerd' worden gekozen.
Wanneer deze optie wordt gekozen schakelt de formulier editor over naar de 'react json form' presentatie van het formulier.
Opmerking: Het definiëren van geavanceerde formulieren vereist gedegen kennis van de 'react json form' definities. Het wordt aanbevolen om deze configuratie door, of in samenwerking met, Nieuwland technische consultants uit te voeren!
Het json schema voor het formulier bestaat minimaal uit de volgende json objecten:
jsonSchema
uiSchema
{ "jsonSchema": { "type": "object", "title": "Leeg formulier", "description": "Formulier zonder invoervelden" }, "uiSchema": {} }
Het 'jsonSchema' is het object waarin alle formulier onderdelen worden opgenomen.
Het ‘uiSchema' is het object waarmee de ‘look and feel’ van het formulier wordt vastgelegd ( o.a. de volgorden van de onderdelen die in het ‘jsonSchema’ zijn gedefinieerd).
Onemap ondersteund de basis 'react json form' elementen zoals:
Tekst
Datum
Dropdown
Checkbox
Radiobutton
Om formulier onderdelen toe te voegen wordt het json element uitgebreid met de eigenschap 'properties'. Binnen dit element worden de formulier onderdelen opgenomen.
In onderstaand formulier wordt een eenvoudig tekst element opgenomen.
{ "jsonSchema": { "type": "object", "title": "Leeg formulier", "description": "Formulier zonder invoervelden", "properties": { "invoerveld": { "title": "Invoer veld", "type": "string", "default": "geen opmerking" } }, "required": [ "invoerveld" ] }, "uiSchema": { } }
Naast het element ‘properties' is hier ook het element 'requered’ opgenomen. Hierbinnen kan worden aangegeven welke velden verplicht zijn.
In Onemap geeft bovenstaande formulier definitie het volgende invoer formulier:
Onderstaande secties geven een aantal voorbeelden van formulier definites met verschillende elementen.