Een mapfile is een configuratie-bestand voor Mapserver waarin vastgelegd is hoe geometrie op een kaart wordt getoond. Denk hierbij aan kleuren en te gebruiken symbolen (samen symbologie genoemd). En aan layers (thema-lagen) en de database tabellen waaruit de gegevens gehaald moeten worden. De opbouw van een mapfile kan in vereenvoudigde vorm voorgesteld worden als een tekstbestand waar LAYER-objecten in beschreven staan die op in hun beurt weer uit één of meerdere CLASS-objecten opgebouwd zijn. In CLASS-objecten bevinden zich STYLE-objecten en LABEL-objecten. Verder omvat een LAYER-object een aantal elementen die het LAYER-object nader beschrijven.

Op Kaartserver zijn voor een LAYER-object de volgende elementen verplicht:

NAME Naam van het LAYER-object zoals in het overzicht van een box-selectie wordt getoond. De naam van een CLASS-object verschijnt in de legenda en kan desgewenst met een # uitgeschakeld worden (#NAME).
GROUP Een groepsnaam die meerdere LAYERS kan omvatten en in het layermodel wordt gebruikt.
TYPE Geometrietype, bijvoorbeeld POINT, POLYGON, LINE of RASTER.
INCLUDE Verwijzing naar een include-bestand waarin de connectie naar de database is beschreven.
DATA Een query die beschrijft hoe gegevens uit de database worden gehaald.
LABELITEM Naam van een kolom beschikbaar in bovenstaande query waarmee de te plaatsen tekst van het LABEL-object gedefineerd wordt

 

Een eenvoudig LAYER-object met twee CLASS-objecten ziet er als volgt uit:

LAYER
NAME "Bodembedekkers en heesters"
GROUP "beplanting"
TYPE "POLYGON"
INCLUDE "connection.map"
DATA "the_geom from groen"
LABELITEM "groep"
CLASS
NAME "Bodembedekkers"
EXPRESSION ("[groep]"="Bodembedekkers")
STYLE
COLOR 128 255 0
OUTLINECOLOR 128 128 128
END
LABEL
COLOR 60 60 60
SIZE 8
POSITION auto
END
END
CLASS
NAME "Heesters"
EXPRESSION ("[groep]"="Heesters")
STYLE
COLOR 0 204 0
OUTLINECOLOR 128 128 128
END
LABEL
COLOR 60 60 60
SIZE 8
POSITION auto
END
END
END

 

Bovenstaande configuratie haalt alle kolommen inclusief geometrie op uit de tabel 'groen'. Uit deze tabel worden de vlakken getekend die in de kolomnaam 'groep' de tekst 'Bodembedekkers' of 'Heesters' hebben, ieder met een eigen kleur. In deze vlakken wordt een label geplaatst, namelijk de tekst die in de kolom 'groep' staat.

Kleurnummers worden als zogenaamde RGB-waarden gegeven. Deze RGB-waarden kan je bij het bewerken van een mapfile in de admin-omgeving makkelijk met de 'Kleurenkiezer' aanpassen of toevoegen. Als je de drie RGB-waarden eerst selecteert voordat je op de knop 'Kleurenkiezer' drukt, dan wordt deze kleur overgenomen.

 

ZIe voor meer informatie over layers: https://mapserver.org/mapfile/layer.html
ZIe voor meer informatie over classes: https://mapserver.org/mapfile/class.html
ZIe voor meer informatie over labels: https://mapserver.org/mapfile/label.html