Thank you Jukka! For me it is surprise to find out that there is a such thing 
as a root layer. Do you know if it is possible to disable it? Or is it just 
natural way how mapserver parses mapfile into getcapabilities xml? I would 
rather prefer to have list of separate layers in getcapabilities.
I have tried to set the name of the root layer to empty string, also the name 
of the map I was setting to empty string, also tried to put metadata 
ows_enable_request to ‘!*’ but the root layer still appears in GetCapabilities. 
In case when I omit wms_title and wms_abstract on the Map object level, it is 
still substituted to ‘MS’ automatically by mapserver. 
For me personally, this requirement to have root layer partially makes sense, 
but the customer , who uses OL to read getcapabilities of wms services, that I 
am preparing, is bothered by having root layer there — it is meaningless and 
not needed for him.
So I guess I will just preprepare custom getcapabilities xmls and configure 
server to serve them instead of using mapserver for this.
Sincerely, Dimitri
  
>Четверг, 16 апреля 2020, 18:43 +03:00 от Rahkonen Jukka (MML) 
><[email protected]>:
> 
>WMS service does not actually need to have a root layer but usually it exists. 
>Each layer must have a title but name in optional. If layer does not hava a 
>name it cannot be accessed with GetMap so what you need to do is to get rid of 
>the name of your root layer. How to do that is documented in  
>https://www.mapserver.org/ogc/wms_server.html :
> 
>Map Name and wms_title:
>WMS Capabilities requires a Name and a Title tag for every layer. The Map’s 
>NAME and wms_title metadata will be used to set the root layer’s name and 
>title in the GetCapabilities XML output. The root layer in the WMS context 
>corresponds to the whole mapfile. You can suppress the root layer’s name by 
>setting wms_rootlayer_name to "".
> 
>There has been some changes in configuring the name of the root layer. Earlier 
>it just took the NAME from the MAP level if it was not left empty. Do you 
>perhaps have “MS” as a name of your mapfile now?
> 
>Discussion about the topic in  
>https://github.com/mapserver/mapserver/issues/5404
> 
>And this is from the WMS 1.3.0 standard:
> 
>7.2.4.6.2 Title
>A <Title> is mandatory for all layers; it is a human-readable string for 
>presentation in a menu. The Title is not
>inherited by child Layers.
>7.2.4.6.3 Name
>If, and only if, a layer has a <Name>, then it is a map layer that can be 
>requested by using that Name in the
>LAYERS parameter of a GetMap request. A Layer that contains a <Name> element 
>is referred to as a “named
>layer” in this International Standard. If the layer has a Title but no Name, 
>then that layer is only a category title for
>all the layers nested within. A server that advertises a Layer containing a 
>Name element shall be able to accept
>that Name as the value of LAYERS argument in a GetMap request and return the 
>corresponding map. A client
>shall not attempt to request a layer that has a Title but no Name.
>A server shall throw a service exception (code="LayerNotDefined") if an 
>invalid layer is requested.
>A containing category itself may include a Name by which a map portraying all 
>of the nested layers can be
>requested at once. For example, a parent layer "Roads" may have children 
>“Interstates” and “State Highways”
>and allow the user to request either child individually or both together.
>The Name is not inherited by child Layers.
> 
> 
>-Jukka Rahkonen-
> 
> 
>Lähettäjä: mapserver-users < [email protected] >  
>Puolesta  Zmitser Kozhukh
>Lähetetty: torstai 16. huhtikuuta 2020 17.32
>Vastaanottaja: [email protected]
>Aihe: [mapserver-users] mapserver creating layers group MS , that is displayed 
>in GetCapabilities. how to get rid of it? what is the reason for it?
> 
>Good day,
>I haven’t been using mapserver for a while, but I guess, that since last time 
>I have used it, something has changed.
>Now when I am querying GetCapabilities of WMS service, created by Mapserver 
>(version 7.2.0 running on a linux server), it puts everying in ‘MS’ layer 
>group. But I don’t have any MS group defined in mapfile. Could anyone explain 
>how to get rid of this MS group in GetCapabilities xml? This is how it looks 
>in xml:
><Layer queryable="1">
><Name>MS</Name>
><Title>MS</Title>
><Abstract>MS</Abstract>
><CRS>EPSG:4326</CRS>
>….
>after normal layers follow:
>        <Layer queryable="1" opaque="0" cascaded="0">
>        …..
>        </Layer>
>        …..
></Layer>
>So for me it looks that for no reason the group MS is created which is sort of 
>container for all normal layers.
>But how to get rid of this MS group?
>Sincerely,
> 
> 
>--
>Zmitser Kozhukh
 
 
--
Zmitser Kozhukh
 
_______________________________________________
mapserver-users mailing list
[email protected]
https://lists.osgeo.org/mailman/listinfo/mapserver-users

Reply via email to