[mapserver-users] UMN MapServer - WMS GetCapabilities: Hide <name> element in top layer to prevent loading all layers at once

Maarten Plieger plieger at knmi.nl
Tue Mar 31 09:10:35 PDT 2009


Dear MapServer users,

We have a WMS service running with UMN MapServer containing many layers, 
365 to be exact. These layers represent data for each day, they are 
grouped in months, which are grouped in a year. The  structure is 
Year/Month/Day: "Year" and "Month" are grouping layers while Day is a 
layer which contains the image.
We would like that only the "Day" layer can be requested with GetMap and 
GetFeatureInfo, this should be disabled for Year and Month.
The problem is that it is possible to request the name of the top layer 
(first layer in getcapabilities files) in a GetMap request, resulting 
that all layers in the service are loaded and displayed in one image. 
This causes a high load on our service, which we would like to reduce. 
We would like to allow a GetMap request of one or multiple layers, but 
not of a complete group at once.

The OGC WMS specification tells that when a <Name> and <Title> element 
are given for a layer, the layer can be used in the GetMap and 
GetFeatureInfo requests, eg it contains information. When just a title 
is provided without a name, the layer is a grouping layer.

This can be partly accomplished by using "WMS_LAYER_GROUP", which tells 
UMN MapServer that this is a grouping layer. The <Name> element is 
hidden for this type of layer.

The problem is that I can not figure out how to do this for the first 
layer, the "Year". So it is still possible to query and to view all 
layers in one request by using the name of the toplayer.

Can I disable the <Name> element in the GetCapabilities document for the 
first layer?

Best regards,
 Maarten Plieger




-- 
Maarten Plieger
KNMI, R&D Information and Observation Technology, De Bilt
(t) +31 30 2206330 




More information about the MapServer-users mailing list