Structuur
Het layermodel beschrijft de thema-lagen, zoals je die in het rechterdeel van het scherm ziet. Een voorbeeld layermodel ziet er als volgt uit:
Layermodel
Het root-element is <layerModel>. Voor kaartserver zijn voor het root-element geen specifieke attributen noodzakelijk.
Layergroup
De enige subelemenen in het layerModel zijn de layergroepen <layerGroup id="voorbeeld">. Het heeft een verplicht attribuut 'id', een korte omschrijving waarmee de layergroep uniek gemaakt wordt. Een layergroep bestaat uit volgende subelementen:
<name> | optioneel | Naam van de groep. Een layergroep wordt standaard ingeklapt getoond. Als je dit niet wilt laat je het subelement <name> achterwege. |
<model> | optioneel | Als hier de naam van het inspectiemodel staat, dan wordt layergroep alleen maar voor betreffend model getoond. |
<deny> | optioneel | Een komma-gescheiden lijst met gebruikers of groepen (zie hieronder) die geen toegang tot deze layergroep hebben. Een '*' geeft aan dat niemand toegang heeft. |
<allow> | optioneel | Een komma-gescheiden lijst met gebruikers of groepen (zie hieronder) die toegang tot deze layergroep hebben. Een '*' geeft aan dat iedereen toegang heeft. Allow heeft voorrang op deny. Normaliter zal je dus eerst iedereen (of een groep) toegang met deny ontzeggen, om vervolgens met allow specifieke personen wél toegang te verlenen. |
Layer
In een layergroep zitten <layer> elementen die de verschillende layers of thema-lagen beschrijven. Layers kennen geen attributen maar bevatten de volgende subelementen die de eigenschappen van een layer definiëren:
<name> | verplicht | Naam of omschrijving van de thema-laag. Gebruik bij voorkeur dezelfde naam die ook in de mapfile wordt gebruikt (verplicht indien opacity wordt ingesteld). |
<group> | verplicht | Group verwijst naar group in de MAP-file (configuratie van Mapserver). |
<status> | verplicht | Keuze uit true of false, bepaalt of layer aan of uit staat. Dit geldt alleen voor de eerste keer dat gebruiker inlogt, de door de gebruiker ingestelde status wordt verder middels cookies afgehandeld. |
<type> | optioneel | Layers met een zelfde type-aanduiding worden met een radio botton weergegeven, een gekozen layer schakelt dan de andere layers van het zelfde type uit. |
<display> | optioneel | Bepaalt of layer in de lijst van layers opgenomen is. Keuze uit 'hidden' voor verborgen en 'visible' voor zichtbaar. |
<model> | optioneel | Als hier de naam van het inspectiemodel staat, dan wordt layer alleen maar voor betreffend model getoond. |
<deny> | optioneel | Een komma-gescheiden lijst met gebruikers of groepen (zie hieronder) die geen toegang tot deze layer hebben. Een '*' geeft aan dat niemand toegang heeft. |
<allow> | optioneel | Een komma-gescheiden lijst met gebruikers of groepen (zie hieronder) die toegang tot deze layer hebben. Een '*' geeft aan dat iedereen toegang heeft. Allow heeft voorrang op deny. Normaliter zal je dus eerst iedereen (of een groep) toegang met deny ontzeggen, om vervolgens met allow specifieke personen wél toegang te verlenen. |
<opacity> | optioneel | Aan de themalaag wordt een schuifregelaar toegevoegd om de transparantie van deze laag in te stellen. De waarde (percentage) ligt tussen 1 en 100 en wordt gebruikt als default waarde, een aangepaste waarde wordt voor gebruiker in een cookie bewaard. Let op: de naam van de themalaag moeten in het layermodel en in de mapfile overeenkomen. Opacity mag niet reeds in de mapfile meegegeven zijn. |
<transparency> | optioneel | Net als bij <opacity> wordt een schuifregelaar voor transparantie toegevoegd. Alleen te gebruiken bij de themalaag 'top10nl'. |
<legend> | optioneel | Default staat deze waarde op 'true', maar bij een waarde 'false' wordt in de layerlijst geen legenda getoond. |
<wms> | optioneel |
Voor een WMS themalaag, bijvoorbeeld een PDOK laag, kan hier de URL worden opgegeven. Deze URL wordt dan gebruikt om een legenda op te halen. De WMS-layernaam moet met attribuut 'layer' meegegeven worden. Optioneel de WMS-versie in een attribuut 'versie'. Voor een annotatie (tooltip) kan optioneel een attribuut 'features' gedefinieerd worden. In dit attribuut staat dan een kommagescheiden lijst met features, elke feature los opgegeven met eerst de originele featurenaam gevolgd door dubbele punt en dan een vertaalde naam zoals deze in de annotatie te zien zal zijn. Voorbeeld voor een WMS themalaag met 6 features: <wms layer="Dubbelbestemming" features="naam: Naam,identificatie: Identificatie,planstatus: Planstatus,dossierid:DossierID,dossierstatus: Dossierstatus,datum: Datum">https://geodata.nationaalgeoregister.nl/plu/wms?</wms> |
Groepen voor <deny> en <allow>
istablet | gebruikers van een tablet of smartphone |
isread | gebruikers met alleen raadpleeg-rechten |
iswrite | gebruikers met raadpleeg- en muteerrechten |
isexpert | gebruikers met expert-rechten |
isgeoeditor | gebruikers met geo-editor rechten |
isadmin | gebruikers met administrator-rechten |
issuperadmin | super administrator (voorbehouden aan kaartserver.nl) |
Gereserveerde tekens
> (groter dan) | > |
< (kleiner dan) | < |
& (ampersand) | & |
' (apostrof) | ' |
" (aanhalingsteken) | " |
In XML kunnen niet toegestane tekens ook als zogenaamde CDATA met tag <![CDATA[...]]> opgenomen worden. Bijvoorbeeld:
<![CDATA[Door het gebruik van een CDATA-tag zijn tekens als '<', '>' en '&' toegestaan]]>